写点什么

相似度计算 - 句子

用户头像
Qien Z.
关注
发布于: 2021 年 06 月 07 日
相似度计算-句子

Tf-idf

如果单纯通过文档的向量,用 count vector 来计算词频,然后用矩阵来表示,其实会有很大的弊端。因为词的频率高,不代表其重要性。因此,我们还需要考虑到其权重,也就是质量,引入质量可以通过 Tf-idf


语料库中文档总数 N

词语 w 出现在 N(W)个文档中

idf(w)是指单词的重要性


tf-idf 的应用非常广泛,是表示文本的最核心技术之一,也是文本表示中最有效的 Baseline

很多时候,tf-idf 的表示甚至会优于深度学习的文本表示。


相似度计算

在进行两个文本的相似度计算时,任何文本转换成向量都能使用相似度公式进行计算。常见的计算方式有欧式距离计算和余弦相似度计算。


欧式距离

欧式距离

d=|S1-S2|

例子 1

已将句子转变为向量

S1:“小姐姐 步入 中年”=(1,0,0)

S2:“小姐姐 要 不惑”=(1,0,1)


∴ d(S1,S2)=1


例子 2

X1=(2,0,6) Y1=(1,2,3)

X2=(2,1,6) Y1=(1,-2,3)

如果通过欧式距离进行计算,X1 和 Y1, X2 和 Y2 是一样距离的,但是,向量是带有方向的,X1 和 Y1 的方向是一致的,理应相似度更高。这就是欧式距离的最大问题。因此,如果要解决这个问题,我们可以考虑使用余弦相似度来计算。余弦相似度是通过计算向量之间的夹角的,因此,两个向量在方向越一致,它们的相似度就越高


余弦相似度

余弦相似度的计算

S1=X1,X2,X3 S2=Y1,Y2,Y3


从以上来看,内积是可以用来计算向量之间的相似度的,分母除以向量大小是为了消除两个向量大小所带来的影响。余弦相似度方向考虑进去了,而欧式距离则没有;在计算向量之间相似度时,余弦相似度的应用会比欧式距离更广泛一些。


内积也常常称为点积、标量积、数量积。计算机图形学常用来进行方向性判断,如两矢量内积大于 0,则它们的方向朝向相近;如果小于 0,则方向相反。矢量内积人工智能领域中的神经网络技术的数学基础之一,此方法还被用于动画渲染(Animation-Rendering)。

发布于: 2021 年 06 月 07 日阅读数: 14
用户头像

Qien Z.

关注

Everything is all 2020.04.10 加入

接受反驳&不接受被定义

评论

发布
暂无评论
相似度计算-句子