基金项目:国家重点研发计划(2019QY1803); 国家自然科学基金(61672440); 国家语委一般项目(YB135-49); 厦门大学校长基金(ZK1024)
通信作者:whj@xmu.edu.cn
(School of Informatics,Xiamen University,Xiamen 361005,China)
DOI: 10.6043/j.issn.0438-0479.201904019
针对现有中文自然语言处理研究多以词或者字符为单位,忽视了中文词的内部层次结构的问题,提出一种新的中文词内部层次结构定义标准.该标准定义了内部结构的节点类型和节点内部关系.在此基础上,进一步提出了中文词内部层次结构的标注规范,并且人工标注了含有带内部层次结构的53 918个中文词的词料库.该研究有望为后续的细粒度中文自然语言处理提供新思路.
The current research on Chinese natural language processing mostly regards word or character as the unit,ignoring the internal hierarchical structure of Chinese words.Here we proposed a novel standard to represent internal hierarchical structures for Chinese words.By this novel standard,we define both the node type and internal relationship of the internal structure.On this basis,we further introduced the annotation guideline to the internal hierarchical structure of Chinese words and we manually annotate the internal hierarchical structure in a corpus with 53 918 Chinese words.This work is expected to provide new ideas for subsequent fine-grained Chinese natural language processing.
传统的中文自然语言处理任务或者先进行分词,然后以词为基本处理单元,或者直接以字符为基本处理单元.上述两种处理方式有着各自的优缺点.一方面,以词为单元保留了自然语言的语义信息,一个词就是一个基本的语义单元,能够很大程度上降低对句子理解上的歧义,但是存在数据稀疏问题.例如,“访问者”,即使是词表之内的词,但由于其在语料中出现的频率很低,模型仍然难以准确学到它的语义信息; 另一方面,以字符为单元虽然能够解决数据稀疏问题,但是字符相比于词歧义更大,同时句子输入序列过长,因此无法充分利用中文原子词的语义信息.例如:“蜻蜓”的语义由字符序列作为整体构成,而无法由字符语义组合而成.可见,如何探索适合中文自然语言处理的基本语义单元具有重要的研究意义.
对此,本研究认为定义合适的基本中文语义单元,并在此基础上引入词内部结构将有利于解决上述难题:1)引入更细粒度的语义单元,将有助于解决数据稀疏的问题.例如,可以将“访问者”拆分成“访问”和“者”两个语义单元.同样的句子在不同分词下标准中的结果往往不同,而细粒度语义单元的使用可以提高不同分词下标准分词结果的一致性; 2)进一步引入词内部结构可有效建模中文词内不同粒度的语义单元之间的关系; 3)基于词内部层次结构可以建模词的语义表示,作为传统以词为基本单元的词向量表示方法的有效补充.因此,探索词内部的基本语义单元和它们之间的层次结构对中文自然语言处理任务的研究具有重要意义.
近年来,在词的构成和表示上,语言学家们从语素的层面进行了较为深入的研究和探讨[1-4].与此同时,随着计算机中文文本处理的快速发展,中文词的结构以及词义表示也成为自然语言处理的研究热点之一.在这方面,Zhao[5]从词法标注角度探究了中文字符级别的依存关系,将词解析为以字符为基本单元的依存树结构.Li[6]同样考虑了词内结构,提出了一种新的分词方法.与前面工作不同的是,Li[6]的工作是基于词性标记并且区分了扁平词(即无内部结构的词)和有内部结构的词.Li等[7]认为中文中的前缀和后缀字符会派生出很多伪未登录词,而这些字符往往频率较高并且具有相同的语义用法,尽管它们在词中和在短语中的标注并不相同.例如:“刑法”和“环境保护法”,字符“法”的语义用法完全相同,但是前者将“法”标注为后缀,而后者将其视为词.因此,为缓解上述伪未登录词和标注不一致的问题,受先前联合建模的工作[8-9]的启发,Li等[7]将中文词法结构和句法结构解析进行统一建模,同时解析出词和短语的内部结构.进一步地,Zhang等[10]研究了基于字符的词内部语法结构,对分词、词性标注和句法解析3个任务进行联合建模.相较于Li[6],Zhang等[10]的词标注覆盖了整个中文树库(Chinese tree-bank,CTB)的词表.
与此同时,随着深度学习的快速发展,研究者也开始关注如何利用词内部细粒度语义单元来获得整个词的语义表示.Chen等[11]提出使用字符的平均表示以加强词义表示.Xu等[12]则在Chen等[11]的基础上对字符级的表示做了加权平均.Wang等[13]同样致力于细粒度语义单元对词义表示的影响,不同于前面的工作,他们认为词义表示由原子表示和组合表示共同组成,而后者可由字符语义表示通过注意力机制加权得到.
总体而言,上述工作均存在一定缺陷,主要为以下两点:1)多以字符为基本单元,然而,中文完全以字符作为基本语义单元存在歧义; 2)部分工作虽然考虑词内部结构,但这些结构往往较为简单,不够丰富.本研究借鉴现有相关工作,提出一种新的中文词内部层次结构定义标准,该标准首先定义了基本语义单元,并定义了以这些单元为基础的词内部结构,结构中包含了节点类型和节点内部关系; 进一步提出中文词内部层次结构的标注规范,并人工标注了带有内部层次结构的53 918个中文词料库.
本研究借鉴相关工作[10-13],定义了一套面向中文词内部层次结构解析的标准.该标准主要包含两部分:
1)从语义组合的角度对中文词内部结构基本语义单元类型进行了界定.具体而言,定义的语义单元类型(节点类型)有两种:原子子词(atom subwords)和组合子词(composition subwords),标签分别为“a”和“c”.原子子词的词义不能由其构成单元的语义直接组合而成,例如“蜻蜓”.与之相反,组合子词的词义则可以由其构成单元的语义组合而成,例如“副总统”.
2)从词义偏向关系的角度定义了构成单元语义之间的4种关系:偏左(语义单元的中心部分在左边)、偏右(语义单元的中心部分在右边)、并列(两部分是并列关系)和无偏向关系,其标签分别为“l”,“r”,“p”,“n”.
接下来,本研究将举例阐述上述定义标准.如图1(a)所示,由于“蜻蜓”只有作为一个整体才能表达词义,因此为原子词,而且其内部单元之间无语义偏向关系.图1(b)展示了“副总统”的内部层次结构.其结合过程如下:“总”和“统”先结合,“总统”的语义不可由“总”和“统”直接组合而成,因此“总统”的节点类型为原子子词; 同时,“总”来修饰“统”,因此“总统”的语义偏向关系偏右.然后,“副”和“总统”再结合,“副总统”的节点类型为组合词,语义偏向关系偏右.类似地,词“花朵”为组合词,词内部单元语义关系偏左(图1(c)); 词“海洋”为组合词,词内部单元语义关系为并列,如图1(d)所示.
本标注规范旨在为标注者提供标注规则以完成标注任务.标注者需具备基本的汉语知识.在标注过程中,标注者需要分析词内层次结构,并标注其节点类型和节点之间的语义关系.
下面本研究将根据不同类型的中文词就如何标注分别进行说明.
单纯词主要包括单音节词、连绵词、叠音词和音译外来词.
1)单音节词:只有一个字符,无偏向关系.如:天、地、你、我.标注样例如图2(a)所示.
2)连绵词:两个不同的音节连缀表示一个意义,因此词义无偏向关系.连绵词根据音节连缀形式不一样又分为如下3种.
i)双声词:声母相同的双音节词.如:参差、忐忑、嘀嗒.标注样例如图2(b)所示.ii)叠韵词:韵母相同的双音节词.如:窈窕、腼腆、彷徨.iii)非双声叠韵.如:蝴蝶、玻璃、蝙蝠.
3)叠音词:相同的两个音节重叠,词义偏向为并列.如:纷纷、悄悄、猩猩.标注样例如图2(c)所示.
4)音译外来词,词义无偏向关系.如:葡萄、咖啡、的士.标注样例如图2(d)所示.
合成词其构成形式有联合式、偏正式、动宾式、补充式和陈述式等.
1)联合式,根据联合形式可分为以下4种.
i)同义联合,词义偏向为并列.如: 海洋、评论、寒冷.ii)反义联合,词义偏向为并列.如:早晚、深浅、开关.iii)类义联合,词义偏向为并列.如:尺寸、穿戴、岁月.iv)偏义联合,词义偏向中心词.如:国家(偏“国”)、忘记(偏“忘”)、好歹(偏“好”).标注样例如图3(a)所示.
2)偏正式:其内部有限制和被限制的关系,词义偏向中心词,根据中心语的词性可分为以下3种.
i)中心语是名词:红色、白糖、铅笔,标注样例如图3(b)所示; ii)中心语是动词:新闻、重视、密植; iii)中心语是形容词:火红、笔直、冰冷.
3)动宾式:前一词根表示动作、后一词根表示动作所关系到的事物,词义偏左.如:动员、管家、建议.标注样例如图3(c)所示.
4)补充式:后面的词根补充前面的词根,词义偏左.
i)动补关系 前一个语素表示动作,后面的语素表示动作的结果.如:提高、改正、澄清.标注样例如图3(d)所示.ii)名量关系 后一个语素是量词性语素,从数量方面补充说明前一个名词性语素.如:花朵、纸张、车辆.
5)陈述式:后一个语素陈述前一个语素,词义偏右.如:地震、军用、月亮.标注样例如图3(e)所示.
派生词由词根和词缀构成,词根表示词的具体词汇含义,词缀附加在词根前或后表示词的某种附加意义.
1)前加式派生词:在词根前面附加词缀.词义一般偏词根.如:老师、阿姨、老张.但是特殊情况词缀具有实际意义,如“第一”,词义偏序数词“第”; “初一”词义偏时间名词“初”.标注样例如图4(a)所示.
2)后加式派生词:词根后面附加词缀,词义偏左.如:鸟儿、念头、现代化.标注样例如图4(b)所示.
1)提取式:从固定短语中提取每个词的一个语素组成缩写形式,词义偏右.如:家电(家用电器)、科技(科学技术).标注样例如图5(a)所示.
2)共戴式:两个或两个以上的并列结构共用一个元素,除共用元素,词义偏右,整体偏共用元素.如:中小型(中型和小型)、理工科(理科和工科).标注举例如图5(b)所示.
3)标数式:用数字概括几个并列结构的性质,根据选取并列结构的特征不一样分为如下两种.
i)取并列结构中的相同语素作代表,然后标数,词义偏相同语素.如:三通(通航、通邮、通商)、双百(百家齐放、百家争鸣).ii)找并列的几种事物的共同属性,然后标数,词义偏共同属性.如:五官(眉、目、耳、鼻、口)、四化(工业现代化、农业现代化、国防现代化、科学技术现代化).标注举例样例如图5(c)所示.
本研究标注的语料共包含53 918个词,覆盖了语言学联盟(linguistic data consortium,LDC)的125万平行对语句对(该数据是中英翻译的基线数据)的中文端语料库词的98.96%.在后续研究中,将尝试基于标注数据来自动训练词内部层次结构的解析模型,以实现对所有中文词内部层次结构
的解析.图7是语料库关于词长和词频的词分布图.标注人员由6名研究生组成,经过前期培训熟知标注规则,并能够熟练使用标注工具.整个标注过程持续了35 d,每个标注者平均每天花费2 h完成300个词的标注量.为确保标注质量,本研究标注人员还对标注结果进行二次检查标注.与此同时,本研究计算了不同标注者之间标注结果的一致性.即抽取200个词进行双人标注,然后计算2份标注结果一致的数词量与抽取的样本词数量的比值,该比值为83%,这结果表明标注者之间具有较好的标注一致性.另外对标注结果进行了统计,共标注了53 918个词,其中原子词的比例为35%,包含了18 903个词,20 675个标签; 组合词的比例为65%,包含了35 015个词,41 860个标签.词义偏向关系“l”、“r”、“p”、“n”的标签数量分别为10 604,23 747,8 941,19 243.
本研究在中英翻译的任务上进行实验,验证了本文构建的词内部结构语料库对自然语言处理相关任务的有效性.
训练模型的双语语料来自LDC的1 275 707条平行句对.测试集为NIST03、NIST04、 NIST05、NIST06,分别含有919,1 788,1 082,1 664条句对.本研究采用Bahdanau等[14]提出的神经网络机器翻译模型,其中字符向量维度设置为50,词向量维度设置为500,隐层向量维度设置为1 000,词表大小为30 000,数据批(batch)的大小为80,参数更新方法为Adam[15],学习率为0.000 5.此外,本研究用大小写不敏感的4元机器双语互译评估(4-gram BLEU,下文简记为BLEU)[16]来评估最终翻译质量.
本研究主要改进了Bahdanau等[14]提出的神经网络机器翻译系统中编码器的词表示.基于Qian等[17]提出的递归网络模型Tag Guided RNN,根据中文词内部层次结构,构建基于子词的树结构.具体做法为将左右节点的表示进行拼接,然后乘以相应的参数矩阵得到中间节点的语义表示,以此递归得到词的树结构,将树的根节点作为词义表示.得到组合语义表示后再与原先的词向量嵌入(word embedding),作为词的最后表示并将其作为编码器的输入.对比模型包含两个:1)Zhang等[10]提出的基于词的二叉树结构.基于Zhang等[10]提供的解析工具,本研究对数据进行解析得到基于字符的二叉树结构,然后采用上述相同方法得到词的语义表示.2)Wang等[13]提出的词表示方法在中英翻译任务上的使用,具体而言,词的表示由两部分组成,原子词和组合词.原子词的表示为词向量,组合词的表示为词内字符的加权求和,该权重由词内每个字符与词的拼接表示乘上参数矩阵,再经过Tanh激活函数得到.
表1是两个对比模型与本研究的模型在中英翻译任务上测试集的BLEU值,AVG表示所有测试集的平均BLEU值.
实验结果表明,本研究的模型在多个测试集上都有明显的提升,与预期相一致.虽然两个对比模型也考虑了词内更细粒度的语义单元,但是前者并未考虑
这些单元的内部层次结构,后者完全基于字符进行建模无法避免字符歧义性带来的负面影响.相比之下,本研究提出的方法既充分利用了中文词内部层次结构来补充词的语义表示,又基于原子子词来进行建模减少了字符歧义性,使得词表示具有更加丰富的语义信息.
现有中文自然语言处理研究多以词或者字符为单位,忽视了中文词的内部层次结构.对此,本研究提出一种新的中文词内部层次结构定义标准,该标准定义了内部结构的节点类型和节点内部关系.在此基础上,进一步提出了中文词内部层次结构的标注规范,并且人工标注了带有内部层次结构的53 918个中文词,构建了词内部结构语料库,在机器翻译实验上初步验证了该方法的有效性.该语料库资源有望应用于后续的中文自然语言处理任务.