中文分词HMM隐马尔科夫

1、在说明HMM之前先记录一下什么是马尔可夫模型:即每一个状态只依赖之前的有限个状态。

   --N阶马尔可夫:依赖之前n个状态

   --一阶马尔可夫:仅仅依赖前一个状态

  • 马尔可夫有三个重要参数:

--初始概率

--状态

--状态转移概率

具体的马尔可夫模型可参考https://blog.csdn.net/zxm1306192988/article/details/78595933

2、隐马尔科夫模型

马尔可夫模型是对一个序列数据建模,但有时我们需要对两个序列数据建模

--例如

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

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

  •    写/一个/代码
  • verb/num/noun

通常一个序列是我们观察到的,另一个隐藏的但是是我们需要的

--通常把观察到的序列称为O,隐藏的序列称为S

--观察序列O中的数据通常是由对应的隐藏序列决定的,彼此间相互独立

隐藏序列间相互依赖,构成了马尔可夫序列

推荐系统四

 O(????1????2 …????????):观测序列,????????只依赖于????????

 S(????1????2 …????????):状态序列(隐藏序列),S是Markov序列,假设1阶Markov序列,则????????+1 只依赖于????????

 

 隐马尔科夫模型具有五个重要参数:

---状态:由数字表示,假设共有M个

---观测:由数字表示,假设共有N个

---初始概率:由推荐系统四表示

---状态转移概率

---发射概率

 

 

• 初始概率 :计算方式是把需要的词/词库中的总词数取log

– BEMS:位置信息

• B(开头)

• M(中间)

• E(结尾)

• S(独立成词)

– 词性:

• n 名词

• nr 人名

• ns 地名

• v 动词

• vd 副动词

• vn 名动词

转移概率:由B转移到M或者E或者S的概率

发射概率:每一个单独的词的概率

  • HMM生成过程

先生成第一个状态,然后依次由当前状态生成下一个状态, 最后每个状态发射出一个观察值

推荐系统四

得到:

推荐系统四

 

我们使用HMM是为了做什么呢?是为了中文分词中一些没有在词库中的单个词的粘连。

怎样进行粘连呢?使用viterbi算法

具体的参考https://blog.csdn.net/liangjiubujiu/article/details/80046388

 

 

 

相关文章:

  • 2021-09-21
  • 2021-06-21
  • 2021-12-13
  • 2021-06-27
  • 2022-01-29
  • 2021-12-25
  • 2021-06-03
  • 2021-07-15
猜你喜欢
  • 2022-12-23
  • 2021-11-19
  • 2021-11-19
  • 2021-11-19
  • 2021-10-10
相关资源
相似解决方案