基于互信息改进算法的新词发现对中文分词系统改进
2016-10-12杜丽萍李晓戈于根刘春丽刘睿
杜丽萍 李晓戈 于根 刘春丽 刘睿
基于互信息改进算法的新词发现对中文分词系统改进
杜丽萍 李晓戈†于根 刘春丽 刘睿
西安邮电大学, 西安710121; †通信作者, E-mail: lixg@xupt.edu.cn
提出一种非监督的新词识别方法。该方法利用互信息(PMI)的改进算法——PMI算法与少量基本规则相结合, 从大规模语料中自动识别2~元网络新词(为发现的新词最大长度, 可以根据需要指定)。基于257 MB的百度贴吧语料实验, 当PMI方法的参数为10时, 结果精度达到97.39%, 比PMI方法提高28.79%, 实验结果表明, 该新词发现方法能够有效地从大规模网络语料中发现新词。将新词发现结果编纂成用户词典, 加载到汉语词法分析系统ICTCLAS中, 基于10KB的百度贴吧语料实验, 比加载用户词典前的分词结果准确率、召回率和值分别提高7.93%, 3.73%和5.91%。实验表明, 通过进行新词发现能有效改善分词系统对网络文本的处理效果。
新词识别; 未登录词; 互信息; PMI改进算法; 中文分词
随着信息时代的发展与科学技术的进步, 大量网络新词不断涌现, 使得分词结果中存在大量的“散串”, 严重影响分词系统处理网络文本的效果, 新词识别已经成为提高分词效果的瓶颈[1]。
对于网络上出现的新词汇, 例如近日在网上热传的“APEC蓝”、“Duang”、“一带一路”、“单肾贵族”和“花样作死”等词语, 一般的识别方法是基于大规模语料库, 由机器根据某个统计量自动抽取出候选新词, 再由人工筛选出正确的新词[2]。Pecina等[3]采用55种不同的统计量进行2元词汇识别实验, 结果表明, PMI算法是最好的衡量词汇相关度的算法之一。通常情况下, PMI方法能够很好地反映字串之间的结合强度, 但缺点是过高地估计低频且总是相邻出现的字串间的结合强度[3–4]。例如, “啰”和“嗦”、“蝙”和“蝠”等在语料库中低频且总是相邻出现, 这些字串的PMI值非常高, 包含这些低频字串的垃圾串的PMI值也非常高, 例如“很啰”和“嗦”、“的蝙”和“蝠”等。针对此问题, 研究者将PMI方法与其他方法相结合进行新词发现研究。文献[5–7]均采用PMI方法与log-likelyhood方法相结合进行新词识别。梁颖红等[8]利用PMI方法衡量字串间的结合强度, 结合NC-value方法融入词语上下文信息来提高3个字以上长新词的抽取精度。何婷婷等[9]采用互信息方法F-MI抽取结构简单的质词。孙继鹏等[10]提出一种语言文法信息与互信息相结合的新词识别方法。Pazienza等[11]提出使用PMI2和PMI3的方法改进PMI方法来识别新词。Bouma[12]通过向PMI方法中引进个联合概率因子, 改善PMI方法的缺点, 这种改进的PMI方法称为PMI方法。杜丽萍等[13]通过抽象语料库中低频且总是相邻出现字串的数学特征, 从理论上证明, 当向PMI方法中引进3个及以上的联合概率因子时, PMI方法能够克服PMI方法的缺点。
目前, 常用的分词方法主要有3种: 基于词表的分词方法、基于统计模型的分词方法和基于统计方法与规则方法相结合的分词方法[2]。3种方法均有优点, 但也存在不足: 基于词表的分词方法效率高, 但对新词的识别能力不足[14]; 基于规则的方法很难涵盖所有的语言现象[2], 尤其对网络语料的处理能力非常有限; 基于统计模型的分词方法重点在于解决自动分词的歧义分词问题, 但需要人工标注训练语料, 且受训练语料领域的限制。ICTCLAS(In- stitute of Computing Technology, Chinese Lexical Analysis System)是基于隐马尔科夫统计模型(HMM, Hidden MarKov Model)进行分词的广受好评的中文分词系统, ICTCLAS2002版在国内973评测中综合第一名, 经过15年打造, ICTCLAS2015版又增加了新词自动识别功能。
本文在杜丽萍等[13]的定理1和定理2基础上, 采用非监督的基于PMI与少量的基本规则相结合的方法, 从大规模网络语料中自动识别新词, 并对ICTCLAS2002版分词系统进行改进, 对比改进后的ICTCLAS2002分词系统与ICTCLAS2002和ICTCLAS2015版的分词效果。
1 分词系统改进
1.1 改进分词系统框架
分词系统改进主要分为两个阶段: 1)基于大规模语料库进行新词发现; 2)用新词发现结果编纂用户词典, 加载到分词系统中。图1为改进的分词系统的流程。
1.2 基于PMI改进方法的新词发现
定义1 PMI算法[12]定义如下:
其中,()和()分别表示字串和的概率,(,)表示字串和的联合概率, PMI(,)表示字串和的相关度, 也称PMI值。特殊地, 当=1时, PMI方法即PMI方法。
新词发现过程主要分为4个阶段: 1)确定2元待扩展种子; 2)将2元待扩展种子扩展至2~元; 3)过滤候选新词; 4)人工判定。算法的步骤如下。
步骤1 从4元字串中确定出2元的待扩展种子。对于每一个4元字串, 计算中间两元字串和前两元字串的PMI值之和的平均值以及中间两元字串和后两元字串的PMI值之和的平均值mean2。计算公式如下:
1)如果PMI(w-1,w, …,w+t-1)>PMI(w, …,w+t-1), 则认为把字串扩展成的概率大于扩展成的概率, 故向前扩展。计算+PMI(w, …,w,w+1, ...,w+t-1)), 其中或。如果满足
,
步骤6 人工判定。
2 实验及结果分析
2.1 实验数据
1)257 MB(约1000万字)百度贴吧语料, 用于网络新词发现。
2)停用词典: 包含702个停用词(选自哈尔滨工业大学停用词表), 用于过滤候选新词结果中的垃圾串。
3)ICTCLAS核心词典: 共收集79836个词语, 是目前比较规范的词典之一, 用于过滤候选新词结果中的核心词汇, 以便得到新词。
4)10 KB百度贴吧语料, 用于测试分词系统改进的效果。
2.2 新词实验及结果
黄昌宁等[15]指出, 99%以上的词长都在五字及五字以下,故本实验设定抽取的最大词长等于5。
由于难以统计257 MB百度贴吧语料中的全部新词, 所以只采用准确率作为衡量新词发现方法的评测标准。准确率计算公式为
在PMI方法的参数取1~10之间10个正整数值时, 分别进行实验, 图2描述随着值变化的准确率变化趋势。
表1列举PMI方法的参数取1~10之间10个正整数值时, 新词结果的前20条。
表1 前20条实验结果
2.3 改进分词系统实验及结果
实验设计如下。实验一: 基于ICTCLAS2002版分词系统进行实验; 实验二: 基于ICTCLAS2015版分词系统进行实验; 实验三: 加载用户词典到ICTCLAS2002版分词系统中进行实验。采用准确率、召回率和值3个指标来衡量分词系统的性能, 计算公式如下:
针对10 KB百度贴吧测试语料进行上述实验, 实验结果如表2所示, “切分出总词数”表示分词系统切分出的字串总数目, “识别新词数目”表示分词结果中包含的正确的新词数目。
表2 实验结果
表3列举10 KB百度贴吧语料中3个例句分别在实验一、实验二和实验三中的结果。
表3 实验结果举例
例1 让我这个菜鸟都有点情何以堪啊!
例2 这个镜头在变形金刚刚出来时候不是就被喷了么?
例3 小正太, 你好。
2.4 结果分析
从图2可以看出, 准确率随值增大而增大且逐渐趋于100%。时的准确率比时提高13.6%,=10时的准确率比=1时提高28.79%。因此, 当PMI方法的参数时, PMI方法能明显改善新词识别的效果。
由表1看出, 当PMI方法的参数时, 新词识别结果与和时差异较大。在和的结果中, 排名在前的字串中均包含低频的字或词, 例如垃圾串“晦涩难”、“非贪婪”、“徽太尉”、“吧头衔”中分别包含“晦涩”、“婪”、“徽”、“衔”等低频字串, 且这些字串的搭配词语固定。该现象反映出PMI方法和PMI2方法对低频共现字串敏感的缺点。在的结果中, 均没有出现低频共现字串, 说明时PMI方法克服了PMI方法的缺点, PMI方法能有效识别新词。
从表2可以看出, 相对ICTCLAS2002加载用户词典前, ICTCLAS2002加载用户词典后分词系统识别出的新词数目增加149个, 准确率、召回率和值也分别提高7.93%, 3.37%和5.91%。结果表明, 增加用户词典后, ICTCLAS2002分词系统处理网络语料的效果有明显改善。相对ICTCLAS2015分词系统, ICTCLAS2002加载用户词典后分词系统识别出的新词数目增加了124个, 准确率、召回率和值也分别提高6.7%, 3.1%和4.96%。
表3中, 针对例1, ICTCLAS 2002和ICTCLAS2015分词系统均把新词“菜鸟”切分为“菜/ 鸟”; ICTCLAS2002加载用户词典(词典中包含新词“菜鸟”)后, 分词系统把新词“菜鸟”切分为一个词。针对例2, ICTCLAS2002分词系统把新词“变形金刚”切分为“变形/ 金刚”; ICTCLAS2015分词系统分词把“变形金”切分为一个词, 把“变形金刚”中的“刚”和它后面的“刚”结合起来切分为“刚刚”; ICTCLAS2002加载用户词典(词典中包含新词“变形金刚”)后, 分词系统把新词“变形金刚”切分为一个词。针对例3, ICTCLAS2002分词系统把新词“小正太”切分为“小/ 正/ 太”; ICTCLAS2015和ICTCLAS2002加载用户词典(词典中包含新词“小正太”)后分词系统把新词“小正太”切分为一个词。从10 KB百度贴吧测试语料的分词结果来看, 主要有3种情况: 1) ICTCLAS2002和ICTCLAS2015分词系统在遇到新词时, 大多情况下均是将新词切分为多个“散串”, 如例1, ICTCLAS2002加载包含这些新词的用户词典之后, 这些新词均能被正确切分; 2) ICTCLAS2015分词系统自动识别出新词不正确, 导致句子中其他词的分词结果不正确, 如例2中把“变形金”当做一个词, 导致“变形金刚”后面的“刚”和“变形金刚”中的“刚”结合起来切分为“刚刚”; 3)在ICTCLAS2002把新词切分为多个“散串”时, ICTCLAS2015和ICTCLAS2002加载用户词典后的分词系统正确切分出新词, 如例3。结果表明, 通过加载用户词典改进分词系统是一种可靠有效的 方法。
3 结语
本文基于257 MB百度贴吧语料, 验证了PMI方法的参数取值大于等于3时, 能够克服PMI方法的缺点, 并通过调整新词发现算法中的参数来提高长度大于2元的新词识别率。最后, 验证了基于加载用户词典来改进分词系统是有效可行的方法。下一步工作是研究PMI方法的参数取值与语料库规模、语料特征等因素的关系, 找出一种自适应地确定参数值的方法, 提高新词识别效果, 进一步增强分词系统处理Web文本的能力。
[1]张海军, 史树敏, 朱朝勇, 等. 中文新词识别技术综述. 计算机科学, 2010, 37(3): 6–12
[2]宗成庆. 统计自然语言处理. 北京: 清华大学出版社, 2008: 103–146
[3]Pecina P, Schlesinger P. Combining association measures for collocation extraction // Proceeding Soft of the 21th International Conference on Compu-tational Linguisticsand 44th Annual Meeting of the Association for Computational Linguistics (COLING/ACL2006). Sydney, 2006: 651–658
[4]刘华. 一种快速获取领域新词语的新方法. 中文信息学报, 2006, 20(5): 17–23
[5]刘建舟, 何婷婷, 骆昌日. 基于语料库和网络的新词自动识别. 计算机应用, 2004, 24 (7): 132–134
[6]韩艳, 林煜熙, 姚建明. 基于统计信息的未登录词的扩展识别方法. 中文信息学报, 2009, 23(3): 24–30
[7]Patrick P, Lin D K. A statistical corpus-based term extractor // Stroulia E, Matwin S. lecture notes in artificial intelligence. London, 2001: 36–46
[8]梁颖红, 张文静, 周德福. 基于混合策略的高精度长术语自动抽取. 中文信息学报, 2009, 23(6): 26–30
[9]何婷婷, 张勇. 基于质子串分解的中文术语自动抽取. 计算机工程, 2006, 32(23): 188–190
[10]孙继鹏, 贾民, 刘增宝. 一种面向文本的概念抽取方法研究. 计算机应用与软件, 2009, 26(9): 28–30
[11]Pazienza M T, Pennnacchiotti M, Zanzotto F M. Terminology extraction: an analysis of linguistic and statistical approaches. Berlin: Springer-Verlag, 2005: 255–279
[12]Bouma G. Normalized (pointwise) mutual information in collocation extraction // Proc Boennial GSCL Conference 2009, Meaning: Processing Texts Automatically. Tubingen, 2009: 31–40
[13]杜丽萍, 李晓戈, 周元哲, 等. 互信息改进方法在术语抽取中的应用. 计算机应用, 2015, 35(4): 996–1000, 1005
[14]莫建文, 郑阳, 首照宇, 等. 改进的基于词典的中文分词方法. 计算机工程与设计, 2013, 34(5): 1802–1807
[15]黄昌宁, 赵海. 中文分词十年回顾. 中文信息学报, 2007, 21(3): 8–19
New Word Detection Based on an Improved PMI Algorithm for Enhancing Segmentation System
DU Liping, LI Xiaoge†, YU Gen, LIU Chunli, LIU Rui
School of Computer Science and Technology, Xi’an University of Posts and Telecommunications, Xi’an 710121; † Corresponding author, E-mail: lixg@xupt.edu.cn
This paper presents an unsupervised method to identify internet new words from the large scale web corpus, which combines with an improved Point-wise Mutual Information (PMI), PMIalgorithm, and some basic rules. This method can recognize internet new words with length from 2 to(is any number as needed). Experimented based on 257 MB Baidu Tieba corpus, the precision of proposed system achieves 97.39% when the parameter value of PMIalgorithm is equal to 10, and the precision increases 28.79%, compared to PMI method. The results show that proposed system is significant and efficient for detecting new word from the large scale web corpus. Compiling the results of new word discovery into user dictionary and then loading the user dictionary into ICTCLAS (Institute of Computing Technology, Chinese Lexical Analysis System), experimented with 10 KB Baidu Tieba corpus, the precision, the recall and-measure were promoted 7.93%, 3.73% and 5.91% respectively, compared with ICTCLAS. The result show that new word discovery could improve the performance of segmentation for web corpus significantly.
new word recognition; unknown word; PMI; improved PMI algorithm; Chinese word segmentation
10.13209/j.0479-8023.2016.024
TP391
2015-06-07;
2015-09-14; 网络出版日期: 2015-09-29
国家自然科学基金(61373116)、陕西省普通高等学校重点学科专项资金(112-1602)和西安邮电大学研究生创新基金(ZL2013-31)资助