CRF的理解
1、CRF是基于概率无向图的,其联合概率由各最大团的势函数构成;在无向图的基础上,CRF的概率是x->y的条件概率;
2、一般用的都是线性链(linear-chain) 条件随机场,即Yi 节点只有前后两个连接;
3、按照概率无向图的概率公式:
这就意味着,整体CRF有一个全局的Z函数来作为归一化函数;
而MEMM来说:
其归一化函数存在于每个输出环节,并没有一个全局的归一化处理;
这样可能导致了MEMM的模型标记偏置问题;
相比来说,CRF由于具备全局的归一化处理,一定程度上优于MEMM;
4、在NLP中,往往在BiLSTM之上加了一层CRF,原因是BiLSTM处理的是P(Y|X),但按照CRF和MEMM等的观点来看,缺乏了P(Yi|Yi-1),即转移概率,所以通过加一层所谓的CRF层来计算输出状态Y之间的转移概率;但你说它从原理上来说到底是CRF还是MEMM呢,也不好说,因为整个模型的计算并不是按照上面的公式来进行定义和求值的。也许的确原理上属于CRF吧,因为是从整体上计算每个路径的整体概率的。
5、现在在图像处理的语义分割和实体分割中多添加CRF作为最后一层处理,其原理也和上面类似,即增加输出状态之间的转移概率;
附:
神经网络简单粗暴,不饶弯子,就是沿着X->Y的路线进行一层层的特征提取和计算,所以从这个层面来说,对于判别式和生成式两类算法模型来说,神经网络天然适合改造实现原有的判别式模型,因为就是直接计算X->Y的概率,比如CRF等都是判别式的;而对于HMM、GMM等生成式算法来说,由于涉及到P(X|Y),这个就不是神经网络容易模拟和实现的了;