idf对一个术语查询的排名没有影响

时间:2016-02-26 16:46:04

标签: tf-idf data-retrieval

我正在阅读article并且它说

  

请注意,IDF依赖于查询字词(T),数据库依赖于   整个。特别是,它不会因文档而异。   因此,IDF对单字查询没有影响。

我不太明白。如果TF-IDF(T) = TF * log(N/dbCount[T])为什么它对单字查询没有影响?

2 个答案:

答案 0 :(得分:2)

要了解这一点,我们可以了解TF-IDF实际实现的目标。 假设我们有N个文件D1,D2,D3 ......... DN。 我们希望为这些文档中的每一个分配TF-iDF分数,然后具有最高TF-IDF分数的文档是最相关的搜索,其后是具有第二高TF-IDF分数的文档。 现在,IDF只依赖于查询术语和整个语料库。所以它的值是所有文件的常量(log(N / dbCount [T]) N和dbCount [T]不依赖于文档。对于D1,D2,D3 .. DN,它们是相同的。 因此,文档的每个TF-TDF得分将按该常数放大/缩小,这对于所有文档都是相同的。 实际上,相对 - 不会改变。 Hene一个学期你可以跳过它

答案 1 :(得分:1)

对于给定的单词语料库,每个单词IDF将保持不变。对于给定的单个单词作为查询,排名不起作用是什么意思? -由于每个术语都知道已经计算出的IDF,因此当一个单词查询命中系统时,搜索系统将简单地以“排序”列表进行响应,IDF值的作用类似于标量函数(系数),使其成为线性函数。

但是,当两个词(或多个)作为查询发送到搜索系统时,这就是真正的排名起作用的时候,即:-每个查询词现在开始影响结果,使结果成为非-线性函数。

希望这可以澄清很多像我一样的人:-)