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