周惠巍, 黄德根, 钱志强, 杨元生
(大连理工大学计算机科学与技术学院,辽宁大连 116024)
汉语句法分析一直被认为是中文信息处理的一个重要技术.其可以分为两种方法:一种是短语结构解析,即将句子划分成短语,解析句子短语间的层次结构关系[1];另一种是依存结构解析,即解析句子词语间的依存关系[2、3].依存关系可以明确地表明词语间的支配关系,并能方便地发展为语义依存描述,近年来越来越受到研究人员的重视.
计算语言学的发展使得人们可以使用机器学习的方法基于大规模的语料库构建汉语句法解析器.国内外研究人员已经构建完成了各种语言的树库,树库标注方式各不相同,其结构大体分为两类:短语结构树库和依存结构树库.常用的汉语树库有短语结构的宾州中文树库(Penn Chinese T reebank,CTB)[4]和依存结构的哈尔滨工业大学信息检索研究室的依存结构树库(HIT Chinese Dependency Treebank,H IT-IR-CDT).CTB的创建为汉语句法分析提供了一个平台,基于CTB的短语结构解析[5]和依存结构解析[6]成为当前研究的热点.但是CTB是短语结构树库,而且没有标明每个短语的中心子节点,所以必须首先将CTB转换为依存结构树库,然后基于转换后的CTB才能进行中文依存关系解析.
目前,汉语树库资源仍然存在不足,而手工标注树库需要大量的时间和人力.短语结构树库和依存结构树库虽然标注方法不同,但描述的都是句法结构,在深层次上具有一致性,所以人们尝试在两种不同类型的树库之间进行相互转换[7~9].Lin提出基于中心子节点表(tree head table)将短语结构树转换为依存结构树的算法[7].转换采用递归算法,将短语结构树中各短语的非中心子节点依存到该短语的中心子节点上.Xia提出基于中心子节点过滤表(head percolation table)将宾州英文树库(English Penn Treebank,PTB)和CTB从短语结构树转换为依存结构树的算法[8].中心子节点过滤表与中心子节点表的概念基本相同,均由短语类型、搜索短语中心子节点的方向以及短语中各类标注的子节点作为中心子节点的优先次序三部分组成.但是Xia构造的汉语中心子节点过滤表非常简单,表中每种短语包含的子节点类型比实际CTB语料中出现的子节点类型少许多.比如名词短语(noun phrase,NP)的子节点类型为43种,而Xia构造的中心子节点过滤表的NP子节点类型仅为5种.如果在短语中没有搜索到中心子节点过滤表中的节点类型,Xia即将搜索起始节点默认为该短语的中心子节点.这种处理方法简单可行,但是需要完整的中心子节点过滤表,否则会影响转换效果.党政法等提出了一种将清华汉语树库(TsinghuaChinese Treebank,简称TCT)从短语结构转换成依存结构的算法[9].该算法充分利用了TCT具有的功能、结构双重标记,转换得到的依存树包含了节点间的依存关系以及具体的依存关系类型.CTB是国内外研究人员常用的一个大规模汉语树库,将其从短语结构转换为依存结构有利于人们进行汉语依存关系解析的研究.本文在总结以往研究成果的基础上,结合CTB标注体系的特点,构造完整的汉语中心子节点过滤表,并基于中心子节点过滤表将CTB从短语结构转换为依存结构.
中心子节点在短语结构和依存结构中起着非常重要的作用.X-bar理论[10]和管辖约束(GB)理论[11]等语言理论认为,每个短语结构中都有一个中心子节点决定着这个短语的主要性质,短语中的其他节点都是该中心子节点的修饰子节点.而在依存结构中非中心子节点以某种依存关系依存于中心子节点.
依存结构树库H IT-IR-CDT标注体系如图1所示,其标注了句子中词语之间的依存关系及依存类型.短语结构树库CTB中句子的标注如图2所示,其仅标出每个句子的短语层次结构及短语类型,没有标明每个短语的中心子节点.确定短语中心子节点最常用的方法是使用中心子节点过滤表.
图1 H IT-IR-CDT依存结构树示例Fig.1 A dependency structure in the H IT Chinese Dependency Treebank
图2 CTB短语结构树示例Fig.2 A phrase structure in the Penn Chinese Treebank
表1为部分中心子节点过滤表,其每一行都由〈短语类型,搜索方向,优先级〉三项组成.其中,短语类型是非终端节点的短语符号;搜索方向为在非终端节点内部搜索中心子节点的方向,取值为L时从短语左侧开始向右搜索,取值为R时从短语右侧开始向左搜索;优先级为决定短语内部各类标注子节点作为中心节点的优先次序.例如,根据过滤表中的一个条目〈IP:R,IP/VP/CP/VCD/VRD/VV/VA〉,可以这样确定IP短语的中心子节点:从右向左观察IP的每一个子节点,最先找到的标注为IP的子节点即为IP的中心子节点;如果没有找到IP节点,重新从右向左观察IP的每一个子节点,最先找到的符号为VP的子节点即为IP的中心子节点;以此类推,如果这个IP内部没有任何标注为 IP 、VP 、CP 、VCD、VRD、VV 、VA 的子节点,就默认最右侧的子节点为中心子节点.
表1 中心子节点过滤表(示例)Tab.1 Head percolation table(examples)
依据中文依存句法制定中心子节点过滤表.本文采用了简单的依存关系描述体系,其中包含10种依存关系类型,如表2所示.非中心子节点以表中所示依存关系类型依存于中心子节点.
表2举例说明了各类依存关系的定义.其中“举例”一列中,标注为[1]的为例句1“城乡游/首迎式/在/北京/举行/,市/领导/及/一千多/名/游客/出席/欢庆/活动。”中包含的依存关系.标注为[2]的为例句2“他/背起/沉重/的/行李/,匆匆/地/走出/家门。”中包含的依存关系.句中分词依照CTB的标注体系.箭头“※”左侧的词依存于其右侧的词.
列出CTB中每种短语包含的全部节点类型,依据上述依存关系的定义,对各类节点作为中心子节点的优先级进行排序,制定中心子节点过滤表,如表1所示.
表2 依存关系类型Tab.2 The types of dependency relations
制定了中心子节点过滤表,短语结构树到依存结构树的转换就相当直接.转换采用递归算法,将短语结构树Tree root转换为依存结构树Tree deprel的转换算法Convert(Tree root,Tree deprel)为
(1)若根节点root为叶子节点,返回根节点root并完成转换;
(2)查找根节点root的中心子节点;
(3)转换以中心子节点为根的子树,并返回该子树的中心子节点headChild;
(4)对于其他非中心子节点
①转换以非中心子节点为根的子树,并返回该子树的中心子节点non-headChild;
②将non-headChild依存于headChild,并填入依存结构树Tree deprel.
图3显示了图2所示例句从短语结构树到依存结构树的转换.首先转换以IP为根节点的短语结构树Tree IP.IP不是叶子节点,查找IP短语的中心子节点.参照表1中心子节点过滤表,从右向左观察`IP'的每一个子节点,最先找到的标注为`IP'的子节点即为`IP'的中心子节点.因为没有找到`IP'子节点,重新从右向左查找标注为`VP'的子节点为`IP'的中心子节点(图中实线所示).然后转换中心子树Tree VP,`VP'的中心子节点`VV(成为)'为叶子节点,将其返回.继续转换`VP'的非中心子树Tree NP…依次确定句子每个短语的中心子节点,将短语的非中心子节点依存到其中心子节点上.如短语`NP(NP(NR(中国))NP(NN(外贸)))'的中心子节点为`NN(外贸)',则节点`NN(外贸)'决定了短语`NP(NP(NR(中国))NP(NN(外贸)))'的主要性质,非中心子节点`NR(中国)'依存于中心子节点`NN(外贸)'.其上一层的短语`NP(NP(NR(中国))NP(NN(外贸)))ADJP(JJ(重要))NP(NN(增长点))'的中心子节点为最右侧的短语`NP(NN(增长点))',非中心子节点`JJ(重要)'依存于中心子节点`NN(增长点)';同理,另外一个非中心子节点`NP(NR(中国)NN(外贸))'的中心子节点`NN(外贸)'也依存于`NN(增长点)'.最后得到整句的依存关系:“NN(外商)※NN(企业);NN(投资)※NN(企业);NR(中国)※NN(外贸);NN(外贸)※NN(增长点);JJ(重要)※NN(增长点);NN(增长点)※VP(成为);NN(企业)※VV(成为)”.节点`VV(成为)'为整句的中心子节点.
图3 短语结构树到依存结构树的转换例句Fig.3 An examp le o f converting phrase structure tree to dependency structure tree
本文对宾州中文树库(CTB5.0)进行了转换.CTB5.0是在美国国防部资助下,由语言数据联盟(Linguistic Data Consortium,LDC)发布的一个语料库.其由890个文件组成,包含18782个句子,507222个词,824983个汉字.句子平均长度是27个词.句子如图2所示,标注了分词、词性和短语结构.文章大部分来自《新华日报》,还有少部分来自香港地区政府和台湾地区媒体.文章覆盖政治、经济和文化等领域.本文将CTB中的短语按类型进行统计,统计结果见表3.因为短语WHNP和WHPP没有子节点,所以不包含在表1中.
表3 CTB短语类型及数量统计Tab.3 Details of the phrases in the Penn Chinese Treebank
为检验转换效果,随机地从CTB5.0中取出200句语料进行测试,句子的平均句长同样是27个词.对测试语料中出现的短语的转换结果进行了人工校验,转换正确率如表4所示.部分短语类型在测试语料中没有出现.
由表4可见,大部分短语的转换正确率接近或达到了100%,测试语料中所有短语的转换正确率达到99.50%.CP、IP、NP节点转换依然存在错误,其他节点包括大量的VP节点,正确率均为100%.
表4 转换正确率Tab.4 Conversion p recision
通过对转换错误的短语结构进行观察发现,大部分是处于外层的具有复杂结构的短语.如图4所示IP短语包含两个IP子节点.依据中心子节点过滤表,右侧`IP'子节点为外层IP短语的中心子节点,左侧`IP'子节点的中心节点`VV(达)'依存于右侧`IP'子节点的中心节点`M(美元)'.但是这种依存关系违背了依存文法.造成这种错误的原因是右侧`IP'短语没有动词,所以`M(美元)'成为其中心节点,使得`VV(达)'错误地依存于`M(美元)'.如果右侧`IP'子节点添加了动词,改为“投资额/约/达/一千万/美元”,则其中的`VV(达)'将成为其中心节点.最终,左侧`IP'的中心节点`VV(达)'依存于右侧`IP'的中心节点`VV(达)',这种依存关系符合依存文法.
图4 转换错误例句Fig.4 An exam pleof the conversion error
Xia基于中心子节点过滤表将PTB和CTB从短语结构树转换为依存结构树[8].其指出除了具有同位语的名词短语(NP)外,PTB中其他短语都取得了较好的转换效果,但是没有给出具体的转换正确率.Xia没有提及CTB的转换效果.
本文介绍了将CTB从短语结构转换为依存结构的方法.基于现代中文依存关系文法制定了完整的中心子节点过滤表,依据该表可以确定CTB中所有短语的中心子节点,并将短语结构的CTB转换为依存结构.抽样测试结果表明转换正确率达到了99.50%.本文的工作,使得短语结构的CTB可以用于中文依存关系解析的研究,对于研究句法解析具有一定的参考价值.下一步,将利用转换得到的依存结构树库,进行中文依存关系解析的研究.
[1]周 强,赵颖泽.汉语功能块自动分析[J].中文信息学报,2007,21(5):18-24
[2]CHENG Yu-chang,ASAHARA M,MATSUMOTO Y.Machine learning-based dependency analyzer for Chinese[C]//M INGHUI D,HA IZHOU L,M IN Z,eds.Proceedings of the International Conferenceon Chinese Computing 2005.Singapore:COLIPS Pub lication,2005:66-73
[3]周惠巍,杨 洋,黄德根.基于远距离依存关系的中文依存关系解析[J].计算机工程,2007,33(24):212-214
[4]XUE Nian-w en,XIA Fei,CH IOU Fu-dong,etal.The Penn Chinese Treebank:phrase structure annotation of a large corpus[J].Natura l Language Engineering,2005,11(2):207-238
[5]曹海龙,赵铁军,李 生.基于中心驱动模型的宾州中文树库(CTB)句法分析[J].高技术通讯,2007,17(1):15-20
[6]CHENG Yu-chang,ASAHARA M,MATSUMOTO Y.Chinese determ inistic dependency analyzer:examining effects of global features and root node finder[C]//Proceedings of the Fourth SIGHAN Workshop on Chinese Language Processing.Korea:SIGHAN,2005:17-24
[7]LIN De-kang.A dependency-based method for evaluating broad-coverage parsers [J].Natural Language Engineering,1998,4(2):97-114
[8]XIA Fei.Automatic grammar generation from two different perspectives[D].Philadelphia:University of Pennsylvania,1999
[9]党政法,周 强.短语树到依存树的自动转换研究[J].中文信息学报,2005,19(3):21-27
[10]CHOMSKY N.Remarks on nominalization[C]//JACOBS R,ROSENBAUM P,eds.Reading in English Transformational Grammar.Waltham(MA):Ginn and Co.,1970:184-221
[11]CHOMSKY N.Lectures on Governmentand Binding[M].Dord recht:Foris Publications,1981