词义与 WordNet
布拉克内尔夫人:你的父母还健在吗?
杰克:我失去了双亲。
布拉克内尔夫人:沃辛先生,失去一位亲人或许可以看作不幸;两位都失去,看起来就像粗心大意了。
——奥斯卡·王尔德,《认真的重要性》
词是有歧义的:同一个词可以用来表达不同的事物。第 5 章已经看到,单词 mouse 至少有两个含义:(1)一种小型啮齿动物;(2)一种用手操作、用于控制光标的设备。单词 bank 可以表示:(1)金融机构;(2)倾斜的土堤。在上面引自戏剧《认真的重要性》的对白中,奥斯卡·王尔德利用了 lose 的两种含义(一是把物品弄丢,二是经历亲近之人的死亡)。
我们说 mouse 或 bank 这样的词具有多义性(polysemy;源自希腊语“具有多个义项”,poly- 表示“多”,sema 表示“符号、标记”)。1 义项(sense,或 word sense)是对一个词某一方面意义的离散表示。本附录将更详细地讨论词义,并介绍 WordNet:一个大型在线叙词表——即表示词义的数据库——它已有多种语言的版本。WordNet 还表示义项之间的关系。例如,dog 与 mammal 之间存在 IS-A 关系(狗是一种哺乳动物),engine 与 car 之间存在部分—整体关系(发动机是汽车的一部分)。
了解两个义项之间的关系,对涉及意义的任务可能非常重要。以反义关系为例:如果两个词的意义相反,如 long/short 或 up/down,它们就是反义词。区分它们很重要;如果用户要求对话智能体把音乐音量调高,智能体却将其调低,后果就很糟糕。然而,在 word2vec 等嵌入模型中,反义词其实很容易彼此混淆,因为在嵌入空间中,与某个词(如 up)最接近的词之一往往恰好是它的反义词(如 down)。表示这种关系的叙词表可以提供帮助。
我们还将介绍词义消歧(word sense disambiguation,WSD),即判断一个词在特定语境中使用了哪个义项的任务。本附录会给出有监督和无监督算法,用于判断特定语境中意指的是哪个义项。这项任务在计算语言学中历史悠久,并且有很多应用。在问答中,如果知道用户询问“bat care”时所指的是 bat 的哪个义项,我们就能提供更有用的回答。(用户是吸血鬼,还是只想打棒球?)同一个词的不同义项往往也有不同译法:西班牙语中,动物“蝙蝠”是 murciélago,棒球棒则是 bate;事实上,词义算法可能有助于改进机器翻译(Pu et al., 2018)。最后,WSD 长期以来一直被用作评估语言处理模型的工具,而理解模型如何表示不同词义也是一个重要的分析方向。
1 Polysemy 一词本身也有歧义:你可能会看到另一种用法,即仅以它指称一个词的多个义项以某种结构化方式相关的情形,而以 homonymy(同形/同音异义)指称义项间毫无关系的歧义(Haber and Poesio, 2020)。本附录用“多义性”指任何类型的义项歧义,用“结构化多义性”指义项之间存在关系的多义性。