当前位置:   article > 正文

文本表示:文本相似度_文本相似度嵌入检索的评估指标

文本相似度嵌入检索的评估指标

1. 文本相似度定义

我们都知道,单词中有同义词、近义词和反义词之分,这表明不同单词间的相似程度也截然不同。对于文本表示,我们也要衡量单词编码向量间的相似程度与单词本身词义间相似程度的一致性,以此来评价文本表示的质量。

2. 文本相似度计算方法

定量计算两个文本之间的相似程度,就是定量计算文本表示后两个向量之间的相似度。一种衡量两向量相似度的方式是计算它们之间的距离,距离越小相似度越高、距离越大相似度越小,常用的向量距离计算指标有欧式距离余弦相似度两种。

2.1 欧氏距离

欧氏距离 d E d_E dE 表示n维空间上,两向量间的直线距离,计算公式如下:
d E ( X ⃗ , Y ⃗ ) = ( x 1 − y 1 ) 2 + ( x 2 − y 2 ) 2 + ⋯ + ( x n − y n ) 2 d_E(\vec{X}, \vec{Y}) = \sqrt{(x_1-y_1)^{2}+(x_2-y_2)^{2}+\dots +(x_n-y_n)^{2}} dE(X ,Y )=(x1y1)2+(x2y2)2++(xnyn)2
因为式中 d E d_E dE 在定义域上是单调递增函数,所以 d E d_E dE 的值越小,两向量间的距离越小,两向量越相似。

2.2 余弦相似度

余弦相似度 S c S_c Sc 表示两向量间夹角的大小(余弦距离 d c d_c dc = 1 − S c 1 - S_c 1Sc),其计算公式如下:
S c ( X ⃗ , Y ⃗ ) = cos ⁡ ⟨ X ⃗ , Y ⃗ ⟩ = X ⃗ ⋅ Y ⃗ ∣ X ⃗ ∣ ∗ ∣ Y ⃗ ∣ = x 1 y 1 + x 2 y 2 + ⋯ + x n y n x 1 2 + x 2 2 + ⋯ + x n 2 ∗ y 1 2 + y 2 2 + ⋯ + y n 2 S_c(\vec{X}, \vec{Y}) = \cos\left\langle \vec{X}, \vec{Y} \right\rangle = \frac{\vec{X} \cdot \vec{Y}}{|\vec{X}|*|\vec{Y}|} = \frac{x_1y_1+x_2y_2+\dots+x_ny_n}{\sqrt{x_1^{2}+x_2^{2}+\dots+x_n^{2}}*\sqrt{y_1^{2}+y_2^{2}+\dots+y_n^{2}}} Sc(X ,Y )=cosX ,Y =X Y X Y =x12+x22++xn2 y12+y22++yn2 x1y1+x2y2++xnyn
因为式中 S c S_c Sc 在定义域上是单调递减函数,所以 S c S_c Sc 的值越大,两向量间的距离越小,两向量越相似。在实际工作中,因为余弦距离更容易计算和求导,所以它比欧式距离应用更为广泛。

工程实践中,词向量(或句子向量)的长度一般近似为1,即 ∣ X ⃗ ∣ ≈ ∣ Y ⃗ ∣ ≈ 1 |\vec{X}| \approx |\vec{Y}| \approx 1 X Y 1所以实际使用时,余弦相似度公式一般简化为:
S c ( X ⃗ , Y ⃗ ) = cos ⁡ ⟨ X ⃗ , Y ⃗ ⟩ ≈ X ⃗ ⋅ Y ⃗ = ∑ i − 1 n x i y i S_c(\vec{X}, \vec{Y}) = \cos\left\langle \vec{X}, \vec{Y} \right\rangle \approx \vec{X} \cdot \vec{Y} = \sum_{i-1}^{n} x_iy_i Sc(X ,Y )=cosX ,Y X Y =i1nxiyi

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/446399
推荐阅读
相关标签
  

闽ICP备14008679号