专利名称:一种全自动汉语分词系统的制作方法
技术领域:
本发明涉及一种全自动汉语分词系统,它用于汉英机器翻译系统中,也可用于将汉语翻译成其它语种(如德语、日语、俄语等)的翻译系统中。
汉语不同于英语等其它语言,形式上无明显的词分隔符(而英语等语种的单词之间则有空格符号)。词是翻译理解的基础,因此,一个高精度、高速度的汉语自动分词系统,是进行全自动汉语翻译的第一步,也是一个关键。
本发明的目的是提供一种高效、实用灵活的全自动汉语分词系统,它能较好地服务于机译系统,尤其是用于汉英机译系统。
为了达到上述发明目的,本发明的全自动汉语分词系统包括(1)汉语源语输入装置;(2)根据汉语句末的标点符号自动断句装置,该装置能自动地识别句中的小数点、英文缩写、省略号等,不将它们误识别为标点符号;(3)将句子字符转变成图结点的结点结构生成装置;(4)确定词的边求解装置,该装置在边的求解的同时,进行歧义判断,并做相应歧义标识;(5)按规则推理消除歧义的推理消歧装置;(6)遍历结果路径得到一定结构的结果输出装置。
在上述推理消歧装置中,设有多层入口特性规则库,共性规则库,左确定规则库,右确定规则库,虚词规则库和叠词规则库。
下面解释一下上面出现的几个术语。
图结点一个汉字字符,数字串,西文串,或特殊字串即为一个图结点,或称结点。
边一个词由若干相邻结点构成,其中首末结点即构成一条边。
歧义有多种切分情况时即产生歧义。它主要包括交集歧义和组合歧义两大类。
交集歧义形如字串AXB,其中AX构成一个词,同时XB也构成一个词,这类歧义现象即为交集歧义。其中A、X、B的长度可以大于等于一个字长。如"有时间","不同情况","大脑袋"等。
组合歧义形如AB词串,其中A,B分别独立成词。如"个人"、"把手"、"阵风"等。
将汉语文本文件输入上述全自动分词系统后,就能高效、灵活、准确地将句子切分成词序列,为准确地翻译打下了基础。
下面结合附图进一步说明本发明的全自动汉语分词系统。
图1是本发明的全自动汉语分词系统的示意图;图2是本发明的全自动汉语分词系统中分词系统规则库的结构示意图。
如图1所示,汉语源语输入装置可以是输入键盘,也可以是其它公知的输入装置,通过它输入文件后,启动自动断句装置开始工作。自动断句装置实际上是一个自动断句模块(ReadASent)来实现的。其原理是依赖汉语的句末标点符号(句号、感叹号、问号或引号等),同时,还要参考它前后的情况,因为对于数字中的小数点、英文缩写、省略号等,都不能简单地确定为一个标点符号。
结点结构生成装置将句子字符转变成图结点的结构。结点按其特征分为普通汉字、数字、时间、专有名词、西文和标点符号。这样就将汉语字符串输入构造成结点结构集合,形成待切的结点序列a1a2a3...an。
边求解装置采用正向最大匹配算法,从左到右进行词典匹配。根据汉字的成词统计规律,绝大多数是单字词,即汉字本身就是词,故此,为避免不必要的词典查询和路径选择,系统采用最大匹配。为实现高速度的要求,系统不仅建立巧妙的词典索引结构,同时建立了最大词长信息域,以识别以某字开头的词在词典里的最大长度。词典匹配的过程是结合词典最大词长信息和在句中的最大可能边长,确定一个最优最大边长;以该边的结点串出发,寻找词典里是否有与之相同的词,有则求得一边;依次递减一个字长,循环上述求解边的过程,直至边长为零。这样就求得了句中以该结点开始的所有的边。然后从已求得边的末结点出发,同样求得该结点所发出的边。
对一个点的所有边的求解过程如下<pre listing-type="program-listing"><![CDATA[MaxHeadLen=FirstWordMaxlen(code)maxlen=Minimum(MaxHeadLen,当前句中最大可能边长)while(maxlen≥0){ FindEdge(Cur Node,maxlen) maxlen-l }]]></pre>在边求解的同时,还进行歧义判断,并做出相应的歧义标识。在句中一个结点包括在两个或两个以上的边中时,也就是说,有两个或两个以上的切分情况时,则出现了歧义。正如上面所解释的那样,歧义主要分为两大类交集歧义和组合歧义。
交集歧义的判断是根据其特征,对有向边的结点作出度的计算,若出度为0,则无交集歧义,否则,对结交点作"前交"、"后交"的标记。
这里,有向边即为一个词。
结点的出度即为以该结点为始点的边的数目,亦即以该结点打头的词的个数。
组合歧义判断是根据组合歧义词表。该表收集了本词典数据下几乎所有的组合歧义词,并按有效结构进行组织和查询。
下面介绍几个术语当前边推理模块正在处理的边。
前驱边与当前边相邻的左边所有边。
推理消歧装置按照一定的规则进行推理,消除歧义。其中含有歧义规则库和叠词规则装置。它把当前边分别和它所有前驱边进行相应的规则库匹配。规则库按其特点设多层入口特性规则库、共性规则库、左确定规则库、右确定规则库、虚词处理规则库和叠词规则库。
下面介绍几个规则库特性规则库针对某些词特定环境的特定切分。这些规则可以具体到词条信息,而不是词类,或属性等共性特征。
如NUL(很)NUL(多云)->WRCUT(A,B)这条规则的作用是将"很多云"切成"很多云",这就是由于"很多云"这种不合理的用法而决定的。
共性规则库处理某一词类,或具有某些属性的一类词的歧义切分规则,这是主要的切分规则。并且,随着词典知识体系的不断完善,共性规则的处理能力也会不断增强。
如一条规则AP([size;color;shape],1)NP([physics;human])->CECUT(A)这条规则即说明将具有语义为大小、颜色、形状的单字形容词,若后面跟一个物体,或指人的名词时,形容词独自成词的程度较大,故确定形容词这条边。例如"这小孩子长着一个圆脸盘,大脑袋"切成"这小孩子长着一个圆脸盘,大脑袋"。当然,出现满足属性条件而不应该如此切分的情况时,规则里有专门的符号表示否定,或在COND条件函数中加以条件否定。
虚词规则库结合系统的翻译过程,将"着、了、过"等作时态虚词使用的词给虚化,转换成相应的时态特征标记。从而,简洁了句子的主干,一定程度上提高了后面翻译的精度与速度。
叠词规则库汉语中的叠词情况有,AXA型"看一看",AXB型"结过婚",AXAB型"喜不喜欢",AABB型"高高兴兴"等。这些词的形式,若作词条加入词典,既无穷尽也没必要;若作专门模块处理也有些呆板,不易处理特殊情况。本系统用规则加以处理,将其简化成对应的入口词条和特征标志,从而大大地解决了形态上不可识别词问题,也具有很大的灵活性。
分词规则设计利用词典知识体系,属性集测试包括各种词法语法和语义信息,利用上下文语境信息测试函数来进行范围限制。
分词规则的表达形式PRE_ATTRCUR_ATTR->COND()ACT_NAME前驱边属性集 当前边属性集上下文条件测试 动作函数名属性集包括多层次词法,语法和语义的一体化属性集合,匹配规则首先要对属性集进行匹配运算。
COND函数是实现上下文相关的关键。它可对当前边的左边和右边一定范围的边进行属性判断,根据条件满足情况来决定是否触发动作函数。
动作函数是分词模块定义的功能函数,它主要包括确定一边,重新求解边,合并边和分解一边的操作。
这里,模块是指完成一定功能的程序段。
经过上述推理消歧装置,并经该装置处理后,汉语句子就被正确地切分了。最后,结果输出装置遍历结果路径,得到一定结构的结果,经接口输出。
当输入汉语"门上的把手很冷。"时,则经过本发明的上述全自动分词系统后则被切分成"门上的把手很凉。";当输入"他把手划破了。"时,则输出结果为"他把手划破。"当输入"你按快门开启按钮时,不能猛按照相机。"时,则输出结果为"你按快门开启按钮时,不能猛按照相机。"。
当输入一段文章时,也能正确地切分。
尽管上面对本发明作了详细的说明,但很明显,在不超出本发明的范围的前提下,可以对上述全自动分词系统作出许多改型和改进。
权利要求
1.一种全自动汉语分词系统,其特征在于包括(1)汉语源语输入装置;(2)根据汉语句末的标点符号自动断句的装置,该装置能自动地识别句中的小数点、英文缩写,省略号等,不将它们误识别为标点符号;(3)将句子字符转变成图结点的结点结构生成装置;(4)确定词长的边求解装置,该装置在边求解的同时,进行歧义判断,并做相应的歧义标识;(5)按规则推理消除歧义的推理消歧装置;(6)遍历结果路径得到一定结构的结果输出装置。
2.根据权利要求1所述的全自动汉语分词系统,其特征在于,所述的推理消歧装置中设有多层入口特性规则库,共性规则库,左确定规则库,右确定规则库,虚词规则库和叠词规则库。
全文摘要
一种全自动汉语分词系统,包括(1)汉语源语输入装置,(2)自动断句装置,(3)将句子字符转变成图结点的结点结构生成装置,(4)确定词长的边求解装置,在边求解的同时,进行歧义判断,并做相应的歧义标识,(5)推理消歧装置,(6)结果输出装置。该系统能高效、灵活、准确地将句子切分成词序列,为准确地翻译打下良好的基础。
文档编号G06F17/27GK1152749SQ9610083
公开日1997年6月25日 申请日期1996年1月30日 优先权日1996年1月30日
发明者陈肇雄, 黄河燕 申请人:陈肇雄