tf-idf:我理解对了吗?

时间:2010-03-29 07:08:25

标签: algorithm language-agnostic text-processing information-retrieval tf-idf

我有兴趣做一些文档聚类,现在我正在考虑使用TF-IDF。

如果我没有错,TF-IDF特别用于评估文档给定查询的相关性。如果我没有特定的查询,我该如何将tf-idf应用于聚类?

3 个答案:

答案 0 :(得分:4)

实际上并非如此: tf-idf 为您提供给定文档中相关性
因此,您可以通过计算接近度来完美地将其用于群集,这类似于

proximity(document_i, document_j) = sum(tf_idf(t,i) * tf_idf(t,j))

对于doc i和doc j中的每个术语t。

答案 1 :(得分:4)

用于文档群集。最好的方法是使用 k-means算法。如果您知道有多少类型的文档,您就知道k是什么。

使其适用于文档:

a)说随机选择初始k文件。

b)使用群集文档的最小距离将每个文档分配给cluser。

c)将文档分配给群集后,通过获取每个群集的质心,将K个新文档作为群集。

现在,问题是

a)如何计算两个文档之间的距离:除了初始聚类的文档术语的余弦相似性之外,它只是其余的。这里的术语只是TF-IDF(每个文档的早期计算)

b)质心应:给定术语/否的TF-IDF之和。的文件。对于群集中的所有可能术语,这样做。这将给你另一个n维文件。

希望这有帮助!

答案 2 :(得分:1)

TF-IDF有不同的用途;除非您打算重新发明轮子,否则最好使用像Carrot这样的工具。如果您希望自己实施一个算法,Google搜索文档聚类可以为您提供许多算法。