2012-10-03 56 views
3

是否有任何數據挖掘庫正在使用(或可以使用)MPI(按摩傳遞接口)?我正在尋找類似於Apache Mahout的東西,但它可以輕鬆地集成到MPI環境中。用於MPI的數據挖掘庫

我想使用MPI的原因是配置(與Hadoop相比)很容易。 或者在數據挖掘場景中使用MPI沒有意義嗎?

回答

4

沒有理由爲什麼MPI(這是一個概念,而不是軟件本身!)必然比Hadoop/Mahout更容易安裝。事實上,後兩者現在是一團糟,特別是因爲他們的Java庫混亂。 Apache Bigtop試圖讓它們更容易安裝,一旦你發現了一些基本的東西,那就很好。

但是:

  • 如果你的數據是小(即它可以在單個節點上處理),請不要安裝羣集解決方案,您支付開銷。 Hadoop在單個主機上沒有多大意義。使用Weka,ELKI,RapidMiner,KNIME或其他。
  • 如果你的數據很大,你會想最小化數據傳輸。而這正是Hadoop/Mahout的優勢所在,最大限度地減少了數據傳輸。典型的消息傳遞API對於數據繁重的操作無法以相同的方式進行擴展。

有一些努力,如阿帕奇哈馬是非常相似的MPI的東西恕我直言。它基於消息,但是它們是通過障礙同步進行批量處理的。在發送以減少流量之前,它可能還會有一些消息聚合。

+0

也許存在某種誤解 - MPI是一種標準,並且有像OpenMPI這樣的實現。我有這樣的想法:http://www.ism.ac.jp/IWSML2012/r1.pdf。但我找不到這樣的圖書館:( – mateuszk87

0

這個想法沒有任何意義,我認爲你有一些誤解,MPI更適用於緊密耦合的系統,我99%確定不會將消息發送到外部位置,但是可以處理或分析MPI數據更快(取決於您的硬件)。我的2美分是使用AMQP協議開放源代碼實現中的一種更好,我會說zeromq是您最好的選擇,然後處理您在R或python中獲得的所有數據,或者如果您的數據集非常大MPI。另一種選擇是,您可以在連接的不同計算機上調用串行庫,並運行MPI,因爲它們都分別連接到互聯網。 R真的很容易用MPI調用,python也是如此。

+0

爲什麼沒有道理? http://www.ism.ac.jp/IWSML2012/r1.pdf有一個基於MPI的羣集解決方案...... – mateuszk87

2

我強烈建議graphlab。目前graphlab,分佈式格拉夫並行API,具有工具包包括

  • 主題建模
  • 協同過濾
  • 聚類
  • 圖形模型

http://docs.graphlab.org/toolkits.html

GraphLab是一個基於圖形的高性能rmance,用C++編寫的分佈式計算框架。雖然GraphLab最初是爲機器學習任務而開發的,但它在廣泛的其他數據挖掘任務中取得了巨大成功;在數量級上表現出其他抽象。

GraphLab特點:

統一多核和分佈式API:寫一次在性能調整共享和分佈式內存系統 有效地運行:優化的C++執行引擎利用廣泛的多線程和異步IO 可擴展:GraphLab智能地使用先進的新算法 HDFS集成數據和計算:直接從HDFS 訪問您的數據功能強大的機器學習工具包:打開BigData轉化爲可操作的知識輕鬆