- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汉语分析技术入门 - 中国语言文字网.doc
第一届学生计算语言学研讨会(SWCL2002)专题讲座
汉语词法分析和句法分析技术综述
刘群
北京大学计算语言学研究所
中国科学院计算技术研究所
liuqun@
引言
本文主要介绍一些常用的汉语分析技术。
所谓语言的分析,就是将一个句子分解成一些小的组成部分(词、短语等等)并了解这些部分之间的关系,从而帮助我们把握这个句子的意义。
语言的研究,一般而言存在四个层面:词法层、句法层、语义层和语用层。
同样,语言的分析也存在四个层面:词法分析、句法分析、语义分析和语用分析。
本文主要介绍汉语的词法分析和句法分析技术。这两种技术是汉语分析技术的基础,而且已经发展得比较成熟。文中也会少量提及语义层面和语用层面的一些问题,但不会做深入的探讨。
汉语是一种孤立语(又称分析语),与作为曲折语和黏着语的其他一些语言相比,汉语在语法上有一些特点,仅仅从形式上看,这种特点主要体现在以下几个方面:
汉语的基本构成单位是汉字而不是字母。常用汉字就有3000多个(GB2312一级汉字),全部汉字达数万之多(UNICODE编码收录汉字20000多);
汉语的词与词之间没有空格分开,也可以说,从形式上看,汉语中没有“词”这个单位;
汉语词没有形态上的变化(或者说形态变化非常弱),同一个词在句子中充当不同语法功能时,形式是完全相同的;
汉语句子没有形式上唯一的谓语中心词。
这些特点对汉语的分析造成了一定的影响,使得汉语分析呈现出和英语(以及其他一些语言)不同的特点。
不过也不能过分夸大这种不同。我认为,那种以为汉语完全不同于英语,因此有必要重新建立一套分析体系的想法是没有道理的。从现有的研究看,汉语分析所使用的技术和其他语言分析所使用的技术并没有本质的不同,只是应用方式上有所区别(主要体现在词法分析方面)。而且从应用的效果看,没有证据表明,这些技术用来分析汉语比用来分析英语效果更差。
本文结合我们自己的一些工作,比较全面的介绍一下汉语词法分析和句法分析中所使用的各种技术。
汉语词法分析
前面说过,汉语在形式上,并没有“词”这一个单位,也就是说,汉语的语素、词、短语、甚至句子之间(词也可以直接成句,称为独词句),都没有明确的界限。
这是不是说,汉语就没有必要做词法分析,可以直接做句法分析呢?
实际并不是这样。因为如果这样做的话,会导致句法分析的搜索空间急剧膨胀,以致无法承受。实际上,根据我们的统计,未定义词在汉语中真实文本中所占的比例并不大,可见绝大部分词都是可以在词典中找到的,如果这些词都要从头开始分析,势必给句法分析带来太多的负担。
不过汉语的词法分析与英语(或其他屈折型语言)的词法分析有很大不同。就英语来说,采用确定的有限状态自动机就已经能基本解决问题,而对于汉语词法分析来说,需要更为复杂的计算工具。就问题的复杂性而言,我认为汉语的词法分析大致相当于英语的词法分析和基本短语分析之和。
汉语词法分析的任务
汉语词法分析包括一下几个任务:
查词典
处理重叠词、离合词、前后缀
未定义词识别
时间词、数词处理
中国人名识别
中国地名识别
译名识别
其他专名识别
切分排歧
词性标注
数据结构:词图(Word Graph)
对于一个汉语句子,如果把两个汉字之间的间隔作为结点,把一个汉语词作为连接两个结点的有向边,那么我们就可以得到一个无环有向图:
中国
国人
人民
国
人
民
万
岁
中
S
E
万岁
中国人
根据这个数据结构,我们可以把词法分析中的几种操作转化为:
给词图上添加边(查词典,处理重叠词、离合词和前后缀);
寻找一条起点S到终点E的最优路径(切分排歧);
给路径上的边加上标记(词性标注);
词典查询与重叠词、离合词和前后缀的处理
词典查询主要考虑分词词典的数据结构与查询算法的时空消耗问题。
在词典规模不大的时候,各种词典查询算法对汉语词法分析的效率整体影响并不大。不过当词典规模很大时(几十万到上百万数量级),词典查询的时空开销会变得很严重,需要详细设计一个好的词典查询算法。
(孙茂松,2000)一文比较详细的总结了汉语词法分析中使用的几种词典查询算法。(AhoCorasick,1990)提出的算法(简称AC算法)实现了一种自动机,可以在线性的时间里用一组关键词去匹配一个输入字符串,(NgLua, 2002)一文对AC算法中提出的自动机(实际上就是一种词典索引的组织方式)进行了改进,可以快速实现输出汉语句子的多种切分候选结果。对词典查询算法感兴趣的同学可以去查阅这几篇文章,这里不再做详细的介绍。
汉语重叠词的重叠方式有很强的规律,处理起来并不困难。例如汉语的双字形容词的重叠现象主要有三种:AABB、ABAB、A里AB。遇到这种形式的词,只要还原成词语原形AB并查词典即可。
汉语词的前后缀不多,处理也不困难,通过简单的规则,即可这里不做介绍。
离合词的处理
文档评论(0)