3.1. 条件随机场 CRF(Conditional Random Field)

MEMM 的不足之处就是马尔可夫链的不足之处,马尔可夫链的假设是每个状态只与他前面的状态有关,这样的假设显然是有偏差的,所以就有了 CRF 模型,使得每个状态不止与他前面的状态有关,还与他后面的状态有关,从最开始的图片也能看出,HMM 是基于贝叶斯网络的有向图,而 CRF 是无向图。

P(Yv∣∣Yw,w≠v)=P(Yv,Yw,w∼v) where w~v means that w and v are neighbors in G.

上式是条件随机场的定义,一个图被称为条件随机场,是说图中的结点只和他相邻的结点有关。最后由于不是贝叶斯网络的有向图,所以 CRF 利用团的概念来求,最后公式如下

P(y∣∣x,λ)=1Z(x)∗exp(Σλj∗Fj(y,x))

因为条件随机场既可以像最大熵模型那样加各种 feature,又没有马尔可夫链那样的偏执假设, 所以近年来 CRF 已知是被公认的最好的分词算法 StanfordNLP 里就有良好的中文分词的 CRF 实现,在他们的这篇论文提到,他们把字典作为 feature 加入到 CRF 中,可以很好的提高分词的 performance。

最近看到这篇论文,已经有人用 deep learning 的方法来尝试解决分词的算法,也取得了不错的效果。

总之现在的中文分词技术相对来说还是比较成熟了,所以如果没有必要用这些开源的分词实现已经足够了,不过鉴于学习的目的,自己去实现一个分词算法还是很有趣的。