汉语自动分词就是让计算机识别出汉语文本中的‘词’,在词与词之间自动加上空格或其他边界标记。
目录
一.汉语自动分词中的基本问题
汉语自动分词的主要困难来自如下三个方面:分词规范、歧义切分、未登录词的识别。
1.1分词规范问题
“词是什么”(词的抽象定义)及“什么是词”(词的具体界定),这两个基本问题迄今拿不出一个公认的、具有权威性的词表来。
主要困难出自两个方面:一方面是单字词与词素之间的划界,另一方面是词与短语(词组)的划界。
此外,对于汉语“词”的认识,普通说话人的语感与语言学家的标准也有较大的差异。
从计算的严格意义上说,自动分词是一个没有明确定义的问题 。
2.2歧义切分问题
歧义字段在汉语文本中普遍存在。
梁南元最早对歧义字段进行了比较系统的考察。他定义了以下两种基本的切分歧义类型。
1.交集型切分歧义
汉字串ABC称作交集型切分歧义,如果满足AB、BC同时为词(A、B、C分别为汉字串)。此时汉字串B称作交集串。
例如:大学生、结合成……
为了区分交集型歧义字段的复杂度,我们引入链长的概念。
链长: 一个交集型切分歧义所拥有的交集串的集合称为交集串链,它的个数称为链长。
例如,交集型切分歧义“结合成分子”、“结合”、“合成”、“成分”、“分子”均成词,交集串的集合为{“合”,“成”,“分”},因此,链长为3。类似地,“为人民工作”交集型歧义字段的链长为3,“中国产品质量”字段的链长为4,“部分居民生活水平”字段的链长为6。
2.组合型切分歧义
汉字串AB称作多义组合型切分歧义,如果满足A、B、AB同时为词。
例如,多义组合型切分歧义:“起身”
在如下两个例子中,“起身”分别有两种不同的切分:(a)他站│起 │身│来。(b)他明天│起身│去北京。
类似地,“将来”、“现在”、“才能”、“学生会”等,都是组合型歧义字段。
汉语词语边界的歧义切分问题比较复杂,处理这类问题时往往需要进行复杂的上下文语义分析,甚至韵律分析,包括语气、重音、停顿等。
3.未登录词问题
未登录词又称为生词(unknown word),可以有两种解释:一是指已有的词表中没有收录的词;二是指已有的训练语料中未曾出现过的词。在第二种含义下,未登录词又称为集外词(out of vocabulary, OOV),即训练集以外的词。
通常情况下将OOV与未登录词看作一回事。
未登录词可以粗略划分为如下几种类型:
①新出现的普通词汇,如博客、房奴、给力等,尤其在网络用语中这种词汇层出不穷。
②专有名词(proper names)。专有名词在早期主要是指人名、地名和组织机构名这三类实体名称。1996年第六届信息理解会议对此进行了扩展,首次提出了命名实体(named entity)的概念,新增了时间和数字表达(日期、时刻、时段、数量值、百分比、序数、货币数量等),并且地名被进一步细化为城市名、州(省)名和国家名称等。
③专业名词和研究领域名称。特定领域的专业名词和新出现的研究领域名称也是造成生词的原因之一,如三聚氰胺、苏丹红、禽流感、堰塞湖等。
④其他专用名词,如新出现的产品名,电影、书籍等文艺作品的名称,等等。
根据黄昌宁等人(2003)的统计,在真实文本的切分中,未登录词总数的大约九成是专有名词(人名、地名、组织机构名),其余的为新词(包括专业术语)。当然,这个统计比例与语料所属的领域密切相关。
对于大规模真实文本来说,未登录词对于分词精度的影响远远超过了歧义切分。在汉语分词系统中对于未登录词的处理,尤其是对命名实体的处理,远比对切分歧义词的处理重要得多。
在20世纪八九十年代和21世纪初期,针对汉语分词问题,其一般做法是:首先依据从各类命名实体库中总结出来的统计知识(如人名姓氏用字及其频度)和人工归纳出来的某些命名实体结构规则,在输入句子中猜测可能成为命名实体的汉字串并给出其置信度,然后利用对该类命名实体具有标识意义的紧邻上下文信息(如称谓、组织机构标识词等),以及全局统计量和局部统计量,作进一步鉴定。
实践中,外国译名的识别效果最好,中国人名次之,中国地名再次之,组织机构名最差,而任务本身的难度实质上也正是循这个顺序由小到大。未登录词的识别面临很多困难。一方面,很多未登录词都是由普通词汇构成的,长度不定,也没有明显的边界标志词;另一方面,有些专有名词的首词和尾词可能与上下文中的其他词汇存在交集型歧义切分。另外,在汉语文本中夹杂着其他语言的字符或符号,也是常见的事情。
二.汉语分词方法
刘源等(1994)曾简要介绍了16种不同的分词方法,包括正向最大匹配法(forward maximum matching method, FMM)、逆向最大匹配法(backward maximum matching method, BMM)、双向扫描法、逐词遍历法等,这些方法基本上都是在20世纪80年代或者更早的时候提出来的。由于这些分词方法大多数都是基于词表进行的,因此,一般统称为基于词表的分词方法。
随着统计方法的迅速发展,人们又提出了若干基于统计模型(包括基于HMM和n元语法)的分词方法,以及规则方法与统计方法相结合的分词技术,使汉语分词问题得到了更加深入的研究。
接下来主要介绍几种性能较好的基于统计模型的分词方法,并对这些分词技术进行简要的比较。
1.N-最短路径方法
考虑到汉语自动分词中存在切分歧义消除和未登录词识别两个主要问题,因此,有专家将分词过程分成两个阶段:首先采用切分算法对句子词语进行初步切分,得到一个相对最好的粗分结果,然后,再进行歧义排除和未登录词识别。当然,粗切分结果的准确性与包容性(即必须涵盖正确结果)直接影响后续的歧义排除和未登录词识别模块的效果,并最终影响整个分词系统的正确率和召回率。
张华平等(2002)提出了旨在提高召回率并兼顾准确率的词语粗分模型——基于N-最短路径方法的汉语词语粗分模型。
这种方法的基本思想是:根据词典,找出字串中所有可能的词,构造词语切分有向无环图。每个词对应图中的一条有向边,并赋给相应的边长(权值)。然后针对该切分图,在起点到终点的所有路径中,求出长度值按严格升序排列(任何两个不同位置上
的值一定不等,下同)依次为第1、第2、…、第i、…、第N(N≥1)的路径集合作为相应的粗分结果集。如果两条或两条以上路径长度相等,那么,它们的长度并列第i,都要列入粗分结果集,而且不影响其他路的排列序号,最后的粗分结果集合大小大于或等于N。
考虑到切分有向无环图G中每条边边长(或权重)的影响,张华平等人又将该方法分为非统计粗分模型和统计粗分模型两种。所谓的非统计粗分模型即假定切分有向无环图G中所有词的权重都是对等的,即每个词对应的边长均设为1。
非统计粗分模型:
假设NSP为结点V0到Vn的前N个最短路径的集合,RS是最终的N-最短路径粗分结果集。那么,N-最短路径方法将词语粗分问题转化为如何求解有向无环图G的集合NSP。
求解有向无环图G的集合NSP可以采取贪心技术,张华平等使用的算法是基于求解单源最短路径问题的Dijkstra贪心算法的一种简单扩展。改进之处在于:每个结点处记录N个最短路径值,并记录相应路径上当前结点的前驱。如果同一长度对应多条路径,必须同时记录这些路径上当前结点的前驱,最后通过回溯即可求出NSP。
例子:
以句子“他说的确实在理”为例,给出了3-最短路径的求解过程。
图中,虚线是回溯出的是第一条