mahout 支援一些集群演算法實現(都是使用 map-reduce 編寫的),它們都有一組各自的目標和標準:
從實際的角度來說,名稱和實現並不如它們生成的結果重要。了解了這一點之後,我將展示 k-means 的執行原理,而其餘內容將由您自己去研究。請記住,要有效執行每個演算法,您需要滿足它們各自的的需求。
簡單來說(詳細資訊見下文),使用 mahout 建立資料集群的步驟包括:
準備輸入。如果建立文字集群,您需要將文字轉換成數值表示。
使用 mahout 中可用的 hadoop 就緒的驅動程式執行所選集群演算法。
計算結果。
如果有必要,執行迭代。
vector
sparsevector
densevector
。如果您對此不確定,可 以嘗試這兩種實現來處理資料的乙個子集,然後確定哪種實現的執行速度更快。
通過 wikipedia 內容生成向量的方法如下(我已經完成了此工作):
enwikidocmaker
contrib/benchmark
org.apache.mahout.utils.vectors.lucene.driver
utils
參考資 料 )。
getting started with mahout 入門ant install
參考資 料 )。在使用 mahout 時,您可能希望嘗試採用不同的方法來建立向量,以確定哪種方法的效果最好。
評估結果參考資 料 。在本例中,我使用手動檢查來判斷結果集群是否有意義。如果要投入生產,則應該使用更加嚴格的流程。
kmeansdriver
參考資 料 )。
147 Mahout執行在Hadoop集群
hadoop 執行指令碼 hadoop jar mahout examples 0.9 job.jar org.apache.mahout.cf.taste.hadoop.item.recommenderjob input sanbox movie 10m.txt output sanbox mov...
mahout使用KMeans演算法
mahout提供了記憶體中和分布式的兩種kmeans聚類實現。下面是記憶體中kmeans的 示例,示例 使用了最簡單的一維向量作為輸入 tests kmeans cluster algorithm in memory,note the test uses only 1 d vector i.e.a ...
1 使用mahout進行資料探勘
mahout使用 步驟一 tar xvf mahout 0.3.tar.gz 需要指定hadoop的路徑和配置檔案的路徑 export hadoop home home hadoopuser hadoop 0.19.2 export hadoop conf dir home hadoopuser h...