张永伟 马琼英
搭配(collocation)一词在语言学中的含义,学界尚未达成共识,较为普遍的认知是指一种重复出现的词语的组合(Sinclair 1991115;孙茂松,黄昌宁等 1997),这种组合是任意的、具有一定结构的、与领域相关的,往往体现了语言的某种习惯表达。[1]比如“民族服装”是“民族”和“服装”的偏正搭配,“洗干净”是“洗”和“干净”的动补搭配,这些均是各搭配成分相连的例子。更进一步,在“取得突破性进展”这一短语中,“取得”和“进展”位置上并不相连,依然是一个动宾依存搭配。
人类语言中充满了搭配。(Smadja 1993)Firth(1957)12指出“人们可以从与一个词结伴使用的其他词来了解这个词的含义”,这种观点已经成为语料库语言学的核心概念之一,也是语言学习的有效方法。语文辞书是语言研究和学习的工具书,以解释词语的意义和用法为目的,释义和配例是语文辞书最重要的内容。搭配对于辞书编纂人员编纂条目时归纳词义、挑选配例以及辞书读者浏览条目时了解词义和用法都非常重要。
然而,受限于依存搭配检索工具功能性的不足,汉语语文辞书的编纂实践对搭配的利用,尤其是对依存搭配的利用并不充分。近年来,许多大规模文本语料库陆续建成,依存句法分析和搭配识别技术也取得了诸多进展,为依存搭配的实用化提供了数据来源和技术基础。本文综合利用这些资源,设计并研制了一个辅助语文辞书编纂的依存搭配检索系统,期望能促进依存搭配在语文辞书编纂中发挥积极的辅助作用。
搭配由节点词(node)和搭配词(collocate)组成,其中节点词是被观察词,搭配词是和被观察词结伴使用的其他词。基于窗口的搭配是最常见的一种搭配,搭配词是在节点词上下文中指定大小的窗口内出现的其他词。基于窗口的搭配只考虑节点词和搭配词之间的共现关系,不考虑其他关系。而依存搭配是基于依存关系的搭配,词语间的依存关系源自句子的依存句法。(Robinson 1970;Schubert 1987)依存句法理论认为,词与词之间存在支配关系,支配其他词的词称为支配词(head),被支配的词称为从属词(dependent)。语言技术平台(LTP)[2]、spaCy[3]、CoreNLP[4]等许多工具都提供了不同标注体系的依存句法分析器(dependency syntax parser),可以自动标注句子的依存句法信息。图1给出了句子“他收到了一封17个孩子联名写的感谢信”经LTP[5]依存句法分析后的结果:
图1 依存句法分析结果
图1中的分析结果表示为一组词语序列,词性信息置于各词上方,存在依存关系的两个词用一条有向弧连接,箭头由支配词指向被支配词,弧上的标记表示两词之间的依存关系类型。
存在依存关系的任意两个词都可构成一组搭配,节点词既可以是支配词,也可以是被支配词,以观察对象为转移。比如图1中,“收到”和“感谢信”之间有一条有向弧,依存关系为“VOB”[6](动宾关系),因此是一组动宾依存搭配。将“收到”作为节点词时,“感谢信”是作为直接宾语的搭配词;将“感谢信”作为节点词时,“收到”是作为动词的搭配词。
由此可见,依存搭配的节点词和搭配词之间存在某种依存关系,并且属于同一个句子,这些特性让依存搭配区别于基于窗口的搭配,与基于窗口的搭配形成互补。
早期的搭配识别主要依赖人工,以人的主观判断为标准,耗时耗力,众口不一。随着语料库和计算机技术的发展,国外Choueka和Klein(1983)开始关注搭配的自动识别领域,国内孙茂松、黄昌宁等(1997)率先开始研究汉语搭配的自动识别,此后许多研究围绕多种汉语依存搭配的自动识别方法展开,比如曲维光和陈小荷等(2004)、徐睿峰和 陆勤(2006)、张化瑞和张永伟等(2011)。这些研究在丰富搭配类型的同时不断提高着识别的准确率。
依存搭配识别的起步也比较早,Lin(1997)尝试使用依存句法识别英语词语搭配,周明和DingYuan等(2001)、吴华和周明(2003)等使用依存句法识别汉语词语搭配。近年来,依存搭配识别研究常伴随具体的应用展开,比如陈炜鹏和付瑞吉等(2014)将依存搭配识别用于信息检索查询语句的缩略,胡韧奋和肖航(2019)将依存搭配识别同词语辨析、量词学习和语法偏误自动探测等应用结合研究,邵艳秋和申资卓等(2019)基于依存搭配识别技术进行了平面媒体语言的监测研究,李娟(2022)将依存搭配识别技术用于近义词的辨析等。这些研究都使用了不同的依存搭配识别方法。各依存搭配识别方法的核心区别在于计算词语间搭配强度的方法不同:陈炜鹏和付瑞吉等(2014)使用了点间互信息、最大似然比、卡方分布3种方法,邵艳秋和申资卓等(2019)使用了加权互信息方法,胡韧奋和肖航(2019)使用了搭配频次(节点词和搭配词的共现频次)和互信息两种方法,李娟(2022)使用了点间互信息的方法。
常见的搭配强度计算方法有10余种,除上述方法外,还有对数似然比、T值、对数Dice系数、对数比值、平方互信息等。计算方法众多,各有长短,尚没有一种方法能完全替代其他方法。辅助语文辞书编纂时,为了满足编纂人员多方面的搭配使用需求,搭配识别需支持多种搭配强度计算方法。
搭配检索指查询搭配信息的过程,根据数据来源的不同,通常有两种实现方法:(1) 基于搭配库的检索,先按一定规则抽取搭配,制作搭配库,再从搭配库中查询搭配;(2) 基于文本语料的检索,先查询节点词相关的语料文本,再利用搭配识别技术从中识别搭配。这两种方法的主要区别在于搭配是预先抽取还是检索时识别,搭配强度是预先计算还是检索时计算。
北京师范大学研制的CCA中文搭配助手[7](胡韧奋,肖航 2019)是一款典型的基于搭配库的依存搭配检索系统,两个预先制作的搭配库是搭配检索的对象。该系统支持26种形式、9种句法搭配类型的搭配检索;检索时,搭配结果按搭配类型进行分组,每条搭配结果包含搭配、搭配频次、互信息、典型形式、例句等信息。
基于文本语料的依存搭配检索系统多集成于语料库分析工具中。第四代语料库检索系统[8]以国外的CQPweb[9]、English-Corpora.org[10]、Sketch Engine[11]和国内的北京大学CCL语料库检索系统[12]、北京语言大学BCC汉语语料库[13]、国家语言文字工作委员会汉语通用平衡语料库[14]为典型代表。国外的3个系统均支持基于窗口的搭配检索,只有Sketch Engine支持基于语法关系的搭配检索,而国内的3个系统均不支持任意类型的搭配检索。Sketch Engine基于语法关系的搭配检索提供分组功能,但搭配强度计算只支持对数Dice系数一种方法。基于文本语料的检索系统对依存搭配检索的支持严重 不足。
基于文本语料的依存搭配检索依赖原始语料,检索时识别搭配并计算搭配强度,同基于搭配库的检索方法相比,检索速度更慢,但支持的检索条件可以更复杂、更灵活。为了不局限于某种特殊用途,依存搭配应该基于文本语料进行检索。此外,为了全方面满足语文辞书编纂过程中使用搭配的实际需求,依存搭配检索系统应具备以下7个核心功能:
(1) 支持检索任意词语(节点词)的搭配;
(2) 支持对节点词词形以外的属性条件(比如词性、句法功能)进行设置,以便更精确地描述节点词;
(3) 支持对搭配词词形、词性、句法功能等属性条件进行设置,以便更精确地描述搭配词;
(4) 支持多种搭配强度计算方法,以提供不同特点的搭配检索结果;
(5) 支持历时语料,以便观察搭配的历年使用变化;
(6) 支持分组,按词性、依存关系等属性条件将具有相同特性的搭配同组显示;
(7) 提供搭配例句,以便查看搭配所在的完整上下文信息。
CCA中文搭配助手、Sketch Engine等在上述核心功能上也均有所欠缺,不能满足汉语语文辞书编纂的核心功能要求。
为了方便辞书编纂人员使用依存搭配,我们研制了一个依存搭配检索系统(简称“DCS系统”),系统整体工作流程如图2所示。
图2 依存搭配检索系统工作流程
我们选择《人民日报》1946—2019年图文数据库作为文本语料,使用LTP[15]进行词法分析和依存句法分析。具体分析过程为:(1) 读取单篇文本,按换行、回车符号进行分段处理;(2) 对每个文本段落,调用LTP进行分句、分词、词性标注、依存句法标注; (3) 对历年《人民日报》文本重复上述步骤,并保存文本处理结果,得到用于建立索引的熟语料库。
使用Lucene开源索引工具包[16]读取熟语料,以词为基本单位建立索引,得到索引库。建立索引时,读取并保存的篇章信息包含语料文本编号、作者、标题、版次、版名、年份、日期等信息,它们在熟语料文本中以元数据(metadata)形式保存;读取并保存的词语信息除词语位置、词形、词性、依存关系外,还有对应支配词的位置、词形、词性等信息,这些信息均是词语的标注信息,它们在熟语料文本中以标注(annotation)形式保存。此外,为了高效获取计算搭配强度所需的多种频次信息,我们建立了多个词表,用于缓存各类可预先统计的频次信息。
依存搭配识别的主要步骤为:
(1) 系统根据用户输入的节点词、搭配词的查询条件,在文本语料库中检索节点词及其标注信息。节点词和搭配词的句法功能共同限定了节点词既可能是支配词,也可能是被支配词,甚至有时候不做区分。句法功能限定节点词是支配词时,节点词查询条件的匹配对象是词语对应支配词的词形和词性等信息,搭配词查询条件则同词语自身的词形和词性等信息匹配;句法功能限定节点词是被支配词时,节点词和搭配词查询条件的匹配对象刚好相反;不区分节点词是支配词还是被支配词时,需对两种情况分别进行匹配和检索,然后将结果合并。
(2) 根据步骤(1)的结果读取或统计节点词频次、搭配词频次、搭配频次、语料库总词数等数据。如用户输入查询条件时还设置了词性、句法功能等附加信息,则读取或统计频次时,需统计词形、词性、句法功能完全匹配时的频次。
(3) 根据搭配强度计算公式,利用步骤(2)得到的各种数据计算各搭配的搭配强度。
(4) 按搭配强度对搭配进行排序,过滤掉搭配强度低于阈值的搭配,得到依存搭配列表。
DCS系统作为面向语料库机助辞书编纂系统的一个子系统,其技术选型与编纂系统(张永伟,顾曰国等 2021)完全一致。系统界面由顶部查询条件设置区和底部搭配结果显示区两个区域组成,具体如图3所示。
图3 依存搭配检索系统界面
检索搭配时,DCS系统支持对节点词、搭配词、搭配过滤、搭配显示、语料过滤等条件进行设置。细节如下:节点词条件支持词形、词性和句法各功能的设置,词形是必填项。搭配词条件支持词形、词性、句法功能、搭配强度计算公式设置,其中搭配计算公式支持点间互信息、平方互信息、T值、对数比值、对数似然比、Dice系数、相对频次、共现频次、搭配词频次等方法,默认为Dice系数。节点词条件和搭配词条件均包含句法功能的设置,但只能设置节点词或搭配词在依存关系中的句法功能,比如设置某个节点词是动宾结构的动词,设置某个搭配词是动宾结构的宾语等。搭配过滤条件支持搭配词最小频次和搭配最小频次的设置,频次低于该设置值的搭配将不会返回。搭配显示条件支持分组(不分组/按搭配词词性分组/按依存关系分组)、分组大小(每组的搭配数量)、搭配词形式(词形、词性、句法功能及他们的组合)、搭配历时分布信息(不显示/按年份显示/按年代显示)、搭配历时详细数据(不显示/显示)的设置。按搭配词词性或句法功能分组时,不同词性或不同句法功能的搭配将分进不同的组,相同词性或相同句法功能的搭配将同组显示。语料过滤条件支持在特定年份或特定版名的语料中进行搭配检索。受限于界面空间限制,搭配词的历时分布和历时数据只在不分组时才显示。
图3中搭配的查询条件设置如下:节点词词形为“采集”、句法功能为“动宾结构-动词”,搭配强度计算公式为“Dice系数”,搭配不分组并按年份显示历时分布。在表格中单击搭配词即可在新打开的窗口中查看“采集”和该词搭配出现的句子列表。DCS系统实现了上文所述的辅助语文辞书编纂的依存搭配检索系统应该具备的7个核心 功能。
搭配有助于编纂人员快速归纳词语含义,对词语进行释义,本节以“采集”为例展示。使用DCS系统检索节点词词形为“采集”的依存搭配,搭配强度计算公式为“Dice系数”,搭配按句法功能进行分组,得到排序靠前的4组信息(并列结构除外),如表1所示:
表1 “采集”依存关系分组信息
表1显示“采集”最常见的用法是做状中结构的中心语、动宾结构的动词、定中结构的定语以及主谓结构的谓语,以动词用法为主,其中主谓结构可以显示动作的主体、动宾结构显示动作的对象。在DCS系统中进一步设置搭配词的句法功能为“动宾结构-宾语”,得到搭配强度大于等于0.01的宾语搭配词列表,如表2所示:
表2 “采集”的宾语搭配词
表2显示“采集”的对象大致可以分为植物、信息、子集三类。其中,植物类包括中草药、植物、药材、饲料、树种、草药,信息类包括数据、信息,子集类包括标本、样品、样本。进一步对这三类信息的动作进行区分可知,之于植物的“采集”之义是“摘”+“收集”,之于信息的“采集”之义是“取”+“收集”,之于子集的采集之义是“选”+“收集”。标本、样品、样本等子集类词语既可以指植物、信息,也可以指其他事物,三个词子集类词语含义也略有不同,这里不展开讨论。《现代汉语词典》第7版对“采集”的释义为(省略了例句):
这里的“采集”释义并未区分后接宾语搭配词的不同类型,也没有释出“采”的区别。为了进一步考察后接信息类词语的搭配,在DCS系统中设置搭配历时频次信息按年份显示,得到与“采集”和“数据”“信息”搭配的历时频次变化(如图3所示)。图3中“采集”与信息类词的搭配频次近年来整体呈上升趋势,具有一定典型性,这说明“采集”对应的义项有可能产生分化。综合上述分析,“采集”可以进行如下释义修改:
“采集”的新释义区分了“采”的差异,通过括注提示了不同含义时常接的宾语,同时也通过第二个义项突出了近年新分化的含义。
辞书中的词语配例应常用并且典型。以量词“封”为例,为其选取短语例时使用DCS系统进行检索,设置查询条件如下:节点词词形为“封”、词性为“量词”(q)、句法功能为“定中结构(att)-定语”,搭配词词性为“名词”(n),搭配强度计算公式为“Dice系数”。DCS系统给出前20个搭配词信息,如表3所示:
表3 量词“封”修饰的名词搭配词
表3显示,在量词“封”修饰的前20个名词中,信件类词语有18个,只有“电报”“邮件”包含非“信件类”含义[17],它们与“封”的历年共现频次变化如图4所示:
图4 量词“封”修饰的搭配名词“电报”“邮件”历年共现频次变化
图4显示,“封”与“电报”的依存搭配频次在20世纪50年代中期和90年代初期达到了两次高峰,此后整体呈下降趋势,从1996年开始,频次跌至个位数,应该是随着通信手段的不断发展,电报逐渐退出历史舞台的结果。“封”和“邮件”的依存搭配频次在2000年以前始终为个位数,从2001年开始呈现爆发式增长,这应该与人类步入互联网信息时代、电子邮件开始逐渐流行的背景相关。“封”和“电报”以及“封”和“邮件”的历年依存搭配频次呈现出大致相反的变化,提醒着我们,“电报”和“邮件”和其他信件类词语一样,均可以作为量词“封”不同类型的配例。《现代汉语词典》第7版对量词“封”的完整释文如下:
释义将“一封信”作为第一个短语例,而从搭配检索结果也可以看到,信件类词语是“封”最常用且最典型的搭配,辞书释义与搭配检索结果相一致。搭配结果同时显示,“一封电报”“一封邮件”也可以作为“封”的短语例,添加了新短语例的释义如下:
借助DCS系统查询“封”的依存搭配,一方面我们验证了量词“封”原有短语例的合理性,另一方面也为我们修订条目时挑选更典型、更合适的配例提供了计量分析的技术手段。编纂人员无需阅读大量例句就可以快速增补合理的配例,同时也降低了不同编纂人员挑选配例的主观性和随意性,尤其是对于历时语料的充分挖掘,更能帮助编纂人员快速了解示例用法的历时变化。由此可见,DCS系统为辅助语文辞书编纂时挑选、修改配例提供了高效、可用的方法。
DCS系统对语文辞书编纂的辅助远不止释义和配例,本文仅将这两方面作用作为典型进行说明。
DCS系统可以有效辅助汉语语文辞书编纂,但仍有许多可改进之处。
(1) 增加汉语搭配网络。Brezina和McEnery等(2015)研制了搭配网络(collocation networks)工具GraphColl(后改名LancsBox[18]),用于建立共有搭配词关联,生成多个中心词的搭配层级网络,从而有助于更加直观地了解搭配词之间的相互关联以及节点词的使用分布,有助于深层次地揭示节点词的语义特点。
(2) 增加搭配词语义韵识别。识别搭配词语义韵并进行分组可视化,有助于快速了解节点词常和哪些语义韵的词语进行搭配。
(3) 增加搭配词词义分类识别。识别搭配词词义的分类,有助于快速了解节点词常和哪些语义类的词语进行搭配,从而快速了解节点词使用上下文的语义环境。
未来我们将以本文研究为基础,围绕上述改进之处进行更深入的研究,为语文辞书编纂提供更多、更有效的辅助手段。
附 注
[1] 重复出现的词语组合除搭配外,还可能是词语的自由组合(free combination)或者熟语(idiom)等等(Van der Meer 1998)314。
[2] 主页:http://ltp.ai。
[3] 主页:https://spacy.io。
[4] 主页:https://stanfordnlp.github.io/CoreNLP。
[5] 这里直接使用http://ltp.ai/demo.html在线工具进行分析。
[6] LTP支持的依存句法关系及其标签列表参看http://ltp.ai/docs/appendix.html。
[7] 主页:http://cca.xingtanlu.cn。
[8] McEnery和Hardie(2012)37-48将语料库分析工具分为四代,其中第四代工具基于浏览器-服务器体系架构,分析工具基于内建的语料库,是当下最新型的语料库分析工具。
[9] 主页:https://cqpweb.lancs.ac.uk。
[10] 主页:https://www.english-corpora.org。
[11] 主页:https://app.sketchengine.eu。
[12] 主页:http://ccl.pku.edu.cn:8080/ccl_corpus。
[13] 主页:http://bcc.blcu.edu.cn。
[14] 主页:http://corpus.zhonghuayuwen.org。
[15] LTP版本为4.0,模型为Base。使用Base模型进行词法分析和语法分析的速度较慢,但与small、tiny等模型相比效果更好。
[16] 主页:https://lucene.apache.org。
[17] 在《现代汉语词典》第7版中,“电报”的含义为“用电信号传递文字、照片、图表等的通信方式。可分为编码电报和传真电报两种”和“用电报装置传递的文字、照片、图表等”;邮件的含义为“由邮局接收、运送、投递的信件、包裹等的统称”和“电子邮件”,只有第一个义项是传统意义上的信件。
[18] 主页:http://corpora.lancs.ac.uk/lancsbox。