中文分词技术一席谈之典型分词方法漫谈
Langiner
目录
机械分词(FMM、BMM、全切分)
产生式分词(Naive Ngram分词、Class-based Ngram分词)
判别式分词(Maxent分词、CRF分词、感知机分词)
机械分词(查词典)
FMM/BMM:北京航天航空大学 梁南元教授提出
定义:
把句子从左向右(从右向左)扫描一遍,遇到字典里有的最长词就标识出来,遇到不认识的字串就分割成单字词。
例如:词典如下
小沈阳
沈阳
演出
分成
成都
都
均
为
是
9:1
句子实例:小沈阳演出收入分成均为9:1
FMM:小沈阳/演出/收入/分成/均/为/9:1 (正确)
BMM:小沈阳/演出/收入/分成/均/为/9:1 (正确)
句子实例:小沈阳演出收入分成都是9:1
BMM:小沈阳/演出/收入/分成/都/是/9:1 (正确)
FMM:小沈阳/演出/收入/分/成都/是/9:1 (错误)
词典
内塔尼亚胡
胡说
说
的
的确
确实
实在
在理
实例
句子实例:内塔尼亚胡说的确实在理
FMM:内塔尼亚胡/说/的确/实在/理(错误)
BMM:内塔尼亚/胡说/的/确实/在理(错误)
全切分:获得文本所有可能的切分结果,得到所有切分单元
句子实例:他说的确实在理
切分实例:
机械分词的优点
程序简单易行,开发周期短
没有任何复杂计算,分词速度快
机械分词的不足
不能处理歧义
不能识别新词
分词精度不能满足实际的需要(规范文本 80%,互联网文本在70%左右)
生成式统计分词
原理
首先建立学习样本的生成模型,再利用模型对预测结果进行间接推理
两个假设前提
马尔可夫假设
当前状态出现的概率仅同过去有限的历史状态有关,而与其他状态无关。具体到分词任务,就是文本中第i个词出现的概率仅仅依赖于它前面的i-1个词,而与其他词无关。
输出独立性假设
当前状态的输出仅仅取决于当前状态本身,而与其他状态无关。
Navie N-gram分词
学习过程(利用MLE估计)
P(wt|wt-1)=(Count(wt,wt-1))/Count(wt-1)
分词推导
P(W|O)=maxP(W|O)=maxP(w1w2...wn|o1,o2...om)=maxP(wt|wt-1,ot)
W:分词结果
O:待分词文本
分词过程
第一步:全切分
第二步:Viterbi动态规划,找到贯穿句子的路径并计算每条路径的概率
第三步:选择概率最大的路径 为切分结果
Ngram分词评价
能够处理大多数常用词带来的歧义问题
不能处理新词以及新词带来的歧义问题
改善Naive Ngram不足之道:Class-based Ngram
在统一的框架下进行分词与新词识别
将词分为若干类
词典词:教师(词典处理)
仿词:2000年(规则处理)
新词:刘德华(基于类的新词识别)
形态词:高高兴兴(规则处理)
不同类型的词用不同处理方法,最后利用Ngram框架寻找全局最优切分结果
给定字符串S=s1s2…sn , 找最优的类序列C=c1c2…cm 使得P(C|S) 最大
下载中文分词一席谈.ppt看完整的数学推导
优点
在训练语料规模足够大和覆盖领域足够多的情况下,可以获得较高的切分正确率(>=95%)
不足
需要很大的训练语料
新词识别能力弱
解码速度相对较慢
具体方法:可以Google/Baidu上搜索 中文分词一席谈.ppt下载ppt文档了解详情。
判别式分词
原理
在有限样本条件下建立对于预测结果的判别函数,直接对预测结果进行判别,建模无需任何假设。
由字构词的分词理念,将分词问题转化为判别式分类问题
典型算法
Maxent SVM CRF Perceptron
优势
能充分利用各种来源的知识
需要较少的训练语料
解码速度更快
新词识别性能好
由字构词
把分词问题转化为确定句中每个字在词中位置问题
每个字在词中可能的位置可以分为以下三种
词首B(日本 占领 了 东三省)
词中M(游泳 比赛 菲尔普斯 独占鳌头)
词尾E(中国队 抢占 了 风头)
特征选择
设H是预定义条件的集合,T是一组可选标注集,条件随机场的特征函数定义为f(h,t)=1(在h和t满足观察条前提下)
特征所涉及的语言学知识列表
字的上下文知识
形态词知识:处理重叠词、离合词、前后缀
仿词知识:2000年
成语/惯用语知识
普通词词典知识
歧义知识
新词知识/用户词典
新词的全局化知识
分词过程
优点
理论基础扎实
解码速度快
分词精度高
新词识别能力强
所需学习素材少
弱点
训练速度慢
需要高配置的机器训练
具体方法的描述可以搜索:中文分词一席谈.ppt来了解详情。