基于规则的多义疑问词“怎么”的词义排歧模型研究

2019-08-05 07:42牛长伟程邦雄
中文信息学报 2019年6期
关键词:决策表全称句法

牛长伟,程邦雄

(1. 中南财经政法大学 国际教育学院,湖北 武汉430073; 2. 华中科技大学 中国语言研究所,湖北 武汉 430074)

0 引言

从类型学角度来看,汉语疑问词较为特殊,可表疑问义,也可表非疑问义,其词义会随其所处句法环境的变化而变化。不同语言间词义的不对称为机器理解自然语言中的词义排歧(word sense disambiguation)工作带来了难题。

汉语语法领域很早就注意到了这类词的多义性。朱德熙将疑问词的用法分为疑问用法和非疑问用法,非疑问用法有两种:一是表示周遍性,即表示在所涉及的范围之内没有例外,伴有“都、也”之类副词;二是指称不知道或者说不出来的人、事物、处所、时间等[1]。吕叔湘将疑问词(不定指指代词)的用法总结为三种:疑问、虚指、泛指[2]。张斌又将疑问词的非疑问用法分为任指、虚指和不定指[3]。张斌中的“不定指”一般都是对举的,吕文将其归为泛指。前人所总结的疑问词词义大同小异,即:疑问、任指和虚指,后两种解读也被称为全称解读和存在解读。以词义复杂的谓词性疑问词“怎么”为例,可表非疑问用法——全称解读(anyhow/anyway)、存在解读(somehow/someway);也可表疑问用法,作状语时可询问方式(how)、原因(why),作谓语时询问状况(what’s wrong with)、性状(what)。如例1所示。

例1a. 怎么修都修不好。(全称解读)

b. 学一门技术不怎么难。(存在解读)

c. 你怎么去的?(询问方式)

d. 你怎么去了?(询问原因)

e. 你今天怎么了?(询问状况)

f. 这是怎么一回事?(询问性状)

例1中的“怎么”均受到了特定句法环境的约束才表现出相应的解读。自然语言中也存在多重句法环境约束的“怎么”,此时优势解读将会被表现出来,如例2所示。

例2是不是怎么修都修不好了?(全称解读)

从目前基于统计的主流机器翻译系统的识别率方面来看,上述7个句子的翻译结果均存在不同程度的问题。测试结果如表1所示。

表1 主流机器翻译系统测试结果[注]该测试于2018年7月11日进行。相关翻译系统网址为:Baidu(http://fanyi.baidu.com/)、Google(https://translate.google.cn/)、SYSTRANet(http://www.systranet.com/translate/)、Ya Trans(http://fanyi.niutrans.com/)。

Google将例1(a)中表任指的“怎么”(anyhow/anyway)翻译为“how”。Baidu、Google、SYSTRANet和YaTrans均未正确区分例1(c)和例1(d)中的“怎么”,例1(c)询问方式(how),(1d)询问原因(why),四大翻译系统倾向于全翻译为“how”。例1(f)和例2的翻译也存在问题。

我们认为,研究“怎么”的词义排歧模型将会有助于机器对该类词语词义的识别。词义排歧会涉及到上下文因素、语义因素、语境因素,甚至涉及到日常生活中的常识[4]。词义排歧的方法有多种,基于词典、规则、语料库等多种方法,如基于词典的词义排歧方法[5]。然而在实际应用的过程中,将各种方法综合利用是比较理想的[6]。例如,苗海等就使用最大熵与规则相结合的方法来进行词义排歧工作,获得很好的效果[7]。针对词义较多、句法环境复杂的“怎么”,有指导的学习方法(supervised learning approaches)中的决策表分类法(decision list classifiers)是一个理想的方法,用这个方法来处理“怎么”的词义排歧工作,即根据共现词的等价类的不同制定决策表,然后利用这个决策表输入目标项,确定其最佳的词义[4]。

下面我们在相关理论假设的基础上,分析“怎么”的三类语义解读,即全称、存在和疑问(方式、原因、性状、状况),总结三类语义解读所处的句法环境,通过测试其在复杂句法环境中的强势解读来构建一个自上而下的词义排歧模型,为制定决策表提供依据。最后通过实验来验证词义排歧决策表的可行性。

1 理论假设

“怎么”的三种语义解读与其所处的句法环境有关,总结各类句法环境的特征就尤为重要。形式语义学派把疑问词看作自由变量(free variable),其表现何种解读取决于约束(bind)它的算子(operator)。当疑问词被全称算子、存在算子和疑问算子约束时,分别表全称解读、存在解读和疑问解读[8]。如例1(a)中的“怎么”被全称算子“都”约束,表全称解读;例1(b)中的“怎么”处于否定句法环境中,表存在解读;例1(c)~例1(f)中的“怎么”均被隐性疑问算子[注]Huang认为隐性疑问算子是通过疑问代词在逻辑层面(LF)上的移位获得的[9]。约束,表疑问解读。

总的来说,疑问词与受约算子间是一种约束关系。例1中各句子仅受单一算子约束,语义识别较为简单,但当句中有多个算子时,疑问词会优先被哪种算子约束?这些受约算子间是一种怎样的层级关系呢?这需要通过特定语句的测试来确定多重算子约束下的疑问代词的优势解读。接下来,根据这一理论假设,我们来尝试总结允准“怎么”语义解读的句法环境特征及其层级关系。

2 允准“怎么”语义解读的句法环境的特征

2.1 “怎么”表全称解读

“怎么”被全称量化词“都”及类同算子“也”约束时,表全称解读。如例3所示。

例3a. 按住葫芦漂起瓢,怎么都不好办。(CCL[注]北京大学CCL语料库:http://ccl.pku.edu.cn:8080/ccl_corpus/。)

b. 客氏歪着脑袋,怎么也猜不出来。(CCL)

例3(a)中“怎么”可被理解为“各种办法”,后半句意思是“通过各种办法都不好办”。例3(b)中“怎么”也可被理解为“各种办法”,后半句意思是“通过各种办法也猜不出来”。全称算子“都”和类同算子“也”将“怎么”这一自由变量约束后,使之表现为全称解读。这两个算子虽被统称为全称类算子[10],但对事件实现全称意义的路径是不同的。袁毓林提到“都”是对一组最小事件加合表示全称意义,是总括式扫描(summary scanning);“也”是对一组最小事件的合取表示全称意义,是次第式扫描(sequential scanning)[11]。但需要注意的是,“都”和“也”的约束规则往往与其重读与否有关。如例4所示。

例4a. 你们怎么都不讲烟台话了?(CCL)

b. 你怎么也不替一下我?(CCL)

例4(a)中“都”关联约束复数主语“你们”,“怎么”未被关联约束,表疑问,询问原因,意思是“你们几个人为什么都不讲烟台话了?”例4(b)中“也”关联“你”,“怎么”未被关联约束,表疑问,询问原因,意思是“别人不替我也就罢了,你为什么也不替一下我呢?”那么,该如何确立“都”和“也”的关联项?文献[12]曾讨论过“都”的关联次序和约束规则,即:当“都”不被重读时,其倾向于左向关联约束疑问词,疑问词表全称解读;当“都”被重读时,其倾向于左向关联约束非疑问成分,疑问词表疑问解读。其实,“也”同样适用于该关联次序。若将例4(a)中的“都”和例4(b)中的“也”轻读,“怎么”则表全称解读(改为第三人称“他们/他”更好),意思是“就是不说烟台话了”、“就是不替一下我”。

2.2 “怎么”表存在解读

“怎么”处于疑问环境、真值不确定环境或否定环境时,会表存在解读。如例5所示。

例5a. 鼠标怎么摔了一下吗?

b. 是不是怎么修一下就好了?

c. 电视好像怎么闪了一下就不亮了。

d. 实在不怎么爱听。(CCL)

例5(a)(b)中“怎么”表存在解读,意思是“以某种方式”,分别处于是非问句和正反问句中,同属疑问环境。例5(c)中“怎么”表存在解读,处于非事实类动词“好像”的辖域内。这类动词还有“仿佛、似乎”等。例5(d)中“怎么”被否定词“不”统制[注]统制是生成语法学中的专有名词。句法树中,当A节点和B节点互不支配(dominated),且支配A节点的第一个最大投射(maximal projection)也支配B节点,那么,A节点就统制B节点。从句子语序上看,一般处于被统制成分前。[13],表存在解读。吕叔湘认为例5(d)中的“怎么”表示一定程度,略同于“很”而较轻,“怎么”的作用在于减弱“不”的力量,语气比较委婉,没有“实在不爱听”语气坚决。其实,从形式语义学的角度来看,“表示一定程度”即是存在解读,例5(d)中“怎么”的作用类似于表存在解读的疑问词“什么”,“我没买什么东西”比“我没买东西”显得语气要委婉。

2.3 “怎么”表疑问解读

“怎么”受隐性疑问算子约束或处于[+WH]类动词辖域内时,表疑问解读。如例6所示。

例6a. 你怎么去上海的?

b. 他问我怎么去上海的。

按照形式学派理论,例6(a)中的“怎么”在逻辑层面(Logical Form)移位至Spec-CP位置后,才获得疑问解读[9]。例6(b)中[+WH]类动词“问”要求其辖域内必须具备疑问环境(是非问句、正反问句、选择问句或特指问句),“怎么”是疑问词,所以此处必须表疑问义形成特指问句才能满足[+WH]类动词的要求。这类动词还有“问、询问、打听、想知道”等。

例6(a)中“怎么”表疑问解读,询问方式。除方式外,“怎么”还可询问原因、状况和性状,如例1(d)~例1(f)。那么,四种疑问解读的句法环境有何不同呢?

“怎么”作谓语时询问状况。吕叔湘总结了这种用法句末基本用“了、啦”[2]。“怎么”作定语时询问性状。吕叔湘将此用法总结为“怎么+(一)+量词+名词”,量词常用“个、回”,名词多为“人、东西、事”[2]。“怎么”作状语时,询问方式或原因。肖治野将询问方式的句法环境分为三类,即:①S+(是)+怎么+VP+的; ②S+怎么+VP; ③S+怎么+(个)+V法。将“怎么”询问原因的句法环境也分为三类:①S+怎么+[Z]+VP; ②怎么+S+[Z]+VP,③怎么,S+[Z]+VP。肖文中“S”指主语,“[Z]”可以是“不、就、才、又”等各类副词,也可以是表示时间、地点、比较、关涉等的各类短语甚至小句[14]。具体总结如如表2所示:

表2 “怎么”表疑问解读所处句法环境特征

①彭可君曾提到“你怎么买鱼?”中的“怎么”既可询问方式,也可询问原因[15]。我们认为,该句中“怎么”分析为询问方式更符合语感。当修改为“你怎么买鱼了?”时,句子“怎么”询问原因的意思才更加明确。感谢审稿专家增补例句。

2.4 小结

通过以上三节的分析,我们来总结一下允准“怎么”语义解读的句法环境的特征,如表3所示。

表3 允准“怎么”语义解读的句法环境的特征

①当一个句子中有两个“怎么”时,往往也表全称解读,如“你想怎么做就怎么做。”此时,句中“怎么”直接输出为全称解读,对应于英语中的“however”。感谢审稿专家增补例句。

3 “怎么”的词义排歧模型构建

“怎么”被全称类算子“都、也”约束时,表全称解读;处于疑问环境、真值不确定环境、否定环境中时,表存在解读;处于[+WH]类动词辖域、被隐性疑问算子约束时,表疑问解读。上述“怎么”所表现的语义解读仅是处于单一句法环境中,自然语言中“怎么”常处于多重句法环境中,其语义解读表现如何?这是构建“怎么”的词义排歧模型需要解决的问题。另外,“怎么”表疑问解读时的四种解读也要通过“由简及繁”的原则来进行词义排歧。

3.1 多重句法环境下“怎么”的语义表现

本节测试多重句法环境下“怎么”的语义表现。操作方法是将表3中的句法环境自由组合,来确定“怎么”的优势解读。由于隐性疑问算子并无显性标记,无须将其引入复杂句法环境。我们将表3中的5种句法环境两两自由组合,然后根据语感来测试其优势语义解读,如例7所示。

例7a. 怎么修都修不好了吗?(①+②=全称)

b.好像怎么修都修不好了。(①+③=全称)

c.不是怎么修都修不好了。(①+④=全称)

d. *我想知道怎么修都修好了。(①+⑤=*)

例8a.好像是不是怎么修一下就好了?(②+③=存在)

b. 实在不怎么好听吗?(②+④=存在)

c. 我想知道你是不是怎么修了它一下才好的。(②+⑤=存在)

例9a.好像不怎么好听。(③+④=存在)

b. *我想知道他好像怎么摔了一下。(③+⑤=*)

例10*我想知道这首歌不怎么好听。(④+⑤=*)

例7(a)~例7(c)中“怎么”均表全称解读,说明在①~④中,全称解读是强势解读,即①的层级高于②③④。例8(a)、例9(a)中“怎么”均表存在解读,说明在②③④中,三种句法环境是平行的。例7(d)、例8(c)、例9(b)和例10中“怎么”的语义解读表现各异,“想知道”要求其辖域内出现疑问环境,除例8(c)中“是不是”(正反问句)满足疑问环境外,其余3句均与疑问环境冲突,所以不合格。

自此,可以得出①≫②/③/④≫⑤,即“全称类算子约束”是第一层级的,“疑问环境、真值不确定环境和否定环境”是第二层级的,“[+WH]类动词辖域”是第三层级的。也就是说,当句中的“怎么”被全称类算子约束时,表全称解读;若不是,进入下一步;若处于疑问环境、真值不确定环境或否定环境中时,表存在解读;若不是,则表疑问解读。

3.2 “怎么”的疑问解读的词义排歧

当“怎么”的词义排歧至疑问解读时,就需要识别“怎么”是询问状况、性状、方式,还是原因。在词义排歧时,应遵循“由简及繁”的原则,也就是说,先操作容易识别的词义,最后操作难识别的词义。从表2中我们可以看出,“怎么”的四种疑问解读的句法环境“由简及繁”依次为“状况→性状→方式→原因”,可将最复杂的句法环境作为默认值输出。另外,“怎么”表方式时,还可将其句法环境作进一步简化,即“怎么+(个)+VP+(*了)”。

3.3 “怎么”的词义排歧模型

综合3.1和3.2,我们大致可以推导出“怎么”的词义排歧模型,如图1所示。

图1 “怎么”的词义排歧模型

4 “怎么”所处句法环境的区分条件及其验证

4.1 “怎么”所处句法环境的区分条件

图1所示的“怎么”的词义排歧模型涉及到“约束、环境、辖域”等语言学术语,不利于机器识别。接下来,我们将这类立体化术语线性化,使机器通过对词序的判断,快速识别出通常情况下“怎么”的解读。

全称类算子约束:怎么+(……)+都/也;否定环境:①不/没(有)+怎么;真值不确定环境:好像/仿佛/似乎+(……)+怎么;疑问环境:①怎么+(……)+吗,②V+否定词+V+(……)+怎么。

4.2 “怎么”所处句法环境的区分条件

我们将“怎么”词义排歧决策表的缺省值设定为表询问原因的疑问解读,根据图1和4.1中的区分条件,“怎么”的词义排歧决策表如表4所示:如果在输入语句中有全称类算子,且在“怎么”之后,则输出“全称”;若无,就检测下一项。如果“怎么”与表4中①~④有关,则输出“存在”;若不符,再检测下一项。如果“怎么”属于“怎么+了/啦”句式,则输出“询问状况”;若不属于,则进入下一项。如果“怎么”属于“怎么+(一)+个/回+人/东西/事”句式,则输出“询问性状”;若不属于,则进入下一项。如果“怎么”属于“怎么+(个)+VP+(*了)”句式,则输出“询问方式”;若都不属于,则输出缺省值——“询问原因”。

表4 “怎么”的词义排歧决策表

4.3 “怎么”词义排歧决策表的验证及改进

为验证“怎么”的词义排歧决策表,我们从CCL语料库中随机选定1 000个含有“怎么”的句子,用表4中的词义排歧决策表来对这1 000个句子中“怎么”的语义解读进行判断。验证步骤如下:

① 判断句中是否存在表4中所提到的规则;

② 若存在表4中的规则,则依次输出相应的语义解读;

③ 将②输出的语义解读与实际语义解读作比较,确定输出的语义解读是否恰当。

按上述验证步骤对1 000个句子进行验证,结果如表5所示。

表5 “怎么”词义排歧决策表的验证结果

表5中所示的“已识别”是指识别出的语义解读与实际语义解读一致,“未识别”是指识别出的语义解读与实际语义解读不一致。全称解读中有4个未识别,是由于句子重音不同造成的,如例11(a),CCL未标记重音,所以该类句子被误判为全称解读。存在解读中有4个未识别,是由于“要不”的原因,如例11(b),“要不”是“要不是的话”的简写,由于“不”和“怎么”紧邻,导致“怎么”误判为存在解读。其他解读中有153个未识别,其中包括129个“怎么样”,如例11(c);5个代指用法,如例11(d),“怎么”代指了某一动词;19个复句,如例11(e),“不管/无论”紧邻“怎么”时,解读等同于全称解读。

例11a. 爸,你怎么也迷信起来了?

b. 你们海鹏可勇敢了,要不怎么能当司令。

c. 庙会上宣传工作做得怎么样?

d. 陈旅长都不敢怎么我。

e.不管怎么说,周泉的心里总有一道阴影。

例11(a)的重音问题,文本由于未标记重音,暂且不予考虑。例11(b)和例11(d)仅占选取语料的0.4%、0.5%,也可暂不考虑。针对例11(c)和例11(e),可以对表4的词义排歧决策表进行如下改进:

① “怎么”输入之前,先排除“怎么样”的影响;

② “全称类算子约束”增加区别条件,即“不管/无论+怎么”句式中,“怎么”也输出全称解读。

4.4 “怎么”词义排歧模型的应用价值

引言部分表1中提到了基于统计的主流机器翻译系统在识别“怎么”的语义解读时尚存改进空间。除无限地扩大双语平行语料外,运用规则的方法也可识别出表1各句中“怎么”的语义解读。例1(a)中“怎么”处于全称算子“都”前,输出为全称解读(anyhow/anyway);例1(b)中“怎么”在否定词“不”之后,输出为存在解读(somehow/someway),逻辑上,“not+some(any)”即为no,表否定;例1(c)中“怎么”符合“怎么+(个)+VP+(*了)”格式,输出为询问方式(how);例1(d)中“怎么”不符合模型中的既有格式,最后输出为询问原因(why);例1(e)中“怎么”符合“怎么+了/啦”格式,输出为询问状况(what’s wrong with);例1(f)中“怎么”符合“怎么+(一)+个/回+人/东西/事”格式,输出为询问性状(what);(2)中“怎么”处于“都”之前,在第一步就被输出为全称解读(anyhow/anyway),不受该句正反问句类疑问环境影响。

5 结语

本文选择“怎么”作为谓词性疑问词的代表来分析,是因为“怎么”是该类疑问词中用法最多且最复杂的一个。除本文分析的六种语义解读外,“怎么”还有代指用法,由于出现比例极低,暂不考虑。本文通过总结“怎么”在汉语语法领域的相关研究成果,构建了一个自上而下的基于规则的词义消歧模型,然后根据自然语言中常见的情况,制定“怎么”的词义排歧决策表,最后通过语料库样本数据验证了该决策表的可行性。

猜你喜欢
决策表全称句法
2022年本刊可以直接使用的常用缩略语
2022年本刊可以直接使用的常用缩略语
2022年本刊可以直接使用的常用缩略语
基于决策表相容度和属性重要度的连续属性离散化算法*
述谓结构与英语句法配置
带权决策表的变精度约简算法
2019年本刊可以直接使用的常用缩略语
句法二题
诗词联句句法梳理
电力稳控系统在石化企业的应用