【导读】我们在上一节的内容中已经为大家介绍了台大李宏毅老师的机器学习课程的Structured learning-sequence labeling(part 1),这一节将主要针对讨论Structured learning-sequence labeling剩下的内容进行讨论。本文内容主要针对机器学习中Structured learning- sequence labeling的CRF、CRF v.s. HMM、Structured Perceptron v.s. CRF以及实验结果分别详细介绍。话不多说,让我们一起学习这些内容吧
课件网址:
http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17_2.html
http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html
视频网址:
https://www.bilibili.com/video/av15889450/index_1.html
李宏毅机器学习笔记25 Structured learning-Sequence Labeling(part 2)
1.CRF
上一次我们讲到了CRF的向量表示
特征向量是包括两个部分,第一部分是tags和words之间的关系
第二部分是tags之间的关系。
Feature vector不一定非要如下图所示,可以自己定,这就是CRF厉害的地方
CRF的训练准则就是找到w使得在training data中看到的东西几率大,没看到的东西几率小
然后使用算微分来更新参数
我们先看CRF对于ws,t的微分
看结果我们可以看出如果s,t在训练集出现的话,对应的weight增加,如果没有出现,
就把weight减少。
最终结果如下
CRF整体推算流程如下
2.CRF v.s. HMM
从以上的讨论我们可以看出CRF和HMM的区别。HMM是根据统计来的,而CRF不在乎这个几率,它做的事是让出现在训练集的数据出现的几率更大
CRF和HMM的实验结果如下如所示
总的来说CRF的结果方法分为三步
在之前我们讲过Structured Perceptron
3.Structured Perceptron V.S. CRF
我们可以Structured Perceptron和CRF有类似的结果
它们的区别通俗来说,CRF是取所有y’过来加权减去,structured perceptron是取几率最大的y过来减
再回顾一下之前学习的Structured SVM
如果Structured SVM的error function定义为如下形式,Problem2.1就可以用viterbi来解。
4.实验效果
我们可以看到采用不同的方法解决POS Tagging问题得到的实验结果也会不一样
我们将RNN和HMM、CRF等一系列方法比较,各有优缺点,但最终是RNN效果更好
实际上我们可以将RNN和HMM等方法一起使用
例如在语音辨识中可以将它们结合起来
下面是之前所讲四种方法的总结
请关注专知公众号