information-retrieval - 余弦相似度和 tf-idf

标签 information-retrieval vsm cosine-similarity tf-idf

我对以下关于TF-IDF余弦相似度的评论感到困惑。

我在两者上阅读,然后在 wiki 上的余弦相似度下我发现这句话“在信息检索的情况下,两个文档的余弦相似度范围从 0 到 1,因为术语频率(tf-idf 权重) ) 不能为负数。两个词频向量之间的角度不能大于 90。"

现在我想知道......它们不是两个不同的东西吗?

tf-idf 是否已在余弦相似度内?如果是,那到底是什么 - 我只能看到内部点积和欧几里德长度。

我认为 tf-idf 是您可以在对文本运行余弦相似度之前执行的操作。我错过了什么吗?

最佳答案

Tf-idf 是一种应用于文本的变换,用于获取两个实值向量。然后,您可以通过取它们的点积并将其除以它们范数的乘积来获得任何向量对的余弦相似度。这就产生了向量之间角度的余弦。

如果d2q是tf-idf向量,那么

enter image description here

其中θ是向量之间的角度。由于 θ 的范围为 0 到 90 度,cos θ 的范围为 1 到 0。θ 只能 的范围为0 到 90 度,因为 tf-idf 向量是非负的。

tf-idf和余弦相似度/向量空间模型之间没有特别深刻的联系; tf-idf 与文档项矩阵配合得很好。不过,它在该领域之外也有用途,原则上您可以替换 VSM 中的另一种转换。

(公式取自 Wikipedia ,因此为 d2。)

关于information-retrieval - 余弦相似度和 tf-idf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6255835/

相关文章:

algorithm - 在信息检索环境中将概率的负对数限制为正值(语言建模)

search - 如何设计全文索引系统?

python - Lucene 位置索引如何如此高效地工作?

silverlight - ControlTemplate.Triggers Silverlight 3 中的 WPF 等效项

python Pandas : Finding cosine similarity of two columns

python-3.x - 使用 Doc2Vec 的句子列表之间的余弦相似度

python - 计算给定2个句子字符串的余弦相似度

python - 产品比价工具 : Difficulty in matching identical items