赞
踩
文献:A SIMPLE BUT TOUGH-TO-BEAT BASELINE FOR SENTENCE EMBEDDINGS
在进行了词嵌入的研究后,我们往往会联想到这样一个问题:既然单词可以用向量表示,那么由一个个单词组成的句子,可不可以也用向量表示呢?如果可以的话,句子之间就可以进行向量的运算,计算它们之间的相似度,进而可以对句子进行聚类或者进行匹配。
因此,这篇文献提出了一种简单但又难以打败的计算句子嵌入的方法,使得句子向量计算的性能得到了提升。
关于代码的实现,请看 记录一次失败的句子相似性实验 。当时效果不太好,但是后来的结果证明,还是可取的!大家谨慎参考!
应用神经网络方法来计算单词嵌入的成功促进了对于较长段落(例如文本)语义嵌入的研究。而作者提出了这样一种句子嵌入方法:通过一种流行的方法对未标记的语料库(如 W i k i p e d i a Wikipedia Wikipedia)计算词嵌入,通过词向量的加权平均值表示句子,然后使用 P C A PCA PCA / / / S V D SVD SVD 对其进行一些修改。
这种加权可将文本相似性任务的性能提高约 10% 到 30%,并且优于包括 R N N RNN RNN 和 L S T M LSTM LSTM 在内的复杂的监督方法。这种简单的方法在将来的研究中应当作为 b a s e l i n e baseline baseline,尤其是在带有标签的训练数据稀缺或不存在的情况下。
使用多种方法计算的词嵌入是自然语言处理 ( N L P NLP NLP) 和信息检索 ( I R IR IR) 的基本构建块。它计算词与词之间的相似性。而最近的工作尝试从单词向量的简单加总平均到复杂的方法(例如卷积神经网络和递归神经网络)来计算单词序列(短语,句子和段落)语义的嵌入。
在这里,作者提供了一种非常简单的句子嵌入方法:只计算句子中单词向量的加权平均值,然后删除平均向量在其第一个主成分上的投影(“公共成分去除”)。我们称它为平滑反频率 ( s m o o t h smooth smooth i n v e r s e inverse inverse f r e q u e n c y frequency frequency)。
(
1
1
1) 单词
w
w
w 的权重表示为a / (a + p(w))
,a
是一个超参数,p(w)
是词频。我们发现,p(w)
越大,单词权重越小。是不是感觉与
T
F
−
I
D
F
TF-IDF
TF−IDF 原理有些相似,字词的重要性随着它在语料库中出现的频率成反比下降。
( 2 2 2) 关于第一主成分,由于使用单词向量的平均的方法在沿语义上无意义的方向具有巨大的分量。因此我们删去这些公共成分,留下关键的信息。
S I F SIF SIF的优越性体现在以下几点:
作者简要回顾了文本的潜在变量生成模型:该模型将语料库生成视为一个动态过程,在步骤 t t t 中生成第 t t t 个单词。这个过程是由一个 discourse vector 驱动的,表示为 c t c_t ct,意味着在这个时刻,句子的话题是什么,可以视为一个主题向量;同时,对于每一个单词 w w w ,也有对应的词向量 v w v_w vw(与时间无关)。二者之间的内积表示当前主题与词语的相关关系。
假定
t
t
t 时刻单词
w
w
w 产生概率为:
由于主题向量
c
t
c_t
ct 做缓慢的随机漫步(slow random walk),即
c
t
+
1
c_{t+1}
ct+1 只是在
c
t
c_t
ct 基础上新增了移位向量,因此我们可以将相邻单词看成在相同
c
t
c_t
ct 下产生。
在之前的基础上,作者定义 sentence embedding 为:给定一个句子 s,利用最大后验概率估计 ( M A P MAP MAP) 产生这个句子的主题向量 c t c_t ct 。我们假定在一步步产生单词时,该句子的主题向量不会发生较大改变,因此用 c s c_s cs 来代替一个句子所有的 c t c_t ct 。
在模型的基础上,作者做了如下改进,引入了两个平滑项,用来解释 ( a a a) 有些词是在上下文之外出现 ( b b b) 某些高频词如 “ t h e the the” “ a n d and and” 是没有语境限制的。
α·p(w)
:其中
α
α
α 是标量,
p
p
p(
w
w
w) 是整个语料库中单词
w
w
w 的词频。这使得即使单词与当前主题
c
s
c_s
cs 内积(相关性)很小,它也有一定的概率出现。 具体来说,给定主题向量
c
s
c_s
cs ,在句子
s
s
s 中单词
w
w
w 的生成概率为:
α
α
α 和
β
β
β 都是超参数,
Z
c
s
=
∑
w
∈
v
e
x
p
(
<
c
s
,
v
w
>
)
Z_{c_s} = ∑_{w∈v}exp(<c_s, v_w>)
Zcs=∑w∈vexp(<cs,vw>) 是归一化常数。我们看到该模型允许生成与主题向量
c
s
c_s
cs 不相关的单词
w
w
w ,其原因有二:(
a
a
a) 偶然地从项α·p(w)
产生 ;(
b
b
b)
w
w
w 与公共话语向量
c
0
c_ {0}
c0 相关。
句子向量被定义为向量
c
s
c_s
cs 的极大似然估计。
因此我们发现,
M
L
E
MLE
MLE大致是句子中单词的向量的加权平均值。我们发现,越频繁的单词,权重越小。
为了估计 c s c_s cs ,我们通过计算一组句子的第一主成分来估计方向 c 0 c_0 c0 。通过将 c s c_s cs 的投影减去它们的第一主成分可以得到最终的句子嵌入。
整体流程如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。