查询的IDF?
如何计算查询的tf-idf
? 我知道如何计算一组文档的tf-idf,其中包含以下定义:
tf =文档中的发生/文档中的总字数
idf = log(#term /发生术语的文档/#文档
但我不明白这与查询有什么关系。
例如 ,我读了一个资源,说明了一个查询的价值“ life learning
”
生活| tf = .5 | idf = 1.405507153 | tf_idf = 0.702753576
学习| tf = .5 | idf = 1.405507153 | tf_idf = 0.702753576
我明白的tf
值,每个术语在两个可能的术语中只出现一次,因此1/2,但我不知道idf
从哪里来。
我认为#documents = 1和occurrence = 1,log(1)= 0,所以idf
将为0,但这似乎并不是这种情况。 它是基于你使用的任何文件吗? 你如何计算查询的tf-idf?
只有tf(生命)取决于查询本身。 但是,查询的idf取决于后台文档,所以idf(life)= 1 + ln(3/2)〜= 1.405507153。 这就是为什么tf-idf被定义为将局部分量(词频)与全局分量(逆文档频率)相乘的原因。
假设你的查询是最好的汽车保险 ,你的总词汇包含汽车,最好,汽车,保险 ,你有N=1,000,000
文件。 所以你的查询如下所示:
你的一个文件可能是:
现在计算Query
和Document
TF-IDF
之间的余弦相似度。
上一篇: IDF of a query?