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

/ NLP / 没有评论 / 486浏览

基于 HMM 的词类标注

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

两个假设

如果对bigram 模型不了解,请点这里

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

对应关系

$$\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 算法不了解,请点这里

状态转移矩阵

$$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}}$$