我正在尝试实现K-Means Algorithm,并对矢量部分感到困惑。
这就是我所做的:
对于每个文档,我为其中的每个单词生成tf-idf并将其存储在STL映射中。然后使用算法的余弦相似性与实际单词。
我应该在哪里使用词干部分?
我应该先干掉单词并计算出词干的tf-idf吗?
我应该只使用词干词来算法吗?
使用词干会不会降低结果吗?
答案 0 :(得分:1)
这取决于您的聚类目标。
在我们曾经做过的项目中,我们需要在两个字符串之间提供匹配分数,并且可能会对单词进行变化。我们首先阻止,然后计算字符串之间匹配单词的数量。如果这种类型的匹配在你的问题中有意义,那么先堵塞可能是一个好主意
当然,当你干掉时你会丢失信息,但是你可以减少一些噪音。
答案 1 :(得分:1)
通常,在实际计算每个词干的tf-idf之前完成词干。
那么对于你的最后两个问题,我会说这取决于你在做什么。你应该尝试不同的方法(词干,原始词,词形还原),看看哪种方法能产生最好的结果。
在群集的情况下,您应该使用一组带注释的文档,在其上尝试您的方法,然后为每个方法建立confusion matrix,这将帮助您确定解决问题的最佳方法。 / p>