22.6 歧义和排歧
在某些情况下,聆听者是清楚地知道话语中的歧义的。这里有一些从报纸中摘录的报纸标题:
Squad helps dog bite victim.
Helicopter powered by human flies.
Once-sagging cloth diaper industry saved by full dumps.
Portable toilet bombed; police have nothing to go on.
British left waffles on Falkland Islands.
Teacher strikes idle kids.
Milk drinkers are turning to powder.
Drunk gets nine months in violin case.
不过大多数时候我们所听到的语言看起来是没有歧义的。因此,在20世纪60年代,当研究人员开始使用计算机对语言进行分析的时候,他们对于了解到“几乎每句话语都有很强的歧义,甚至对于母语是该种语言的说话者来说多种可选择的解释也不是显而易见的”这个结果感到很惊讶。一个使用大型语法和词典的系统可能会为一个非常普通的语句找到上千种解释。考虑“The batter hit the ball(击球手击中了球)”这句话,解释为“一个棒球比赛选手击打棒球”看起来是没有歧义的。但是,如果这句话前面的语句是“The mad scientist unleashed a tidal wave of cake mix towards the ballroom(那个疯狂的科学家向着舞厅释放出蛋糕粉浪潮)”,那么我们就会得到不同的解释。这个例子依赖于词汇歧义,即一个词语有不止一种含义。词汇歧义很常见;“back”可以是一个副词(go back)、形容词(back door)、名词(the back of the room)或者是一个动词(back up your files)。“Jack”则可以是一个人名、一个名词(一张纸牌名、抛接子游戏、航海用的旗子、狗鱼、公驴、插座或者是起重设备)或者是一个动词(顶起汽车、用灯捕鱼、用力挥击棒球)。
句法歧义(也称为结构歧义)在无论是否有词汇歧义的情况下都可能出现。例如,字符串“I smelled a wumpus in 2,2”有两种句法分析:一是介词短语“in 2,2”修饰名词,一是它修饰动词。句法歧义导致了语义歧义,因为其中一种句法分析意味着wumpus出现在2,2的位置,而另一种分析则意味着在2,2的位置有臭气。在这种情况下,采用错误的解释可能会是一个致命的错误。
语义歧义甚至会出现在没有词汇和句法歧义的段落中。例如,名词短语“cat person”可能表示喜欢猫科动物的某人,或者是电影Attack of the Cat People(《猫人的进攻》)的主角。而一条“coast road”可能是一条沿着海岸的公路或者是一条通向海岸的公路。
最后,在字面含义和喻义中也会存在歧义。在诗歌中修辞手法很重要,不过在日常用语中也很令人惊讶的常见。转喻(metonymy)是用一种事物代表另外一种事物的修辞手法。当我们听到“Chrysler announced a new model(克莱斯勒公司公布了一种新型车)”时,我们并不会将其解释为说明公司能讲话,相反,我们明白是代表该公司的发言人宣布了这个公告。转喻很常见而且经常被人类聆听者下意识地进行解释。不幸的是,我们所写出的语法做到这一点却不是很容易。为了正确地处理转喻的语义,我们需要引入全新层次的歧义。我们通过为语句中的每个短语的语义解释提供两个对象来实现上述工作:一个是短语在字面上指代的对象(Chrysler),另一个是转喻指代的对象(即发言人)。那么,我们就可以说在此二者之间存在某种关系。在我们当前的语法中,“Chrysler announced”被解释成
∃ x, e x = Chrysler∧e ∈ Announce(x)∧After(Now, e)
我们需要把它变成
∃ m, x, e x = Chrysler∧e ∈ Announce(m)∧After(Now, e)∧Metonymy(m, x)
上式的意思是,存在一个等同于Chrysler 的实体x,和另外一个可以发布公告的实体m,这二者之间存在转喻关系。下一个步骤是定义能够发生何种类型的转喻关系。最简单的情况是不存在转喻——字面对象x和转喻对象m是相同的:
在Chrysler这个例子中,一种合理的一般化方法是一个组织可以被用于代表其发言人:
转喻还包括用作者指代作品(如:I read Shakespeare)(“我阅读莎士比亚”,这里用“莎士比亚”指代了他的作品——译者注),或者更一般的是用生产者指代产品(如:I drive a Honda)(“我开一辆本田车”,这里用公司的名称指代了其生产的汽车——译者注),以及用部分指代整体(如:The Red Sox need a strong arm)(“红袜队需要一条强壮的胳膊”,这里用“胳膊”指代了球员——译者注)。某些类似“The ham sandwich on Table 4 wants another beer”(“4号桌火腿三明治想再要一杯啤酒”,这里用顾客所点的食物指代了顾客本人——译者注)这样的转喻例子则比较奇特,需要参考语境才能解释。
虽然这里我们已经勾勒的规则能够允许我们为“Chrysler announced a new model”构造一个解释,但是该解释并不符合逻辑演绎。我们需要用概率的或非单调的推理处理候选解释。
隐喻是这样一种修辞方式,用字面上是某种含义的短语通过类推的方式暗示与字面含义不同的意思。大多数人认为隐喻只是诗人的一种工具,而在日常生活的文字中并不扮演重要角色。然而,许多基本的隐喻是如此普通,以至于我们甚至都不能把它们识别出来。这样的隐喻的一个例子是“more is up”。这个隐喻允许我们说价格上扬、爬升或者暴涨,也可以说温度下降或者陡降,还可以说某人的信心直线下降,或者是某名人的声望突升或者猛增。
有两条途径可以处理这类隐喻。一条是把有关隐喻的所有知识都编纂到词典中——添加词语“rise (上扬)”,“fall(陡降)”,“climb(爬升)”等的新含义,即描述它们对任何范围的量的处理而不仅仅是高度。这种方式能够满足很多应用,但是不能捕捉到隐喻的具有生成能力的特征,这些特征允许人使用诸如“nosedive(俯冲)”或者“blasting through the roof(冲破屋顶)”等新实例而无需担心误解。第二条途径是把有关常见隐喻的明确知识包含进来,并用它们解释读到的新实例。例如,假设系统知道“more is up”隐喻。也就是说,它知道指代纵坐标上某点的逻辑表达式可以被解释为数量范围上的对应点。那么对于表达式“sales is high(销量高)”,根据Altitude(Sales, High)的路线得到一个字面上的解释,它可能被隐喻地解释为Quantity(Sales, Much)。
排歧
就像我们以前所谈到的,排歧是一个诊断问题。说话者想传达的信息是在话语中关于词语的无法观察到的原因,而聆听者的任务则是根据得到的词语和语境知识回溯,以恢复出与说话者的意图最相近的信息。换句话说,聆听者要求解的是其中 Likelihood 既可以是偏好的概率也可以是偏好的任何数值度量。因为单独的句法解释和语义解释规则都不能辨识某个短语或语句的唯一正确的解释,故此某种偏好是必要的。所以我们对工作进行划分:句法和语义解释负责枚举一个候选解释集合,排歧过程则从中挑选最好的解释。
注意我们所讨论的是言语行为的意图,而不是说话者要表明的实际命题。例如,在听到某个政治家说“I am not a crook(我不是骗子)”后,我们可能只会赋予命题“该政治家不是罪犯”50%的概率,而把99.999%的概率赋给命题“该说话人不是一根弯曲的牧羊手杖”。尽管如此,我们仍要给如下的解释赋予更高的概率:
Assert(Speaker, ¬(Speaker ∈ Criminals))
因为它更有可能被提到。
再次考虑“I smelled a wumpus in 2,2”这个有歧义的例子。一种偏好启发式是采用右联合的规则,即在必须决定把PP“in 2,2”放置在句法分析树中何处时,我们应该倾向于将其与出现在最右边的成份相连接,在当前情况下指的就是NP“a wumpus”。当然,这只是一个启发式,对语句“I smelled a wumpus with my nose”而言,启发式将被NP“a wumpus with my nose”是不太可能的这样一个事实所压倒。
利用我们在本书中已经见过的所有知识表示和不确定推理的技术把证据结合起来,使排歧成为可能。我们可以把知识分为4个模型:
(1)世界模型:一个命题在世界中发生的似然率。
(2)智力模型:已知某个确定事实发生,说话者形成将该事实传达给聆听者的意图的似然率。这个方法结合了有关说话者相信什么的模型,以及说话者相信聆听者相信什么的模型,依此类推。
(3)语言模型:已知说话者具有传达某个确定事实的意图,某个确定的词语字符串被选中的似然率。本章中提到的CFG和DCG模型都有一个布尔型的似然率模型:某个字符串有还是没有一个确定的解释。在下一章中,我们将会看到CFG的概率版本,它有利于建立用于排歧的信息更充足的语言模型。
(4)声学模型:已知说话者已经选择了一个给定的词语字符串,将生成一个特定的语音序列的似然率。第15.6节涵盖了语音识别。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。