TypechoJoeTheme

IT技术分享

统计
NLP

隐马尔可夫词类标注 (POS) ——基于统计的词性标注一

2017-09-14
/
0 评论
/
629 阅读
/
正在检测是否收录...
09/14

基于 HMM 的词类标注

如果对隐马尔科夫模型不了解,请点这里

两个假设

  • 句中某个词是否出现只和该词的词类标记有关。和句中的其他词以及其它词的词类标记无关
  • 句中某个词的词类只和该词前面一个词的词类有关,而和句中其它词类无关, 即词类的 bigram 模型
如果对bigram 模型不了解,请点这里

这两个假设对应于隐马尔可夫模型的输出独立性假设马尔科夫假设

对应关系

  • HMM 状态集 ——> 词类标记集
  • HMM 输出符号集 ——> 词表
  • HMM 状态转移矩阵 ——> 词类转移概率 $p(t_{i}|t_{i-1})$
  • 输出符号概率 ——> 词类 $t_i$ 生成词 $w_i$ 的概率 $p(w_{i}|t_{i})$
  • 初始状态概率 ——> 词类 t 出现在句首的概率 $p(t) = p(t|\<BOS\>)$

$$\hat{t_{1}^{n}} = \underset{t_{1}^{n}}{\mathrm{argmax}} P(t_{1}^{n}|w_{1}^{n}) = \underset{t_{1}^{n}}{\mathrm{argmax}}\prod_{i=1}^{n}p(t_{i}|t_{i-1})p(w_{i}|t_{i})$$

如何根据观察到的词串(句子),求解最可能的词类标记序列(状态转换序列)——>Viterbi算法

如果对Viterbi算法不了解,请点这里

HMM 模型参数估计

参数学习

  • 多采用有指导的学习方法,需要预先准备带词类标记的语料库
  • 也可以采用无指导学习,例如用 Baum-Welch 算法
如果对Baum-Welch 算法不了解,请点这里
  • 也可以采用最大似然估计

状态转移矩阵

$$p(t_{i}|t_{i-1}) = \frac{c(t_{i-1},t_{i})}{c(t_{i-1})}$$

输出符号概率

$$p(w_{i}| t_{i}) = \frac{c(t_{i},w_{i})}{c(t_{i})}$$

特殊标记 <BOS><EOS>

改进的 HMM 词类标注

考虑更多的上下文,把词类的 bigram 模型改作 trigram 模型

$$\hat{t_{1}^{n}} = arg \max_{t_{1}^{n}}P(t_{1}^{n}|w_{1}^{n}) = arg \max_{t_{1}^{n}} \prod_{i=1}^{n}p(t_{i}|t_{i-1}, t_{i-2})p(w_{i}|t_{i})$$

同样可采用最大似然估计进行参数学习

状态转移矩阵

$$p(t_{i}|t_{i-1}, t_{i-2}) = \frac{c(t_{i-2}, t_{i-1}, t_{i})}{c(t_{i-2}, t_{i-1})}$$

对于数据的稀疏问题、可应用线性插值进行平滑

$$\hat{p}(t_{i}| t_{i-1},t_{i-2}) = \lambda_{1}p(t_{i}|t_{i-1},t_{i-2}) + \lambda_{2}p(t_{i}|t_{i-1}) + \lambda_{3}p(t_{i}) $$

如果对数据平滑不了解,请点这里

输出概率平滑

$$p(w|t)=\frac{c(t,w)+1}{c(t)+T_{w}}$$

马尔可夫模型MM词性标注POS
朗读
赞 · 0
版权属于:

IT技术分享

本文链接:

https://idunso.com/archives/2822/(转载时请注明本文出处及文章链接)