大文档语料库中的Mahout RowSimilarityJob

时间:2014-02-14 09:16:32

标签: hadoop mahout

我正在尝试使用Mahout来计算包含200万行的矩阵中的行相似度。这个矩阵是根据排名为400的mahout ssvd的输出生成的,然后使用mahout rowid以适当的格式为RowSimilarityJob转换它。

当作业到达CooccurrencesMapper时,它开始为列中的每对非零元素发出一个向量。几个小时后,工作开始失败。

我尝试使用--maxObservationsPerColumn参数,但如果我将其设置为过低的值,则结果不正确,如果我将其设置为高于30000的值则失败。

问题在于,对于每个地图输入,它会发出~10GB的值。

我这样调用这个工作:

  

mahout / bin / mahout rowsimilarity -Dmapred.reduce.child.java.opts = -Xmx4G   -Dmapred.map.child.java.opts = -Xmx4G -Dmapred.reduce.tasks = 20 -Dio.sort.mb = 1000 -Dio.sort.factor = 3 --tempDir test_row_similarity --input“UHalfSigma_matrix_400 / matrix” - -output“doc_lsa_similarity_test /” - numberOfColumns 400   --maxSimilaritiesPerRow 35 --maxObservationsPerColumn 50000 -tr 0.4 --similarityClassname SIMILARITY_COSINE -ow --excludeSelfSimilarity true

我使用3个节点的集群:

- cpu 12 core, RAM 64 GB, HDD 256GB
- cpu 12 core, RAM 128 GB, HDD 2 TB
- cp 8 core, RAM 24 GB, HDD 4 TB

感谢您的帮助

0 个答案:

没有答案