Artetxe2018CoNLL_Uncovering divergent linguistic information in word embeddings...

Uncovering divergent linguistic information in word embeddings with lessons for intrinsic and extrinsic evaluation

1. Abstract

  • 一篇关于词嵌入的论文
  • 作者认为词嵌入所能给出的信息,远超人们的想象
  • 主要贡献就是提出了词嵌入的后处理,以及 n n 阶相似度矩的含义及计算方法

2. Introduction

  • 词嵌入是当下NLP领域的热点之一,诸多用于训练密集向量表示的非监督学习方法已经被相继提出,并成功用于句法分析、主题建模以及文本分类等领域
  • 目前所有词嵌入构建的基本思想都是,利用大型单语语料库中的同现统计co-occurrence statistics ),以及相似词汇必定出现在相似文本环境中的分布式假设,将相似的向量表示分配给相似的词汇
  • 但是如何定义“相似”,或者说嵌入模型应该捕捉词语之间什么样的关系仍不明确。例如有些人将真实相似性(轿车-汽车)与关联性(车-公路)加以区分,有些人认为应重点关注语义(唱歌-咏唱)和语法(sing-singing)相似度。总而言之,也就是将相似度衡量的两个轴划分为了语义/语法轴相似/关联轴

3. Proposed post-processing

X X X i X_{i*} s i m ( i , j ) = X i X j sim(i,j)=X_{i*}·X_{j*}
词嵌入矩阵 i i 个词的嵌入向量 i i 和词 j j 的相似度
  • 从上表可以得知,如果定义一个相似度矩阵 M ( X ) = X X T M(X)=XX^T ,那么显然就有 s i m ( i , j ) = M ( X ) i j sim(i,j)=M(X)_{ij}

  • 基于上述定义的一阶相似度量方法,可以延伸到二阶相似,即相似度并不体现在两个词有多相似,而是这两个词与第三个词有多相似(猫-哺乳动物,鲸鱼-哺乳动物)。这种情况下,即便这两个词不是很相似,但如果它们同时与另外一个词有着较高的相似度,我们就认为这两个词二阶相似。以此类推,还有三阶相似 N N 阶相似等。

  • 定义二阶相似度矩阵 M 2 ( X ) = X X T X X T M_2(X)=XX^TXX^T ,从而 s i m 2 ( i , j ) = M 2 ( x ) i j sim_2(i,j)=M_2(x)_{ij} ,并且可以看出 M 2 ( X ) = M ( M ( X ) ) M_2(X)=M(M(X)) 。同样的, N N 阶相似度矩阵 M N ( X ) = ( X X T ) N M_N(X)=(XX^T)^N s i m N ( i , j ) = M N ( X ) i j sim_N(i,j)=M_N(X)_{ij}

    M 2 ( x ) 12 M_2(x)_{12} 为例,也即词1和词2的二阶相似度。根据 M 2 ( X ) = X X T X X T M_2(X)=XX^TXX^T 可知, s i m 2 ( 1 , 2 ) = s i m ( 1 , 1 ) s i m ( 1 , 2 ) + s i m ( 1 , 2 ) s i m ( 2 , 2 ) + . . . + s i m ( 1 , n ) s i m ( n , 2 ) sim_2(1,2)=sim(1,1)*sim(1,2)+sim(1,2)*sim(2,2)+...+sim(1,n)*sim(n,2) ,也即词1、词2与所有词的相似度的积和

  • X X T XX^T 做个特征分解: X T X = Q Λ Q T X^TX=QΛQ^T Λ Λ 为对角元素是 X T X X^TX 特征值的正对角矩阵 Q Q 是相应特征向量构成的正交矩阵。定义一个线性变换矩阵 W = Q Λ W=Q\sqrtΛ ,令 X = X W X'=XW ,则 M ( X ) = M 2 ( X ) M(X')=M_2(X) 。更一般的,

    n n 阶相似度 参数 α α 线性变换矩 W α W_α n n 阶相似度矩 M n M_n
    n 1 n≥1 α = ( n 1 ) / 2 α=(n-1)/2 W α = Q Λ α W_α=QΛ^α M n ( X ) = M ( X W α ) M_n(X)=M(XW_α)

    M ( X W α ) = X W α ( W α ) T X T = X Q Λ α Λ α Q T X T = X Q Λ 2 α Q T X T = X Q Λ n 1 Q T X T M(XW_α)=XW_α(W_α)^TX^T=XQΛ^αΛ^αQ^TX^T=XQΛ^{2α}Q^TX^T=XQΛ^{n-1}Q^TX^T
    ( X T X ) n 1 = Q Λ n 1 Q T (X^TX)^{n-1}=QΛ^{n-1}Q^T
    X Q Λ n 1 Q T X T = X ( X T X ) n 1 X T = ( X T X ) n = M n ( X ) XQΛ^{n-1}Q^TX^T=X(X^TX)^{n-1}X^T=(X^TX)^n=M_n(X)
    M n ( X ) = M ( X W α ) M_n(X)=M(XW_α)

  • 另外,这种变换本质上是相对的,也即可以通过将 α α 值对相似度降阶。例如有一个二阶变换嵌入矩阵 X X ,且 X = Z W 0.5 X=ZW_{0.5} Z Z 为原始的嵌入矩阵),则 M ( X W 0.25 ) = Z M(XW_{-0.25})=Z 。也即,对于任意阶相似度矩阵,都可以通过选择合适的 α α 值,对相似度矩阵进行降阶/升阶

  • 此外,虽然阶数是离散的, α α 的值却是光滑、连续的,所以你懂的。

4. Intrinsic evaluation

  • 本节从词语类比(word analogy)和词语相似(word similarity)两个角度,给出语义/语法相似/关联两个基准的具体解释。
  • 词语类比
    - 对于问题“已知(柏林,德国),那么(?,法国)”或者“已知(small,smallest),那么(?,biggest)”,词语类比就是利用简单的词向量运算来衡量答案与标准答案之间的准确度。
  • 词语相似
    -对于给定的word pairs,用于衡量模型给出的相似度得分,与人类标注给出的相似度得分,二者之间的差异。
  • 为了验证第三节提出的后处理(post-processing)是否有效,论文基于3种嵌入方法进行了测试。在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 不难看出,通过加入后处理,不论是在词语类比还是词语相似任务中,都比之前(使用一阶嵌入矩阵)的精确度有了不同幅度的提升。
  • α α 值的变化会使某个轴的侧重有相应变化,具体见论文。

5. Extrinsic evaluation

  • 本节从语义文本相似度(semantic textual similarity )的任务出发,解释后处理如何提升下游任务的性能。
  • 语义文本相似度与词语相似度类似,区别在于衡量的是模型给出句子间相似度、人为标注给出的句子间相似度的差异。
    在这里插入图片描述
    在这里插入图片描述
  • 从测试结果来看,仍然有不小的提升。

6. Discussion

  • 作者认为,标准词嵌入编码所包含的信息比人们现在看到的多得多,但由于无法同时显现所有语言信息,标准词嵌入编码的战斗力受到极大限制。比如在词语类比任务中,虽然后处理能够提升精确度,但语义轴的提升是以语法轴的恶化为代价的,反之亦然(图2)。
  • 后处理在监督学习与非监督学习的应用效果不同,非监督学习系统直接使用词嵌入相似度因而提升效果更大;监督学习系统使用一般词嵌入作为输入特征,有足够的表达能力来学习最优变换,因此提升相对较小。

猜你喜欢

转载自blog.csdn.net/Real_Brilliant/article/details/83626361
今日推荐