余弦相似度似乎与纯tf-idf方法不一致?

时间:2019-03-01 08:06:10

标签: search tf-idf cosine-similarity

我今天刚刚了解了余弦相似度,并且在用代码实现之前在纸上尝试了一些示例,但是似乎得到了意想不到的结果。

下面的分数是预先计算的TF-IDF分数:

       Doc1 Doc2 Query
Word1  0.35  0.2     1
Word2  0.80  0.4     1

如果我们采用纯TF-IDF排名方法,最终结果将是:

0.35+0.8 = 1.15 score for Doc1 and 0.2+0.4 = 0.6 score for Doc 2. 
Clearly Doc 1 is the winner.

要做余弦相似度,我们要做:

对于Doc1:

(0.35 ^ 2 + 0.8 ^ 2)的平方根= 0.873212

对于Doc2:

(0.2 ^ 2 + 0.4 ^ 2)的平方根= 0.447214

到目前为止,Doc1似乎遥遥领先。

现在,我们使用它们进行归一化并获得以下内容:

        Doc1        Doc2    Query
Word1   0.400819    0.447213    1
Word2   0.916158    0.894426    1

SUM:    1.316977    1.34164 

Doc2现在处于领先地位,即使我们采用点积运算,它也将处于领先地位。怎么会这样?显然,基于TF-IDF的Doc1的得分几乎是Doc2的两倍。他们怎么这么近而且,如果在搜索引擎中显示Doc2,则将成为首位。

请帮助清除我的困惑?

0 个答案:

没有答案