首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

摘要:词汇意义的向量空间模型

ConSem 读书会·第十六期

第十六期

第十六章《词汇意义的向量空间模型》,作者:Stephen Clark

活动时间

2018年6月30日(已成功开展)

作者介绍

斯蒂芬·克拉克是剑桥大学计算机实验室的自然语言处理教授,他曾在爱丁堡大学进行博士后研究并在牛津大学任教。他拥有苏塞克斯大学计算机科学与人工智能的博士学位以及剑桥大学的哲学硕士学位。克拉克的主要研究兴趣是开发自然语言句法语义的数据驱动模型。

章节导读:

我们的导读从语法观说起,几乎所有语言学家都认同广义的“词库-语法”模型,这是因为:

人不可能记住各个层级的所有语言单位

人至少一定会记住其中的一部分,并通过这些部分来组合出其他语言单位

各个理论的不同之处只不过在于:词库中储存的是什么?

回到语义学。组合语义学解决的是大单位的语义如何由小单位的语义计算出来,但没有说明这些小单位之间是什么关系;词汇语义学解决的则是所有这些小单位的语义在词库中的关系,即语义空间的结构是什么样的。

传统的真值条件语义学侧重研究前者,比如看一个经典谓词逻辑的例子:

模型M=D,I>

De=

[[round]] =

[[square]] =

[[blue]] =

[[green]] =

[[red]] =

这里的几个形容词的意义之间存在什么关系,我们是不知道的,因为模型论的解读只告诉我们这些谓词在模型中的指谓(denotation),比如square和red在这里有着相同的指谓,但是否意味着它俩的意思一样呢?直觉告诉我们,显然不是。我们需要有另一个理论告诉我们这些词义在概念层面上是否相近。

而本次要谈的分布语义学的主要描写对象正是词汇语义的语义相似性,笼统的来说,即各个语义概念之间的亲疏远近(具体也可能涉及到不同的语义关系,后文会介绍)。

小贴士

值得补充的是,类型学中的概念空间/语义地图方法,本质上研究的也是词库中语义或功能的相似性(不涉及组合)。两者的差别在于,分布语义学中的数据来源是单语语料库中表达两个意义的词在一定范围内的共现;而类型学中的数据来源是跨语言中不同功能在单个语言中的同编码形式。

一般认为分布语义学有两个重要的哲学(或者说理论语言学)基础(文中第1.1小节),一个是分布假说(Distributional Hypothesis),由弗斯提出:“A word ischaracterized by the company it keep.”(Firth, 1957),即分布相近的词的词义也会接近;另一个是词袋假说(Bags-of-words Hypothesis),由Harris(1954)提出。这两个假说都将在后面起到重要的作用,是本理论立足的基础。

如何用向量来表征一个词的词义是第3节的主要内容。我们将首先介绍第3节,再回过来介绍第2节,因为第2节是该方法在信息检索(information retrieval)领域中的一个应用,作者在写作时把这个应用先作为了引子。

首先考虑一下如何表征一段文本。从计量语言学的角度来说,文本存在频率效应,将一段分好词的文本按词频的ranking排序会得到一个频率分布,往往符合幂律分布。如:

(1)John likes towatch movies. Mary likes movies too.

图1文本(1)的词频分布

图1即例(1)中文本的词频分布,这时候我们从文本中读出的信息是比较强的。不仅包括各个词型的频数,还包括频数高低的排序;而当我们忽略排序(但不忽略频数信息)时,会得到的信息是这样的:

注意:这不是一个常规意义上的集合,因为集合最重要的特性是集合中的元素不能重复。但它又是有意义的,这个新对象在数学上被称为多重集(multiset,也称bag)。这时候词袋假说就派上用场了,一段文本可以看作一些词的多重集。可以用集合论语言将其本质还原为一个二元组(A, m(A)),m代表每个基本元素的数量,不严谨地表达为

{“John”:1,“likes”:2,“to”:1,“watch”:1,“movies”:2,“Mary”:1,“too”:1}

或按定义严格表达为(但由于太复杂,一般不这么写)

(, {(John, 1), (likes, 2), (to, 1),(watch, 1), (movies, 2), (too, 1)})

当略去词型时,就成了一个向量(1, 2, 1, 1, 2, 1, 1),每个维度代表的意义分别是对应的单词。至此,我们做到了用一个向量表征一段文本。可以发现向量的维数就是该段文本中词型的数量,在这个例子中就是7。

小贴士

从信息量的角度来说,文本>词频分布=词袋,也就是说,前者和后两者之间存在一个单向不可逆的转换关系,用词频分布或者词袋无法还原出原文本信息(主要是各个词例的语序信息);而词频分布和词袋虽然看起来前者还包含额外的排序信息,但其实也隐含于后者之中,因此两者可以互相转化。

但该方法也存在一定的问题:

假如这段文本非常长,词型数量很大,那这个向量的维度也很大。

对于数据稀疏(data sparsity)的问题,书上介绍了Padó & Lapata (2007)的解决办法(p. 502)。另一个问题是:

假如再给定另一段文本,构成两段文本的基础词汇词型不一样,如果用多重集的一些运算是可以合并的,但是简化为向量表示后则不太好处理。

如给定

(2)John also likes to watch football games.

B1 = {“John”:1,“likes”:2,“to”:1,“watch”:1,“movies”:2,“Mary”:1,“too”:1}

B2 ={"John":1,"also":1,"likes":1,"to":1,"watch":1,"football":1,"games":1}

B1 + B2 =

{"John":2,"likes":3,"to":2,"watch":2,"movies":2,"Mary":1,"too":1,"also":1,"football":1,"games":1}

但假如丢失了词型的信息,仅通过向量(1, 2, 1, 1, 2, 1, 1)和(1, 1, 1, 1, 1, 1, 1)无法找到一种系统性的方法计算得出(2, 3,2, 2, 2, 1, 1, 1, 1, 1),因此选定的词型(即基向量)的信息不能完全丢掉。

小贴士

这是向量简记法的问题。以以前数学或物理学中常见的向量为例,在二维空间中向量p= 3x+ 2y通常可以忽略基向量简写为(3, 2),但这是因为在给定的整个向量空间中不存在更大的范围了,假如还存在第三个维度z,如此一来就得写成p= 3x+ 2y+ 0z,简记为(3, 2, 0);而对于总的维度数量不确定的,基更加就不能省略了。

下一步是用向量来表征词义,这时候分布假说就要派上用场了。分布假说认为分布相近的词的词义也会接近。因此,可以用一个词在周围一定范围内的词袋来表征这个词,这个范围叫作(上下文)窗口(contextual window),上下文窗口的长度在语料库语言学中称为跨距(span)。再以(1)为例:

(1)John likes towatch movies. Mary likes movies too.

如果我们需要表示的词是watch,选定的窗口是这两句话构成的文本,那watch可以表征为

{“John”:1,“likes”:2,“to”:1,“movies”:2,“Mary”:1,“too”:1}

如果用向量表示,就是(1, 2, 1, 2, 1, 1)。

刚才的例子中,窗口的大小是我们自己设定的,可以是一段话、一句话,甚至几个词。不同窗口大小反映的语言学意义不同。窗口越大(句子、段落、文档等),考察的是主题相似性;窗口越小(几个词),考察的是近/同义词。对窗口进行操作更精细的方法(p. 501第二段)包括(a)使用单侧的窗口、(b)考虑具体搭配词的位置或(c)通过语言学处理,如词类标注来更加精细化。

这个模型可以有些调整的地方,比如我们发现其中有些虚词没啥信息量,比如to、too,所以可以把这两个维度去掉,也就是都选用固定的维度,选取一组基,比如(John, Mary, movies, likes, football),这样一来(1)和(2)都可以用固定的维度来表示

(1)John likes towatch movies. Mary likes movies too. → (1, 1, 2, 2, 0)

(2)John also likesto watch football games. → (1, 0, 0, 1, 1)

另一处理种方法是加权,在第3.2小节中进行了详细介绍。以上就是用分布来表示词义的大体思路,这一思路在文档检索的应用中也有体现。

小贴士

需要一提的是,在汉语词类大讨论中,尽管后来的语言学家大多赞同分布比形态和意义更适合作为词类划分的标准,却鲜有对分布进行形式化的定义的;生成语法中语类划分也面临同样的问题,如Carnie(2013)第二节中虽然举了一些句法测试的例子作为判断词类的标准,但在实际操作中并不是严格这么执行的,仍然是凭直觉来划分。真正的分布标准应该是可以从实际语料中自动提取信息进行判断的。在这方面,白硕(1995)做出了不错的尝试。

有了上述的方法进行基本的描写之后,便可以将不同的词向量进行比较,主要是通过余弦计算。

图2 词向量的可视化

图(2)是这一方法的可视化以及加权之后对其的影响(虚词the的影响力被削弱了)。可以看到,在由sleep、eat和the作为基的向量空间中,dog和cat的词义是比较接近的,而加权方法限制了两个向量在the这个维度上的差距(这张图画得不太好,两个向量都像处于sleep-eat一个平面上的,其想表达的意思是,加权之后,一些高频词——往往是虚词的维度上的差别会缩小,因为其对概念语义没有什么贡献)。

第3.3小节以一个真实的试验为例,例子来自Curran(2004),并介绍了评价方法(p. 506),包括外在法(intrinsic evaluation)和内在法(extrinsic evaluation)两种。该试验的结果发现存在以下几种情况:

自动提取出来的近义词可能在人工近义词典中不存在,如advent与introduction

一些提取出来的结果更像是反义词而不是近义词,如elimination和introduction

某些结果难以解释,如array与introduction

这些发现就对我们对于解释这类现象提出了更高的要求,换而言之,我们所发现的语义相似性的本质究竟是什么(第3.4节)?

这些可能性除了同义词(synonym)和近义词(near-synonym)外,还包括反义词(antonym)、类比(analogy)等等,部分学者做了更细的分类。Schütze(1998)还研究了向量方法中多义词的处理。

本文的第2节介绍了信息检索领域的一个主题——文档检索(document retrieval),包含着向量空间模型的具体应用。一般来说,不会将所有的词都表示出来,而会选取一些关键词(实词)。比如下例中,第一行为选取的词的维度(即基向量),第二行和第三行是文档,第四行是检索式,文档和检索式分别都可以按上述方法、根据给定的词作为维度表示为向量。

图3 文档检索中的一例

随后,可以通过余弦分别计算文档1和文档2对于检索式的主题相关程度。但我们发现,两次计算的值虽然一样,但文档2根本都没有提到人物Hoggard,只是由于wicket一词出现得比较多而已。因此需要加权,将原来的文档向量中的每个分量乘以相应的逆文档频数(inverse document frequency,简称IDF),即该词在给定范围的全部文档中出现的次数。如此一来会得到更好的计算结果(图4)。

图4 加权后的文档检索

这整个模型称为tf-idf(term frequency-inverse documentfrequency)模型,是一种常用的方法。更多关于文档检索的例子,可以查看Manning et al.2008一书。

本文最后介绍的是一种新的趋势,即将分布语义学和传统的组合语义学结合的组合分布语义学(第4节),文章大体参考的是Coecke et al. (2010)的模型,也会提及一些 Baroni andZamparelli (2010)的理论。

该模型中参考的句法理论叫作准群语法(Pregroup Grammar),是组合范畴语法(CCG)的一种变体,也是一种带类型的语法理论。第4.3.1小节介绍了准群语法。准群语法和经典范畴语法本质上差别不大,只不过在形式上取消了斜线(slash operator),引入了邻接运算(adjoint),其代数结构是带偏序的幺半群,称为准群。

而从经典组合语义学拓展到组合分布语义学(第4.3.2小节),以个体为例,其语义解读则从单纯的实体变为向量。对其他类型的对象来说,则有借鉴之处,比如形容词可以看作类名词的函数(即输入一个类,输出一个范围更小的类),及物动词也可以看作带两个论元的函数。在线性代数中,向量的函数即变换(transformation),可以用矩阵来表示。因此,形容词可以表示为二阶张量(即矩阵),而及物动词多一个论元,可以表示为三阶张量。范畴语法中用于组合的邻接运算,在向量空间模型中表达为张量积(tensor product)。该模型也可以用于真值计算(4.3.3),在这里,真值不是绝对的一刀切,而是确实组合后句子的语义在可能性空间(plausibility space)中的位置。最后的第4.3.4小节介绍了该模型的评估方法以及未来的发展趋势。

总结一下,向量空间模型是一种纯粹通过对E语言的研究来希望反映I语言特性的方法,其优点是纯粹依赖于文本,不存在预设、脑补的成分(绝大部分形式句法理论都有预设的专家知识,如各种特征的设置等);而缺点在于简单粗暴,只是基于一些基本假设,在某种情况下做出较好的模拟或预测,但未必能揭露真正的隐性科学规律。

ConSem阅读小组 · 第一周期

《当代语义学理论研读》| No. 16

语言 | 逻辑 | 信息

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180713G1M4MY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券