NLP进阶-详解Jieba分词工具


、Jieba分词工具

1. 三种模式

• 精确模式将句子最精确的分开适合文本分析

• 全模式句子中所有可以成词的词语都扫描出来速度快不能解决歧义

• 搜索引擎模式在精确模式基础上对长词再次切分提高召回

 

2.实现的算法

• 基于Trie树结构实现高效的词图扫描生成句子中汉字所有可能成词情况的有向无环图(DAG)

• 采用了动态规划查找最大概率路径找出基于词频的最大切分组合

• 对于未登录词采用了基于汉字成词能力的HMM模型使用了Viterbi算法

 

3.实现流程

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具


、HMM隐马尔科夫模型

1. 马尔科夫模型(Markov Model)

本质一个序列中每个状态只依赖之前有限个状态

– N阶马尔科夫依赖之前n个状态

– 1阶马尔科夫仅仅依赖前一个状态即上篇文章介绍的二元模型

p(w1,w2,w3,……wn) = p(w1)p(w2|w1)p(w3|w2)……p(wn|wn-1)

应用场景

• 概率预测

• 天气预测

三个参数

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

– 状态由数字表示假设共有M

– 初始概率      πk=P(S1=k)       = k作为序列开始的次数/观测序列总数

– 状态转移概率ak,l=P(St+1=l|St=k)   = l紧跟k出现的次数/k出现的总次数

 

2. 隐马尔科夫模型(Hiden Markov Model)

本质对两个序列建模

应用场景

• 机器翻译源语言序列 <-> 目标语言序列

• 语音识别语音信号序列 <-> 文字序列

• 词性标注文字序列 <-> 词性序列

五个参数

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

– 状态由数字表示假设共有M

– 观测由数字表示假设共有N

– 初始概率      πk=P(S1=k)       = k作为序列开始的次数/观测序列总数

– 状态转移概率ak,l=P(St+1=l|St=k)   = l紧跟k出现的次数/k出现的总次数

– 发射概率    bk(u)=P(Ot=u|St=k)   = k对应u出现的次数/k对应观测序列中所有情况的次数

那么总的概率如下

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

待解决问题

问题1. 给定训练语料库D,求模型中的参数πkak,lbk(u)

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

问题2. 给定θ,计算一个观测序列的概率Pθ(O)

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

问题3. 给定θ和观测序列O,找到最优的隐藏状态序列S

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

问题1解决

1)若数据完全S、O都已知例如词性分词都明确),则可以直接统计

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具


2)若数据不完全O已知,S未知或部分未知例如未登录词则应该采用EM算法前向后向算法计算出未登录词的相关信息如词性和转换概率):

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

前者判断词性后者即为状态转移概率ak,l为了得到这两个信息引出了前向概率和后向概率的两个概念

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

这两个概率也需要使用动态规划来求解

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

    可以得到

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具 

问题2解决: 利用上题中的参数可以直接求得

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

问题3解决: viterbi算法 

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

此处若采用穷举法时间复杂度太高

因此可考虑动态规划--维特比算法 

数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

至此三大问题完美解决撒花~ 

以上.


听说,爱点赞的人运气都不会太差哦数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

如果有任何意见和建议,也欢迎在下方留言~

由于部分图片的显示问题

还是建议大家关注这个公众号查看原文




 

关注这个公众号,定期会有大数据学习的干货推送给你哦~


数据挖掘干货总结(二)--NLP进阶-详解Jieba分词工具

点击这里查看往期精彩内容:

数据挖掘干货总结(一)--NLP基础

大数据干货系列(三)-- Hadoop2.0总结

每日三问(1222)


相关文章:

  • 2021-06-21
  • 2022-12-23
  • 2021-09-04
  • 2022-12-23
  • 2021-04-15
  • 2022-01-02
  • 2021-11-07
  • 2021-04-16
猜你喜欢
  • 2021-10-16
  • 2022-12-23
  • 2021-10-31
  • 2022-01-05
  • 2021-11-21
  • 2021-08-26
  • 2021-06-27
相关资源
相似解决方案