Mahout文本挖掘 - 给定奇异值的最重要的单词

时间:2013-08-25 20:12:37

标签: mapreduce mahout

问题:有没有简单的方法可以查看与每个奇异值相关的最重要的字词?

背景:我已将Mahout的奇异值分解工具应用于新闻文章的集合。文章来自两个主题:1)体育,2)商业。我希望看到与每个奇异值相关的最重要的单词。例如,对于一个奇异值,我可能期望最突出的词是体育术语:得分,团队,球员,教练。对于另一个奇异的价值,我可能期望看到商业条款:公司,利润,收入。

我的方法:我正在考虑为每个奇异值创建一个文件,其中 - 对于给定的奇异值 - 这些单词按重要性的降序排序。这只是一个想法。我愿意接受建议。

以下是我到目前为止使用的代码,用于生成Mahout的奇异值:

/mahout-distribution-0.7/bin/mahout svd 
-i /vectors/tfidf-vectors/
-o /svd-values/
--numRows 100 
--numCols 591 
-r 100

1 个答案:

答案 0 :(得分:1)

在项目中没有办法直接这样做,我自己也不知道代码。但我可以告诉你一般的想法。

在SVD中,你会得到像A~ = U S V'这样的分解。假设A是您的文档术语矩阵。所以A - 和V'列的列对应于单词。 V'的行对应于奇异值(在S中)。事实上,它们是正确的奇异向量。您可以直接从这些单词向量中读出单词向量。最大的绝对值是最重要的词。