『论文阅读』SIF:一种简单却难以打败的句子嵌入方法

  文献:A SIMPLE BUT TOUGH-TO-BEAT BASELINE FOR SENTENCE EMBEDDINGS

  在进行了词嵌入的研究后,我们往往会联想到这样一个问题:既然单词可以用向量表示,那么由一个个单词组成的句子,可不可以也用向量表示呢?如果可以的话,句子之间就可以进行向量的运算,计算它们之间的相似度,进而可以对句子进行聚类或者进行匹配

  因此,这篇文献提出了一种简单但又难以打败的计算句子嵌入的方法,使得句子向量计算的性能得到了提升。



ABSTRACT

  应用神经网络方法来计算单词嵌入的成功促进了对于较长段落(例如文本)语义嵌入的研究。而作者提出了这样一种句子嵌入方法:通过一种流行的方法对未标记的语料库(如 W i k i p e d i a Wikipedia )计算词嵌入,通过词向量的加权平均值表示句子,然后使用 P C A PCA / / S V D SVD 对其进行一些修改

  这种加权可将文本相似性任务的性能提高约 10% 到 30%,并且优于包括 R N N RNN L S T M LSTM 在内的复杂的监督方法。这种简单的方法在将来的研究中应当作为 b a s e l i n e baseline ,尤其是在带有标签的训练数据稀缺或不存在的情况下。


INTRODUCTION

  使用多种方法计算的词嵌入是自然语言处理 ( N L P NLP ) 和信息检索 ( I R IR ) 的基本构建块。它计算词与词之间的相似性。而最近的工作尝试从单词向量的简单加总平均到复杂的方法(例如卷积神经网络和递归神经网络)来计算单词序列(短语,句子和段落)语义的嵌入。

  在这里,作者提供了一种非常简单的句子嵌入方法:只计算句子中单词向量的加权平均值,然后删除平均向量在其第一个主成分上的投影(“公共成分去除”)。我们称它为平滑反频率 ( s m o o t h smooth i n v e r s e inverse f r e q u e n c y frequency )。

  ( 1 1 ) 单词 w w 的权重表示为a / (a + p(w))a 是一个超参数,p(w)是词频。我们发现,p(w)越大,单词权重越小。是不是感觉与 T F I D F TF-IDF 原理有些相似,字词的重要性随着它在语料库中出现的频率成反比下降。

  ( 2 2 ) 关于第一主成分,由于使用单词向量的平均的方法在沿语义上无意义的方向具有巨大的分量。因此我们删去这些公共成分,留下关键的信息。

扫描二维码关注公众号,回复: 10623682 查看本文章

   S I F SIF 的优越性体现在以下几点:

  • well-suited for domain adaptation settings:对于各个领域的适应性较好
  • fairly robust to the weighting scheme:使用不同的语料库计算的词频并不会影响它的性能
  • a wide range of the parameters a can achieve close-to-best results:选择恰当的 a a ,可以达到最好的效果

METHOD

1 1 Latent Variable Generative Model

  作者简要回顾了文本的潜在变量生成模型:该模型将语料库生成视为一个动态过程,在步骤 t t 中生成第 t t 个单词。这个过程是由一个 discourse vector 驱动的,表示为 c t c_t ,意味着在这个时刻,句子的话题是什么,可以视为一个主题向量;同时,对于每一个单词 w w ,也有对应的词向量 v w v_w (与时间无关)。二者之间的内积表示当前主题与词语的相关关系

  假定 t t 时刻单词 w w 产生概率为:
在这里插入图片描述
  由于主题向量 c t c_t 做缓慢的随机漫步(slow random walk),即 c t + 1 c_{t+1} 只是在 c t c_t 基础上新增了移位向量,因此我们可以将相邻单词看成在相同 c t c_t 下产生。

2 2 Improve Random Walk Model

  在之前的基础上,作者定义 sentence embedding 为:给定一个句子 s,利用最大后验概率估计 ( M A P MAP ) 产生这个句子的主题向量 c t c_t 。我们假定在一步步产生单词时,该句子的主题向量不会发生较大改变,因此用 c s c_s 来代替一个句子所有的 c t c_t

  在模型的基础上,作者做了如下改进,引入了两个平滑项,用来解释 ( a a ) 有些词是在上下文之外出现 ( b b ) 某些高频词如 “ t h e the ” “ a n d and ” 是没有语境限制的。

  • α·p(w):其中 α α 是标量, p p ( w w ) 是整个语料库中单词 w w 的词频。这使得即使单词与当前主题 c s c_s 内积(相关性)很小,它也有一定的概率出现。
  • c 0 c_0 :公共话题向量,它代表着与语法相关的最频繁的主题向量,作用为校正项。它提高了沿 c 0 c_0 具有较高分量的单词的共现概率。

  具体来说,给定主题向量 c s c_s ,在句子 s s 中单词 w w 的生成概率为:
在这里插入图片描述
   α α β β 都是超参数, Z c s = w v e x p ( < c s , v w > ) Z_{c_s} = ∑_{w∈v}exp(<c_s, v_w>) 是归一化常数。我们看到该模型允许生成与主题向量 c s c_s 不相关的单词 w w ,其原因有二:( a a ) 偶然地从项α·p(w)产生 ;( b b ) w w 与公共话语向量 c 0 c_ {0} 相关。

3 3 Compute Sentence Embedding

   句子向量被定义为向量 c s c_s 极大似然估计
在这里插入图片描述
   因此我们发现, M L E MLE 大致是句子中单词的向量的加权平均值。我们发现,越频繁的单词,权重越小。

  为了估计 c s c_s ,我们通过计算一组句子的第一主成分来估计方向 c 0 c_0 。通过将 c s c_s 的投影减去它们的第一主成分可以得到最终的句子嵌入。

  整体流程如下:
在这里插入图片描述


REFERENCE

SIF 论文阅读笔记

发布了10 篇原创文章 · 获赞 2 · 访问量 3051

猜你喜欢

转载自blog.csdn.net/qq_42491242/article/details/105381771