词的颗粒度和层次

人工分词产生不一致的原因主要在于人们对词的颗粒度的认识问题。
在汉语里,词是表达意思最基本的单位,再小意思就变了。这就如同在化学里分子是保持化学性质的最小单位一样。在往下分到原子,化学的特性就变了。在这一点上所有的语言学家都会认同。因此,对于“贾里尼克”这个词,所有的语言学家都会认为它不可拆分,如果拆成四个字,和原来的人名就没有联系了。但是对于“清华大学”,大家的看法就不同了,有些人人为它是一个整体,表示北京西郊一所特定的大学,也有人认为它是一个词组,或者说是一个名词短语,“清华”是修饰“大学”的定语,因此需要拆开,不拆开就无法体现它里面的修饰关系。这就涉及到对词的颗粒度的理解了。
在这里不去强调谁的观点对,而是要指出在不同的应用中,会有一种颗粒度比另一种更好的情况。比如在机器翻译中,一般来讲,颗粒度大翻译效果好。比如“联想公司”作为一个整体,很容易找到它对应的英语翻译Lenvov。如果分词时将它们分开,就很有可能翻译失败,因为在汉语中,“联想”一词首先是“根据相关联的场景想象”的意思。但是在另外一些应用中,比如网页搜索中,小的颗粒度比大的颗粒度要好。比如“清华大学”这四个字作为一个词,在对网页分词后,它是一个整体了,当用户查询“清华”时,是找不到清华大学的,这绝对是有问题的。
针对不同的应用,我们可以构造不同的分词器,但是这样做不仅非常浪费,而且也没必要。更好的做法是让一个分词器同时支持不同层次的词的切分。也就是说。上面的“清华大学”既可以被看作一个整体,也可以被切分开,然后由不同的应用自行决定切分的颗粒度。这在原理和实现上并不是很麻烦,简单介绍下。
首先需要一个基本词表和一个复合词表。基本词表包括向“清华”、“大学”这样无法再分的词。复合词表包括复合词以及它们由哪些基本词构成,比如“清华大学:清华-大学”、“搜索引擎:搜索-引擎”。
然后根据基本词表和语言模型L1对句子进行分词,就得到了小颗粒度的分词结果。顺便讲一句,基本词比较稳定,分词方法又是解决了的,因此小颗粒度的分词除了偶尔增加点新词外,不需要什么额外的研究或工作。
最后在此基础上,再用复合词表和语言模型L2进行第二次分词。
介绍了分词的概念后,我们可以更进一步讨论分词器准确性的问题了。分词的不一致性可以分为错误和颗粒度不一致两种,错误又分为两类,一类是越界型错误,比如把“北京大学生”分成“北京大学-生”。另一种是覆盖性错误,比如把“贾里尼克”拆成了四个字。这些明显是错误的,是改经分词器时要尽可能消除的。接下来是颗粒度的不一致性,人工分词的不一致性大多属于此类。这一类不一致性在衡量分词器好坏时,可以不作为错误,以免不同人的看法的不同左右了对分词器的度量。对于某些应用,需要尽可能地找到各种复合词,而不是将其切分。总之,要继续做数据挖掘,不断完善复合词的词典,这也是近年来中文分词工作的重点。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值