条件随机场入门条件随机场的概率计算问题

ooon ooon     2022-08-01     148

关键词:

条件随机场的概率计算问题是给定条件随机场 P(Y|X) ,输入序列 x 和输出序列 y ,计算条件概率 $P(y_i|x)$ , $P(y_{i-1},y_i|x)$ 以及相应的数学期望的问题。为了方便起见,像 HMM 那样,引进前向-后向向量,递归地计算以上概率及期望值。这样的算法称为前向-后向算法。

前向-后向算法

对每个指标 $i = 0,1,…,n+1$ ,定义前向向量 $a_i(x)$ ,对于起始状态 $i=0$:

[a_0(y|x) = left { egin{aligned}
&1, y = start \
&0, else
end{aligned} ight.]

对于之后的状态 $i = 1,2,…,n+1$ ,递推公式为:

[a_i^T(y_i|x) a^T_{i-1}(y_{i-1}|x)M_i(y_{i-1},y_i|x)]

又可表示为

[a^T_i(x) = a^T_{i-1}(x)M_i(x)]

$a_i(y_i|x)$ 表示在位置 i 的标记是 $y_i$ 并且到位置 i 的前部分标记序列的非规范化概率,$y_i$ 可取的值有 m 个,所以 $a_i(y_i|x)$ 是 m 维列向量。

同样,对每个指标 $i = 0,1,…,n+1$ ,定义后向向量 eta_i(x):

技术分享

[eta_{n+1}(y_{n+1}|x) = left { egin{aligned}
&1, y_{n+1} = stop \
&0, else
end{aligned} ight.]

往前递推:

[eta_i(y_i|x) = M_i(y_i,y_{i+1}|x)eta_{i-1}(y_{i+1}|x)]

又可以表示为:

[eta_i(x) = M_{i=1}(x) eta_{i+1}(x)]

$eta_i(y_i|x)$ 表示在位置 i 的标记为 $y_i$,并且从 i+1 到 n 的后部分标记序列的非规范化概率。

由前向-后向向量定义不难得到:

[Z(x) = a_n^T(x) cdot mathbf{1} = mathbf{1}^T(eta_1(x))]

这里,$mathbf{1}$  是元素均为 1 的 m 维列向量。

概率计算

按照前向-后向向量的定义,很容易计算标记序列在位置 i 是标记 $y_i$ 的条件概率和在位置 i-1 与 i 是标记 y_{i-1} 和 $y_i$ 的条件概率:

egin{aligned}
P(Y_i= y_i|x) &= frac{a_i^T(y_i|x) eta_i(y_i|x)}{Z(x)} \
P(Y_{i-1} = y_{i-1} ,Y_i= y_i|x) &=frac{a_{i-1}^T(y_{i-1}|x)M_i(y_{i-1},y_i|x)eta_i(y_i|x)}{Z(x)}
end{aligned}

其中 $Z(x) = a_n^T(x) cdot mathbf{1} $

期望值的计算

利用前向-后向向量,可以计算特征函数关于联合分布 P(X,Y) 和条件分布 P(Y|X) 的数学期望。

特征函数 $ left { f_k ight }_{k=1}^K$ 关于条件分布 P(Y|X) 的数学期望是

egin{aligned}
E_{p(Y|X)}[f_k] &= sum_yP(y|x)f_k(y,x) \
&=sum_{i=1}^{n+1}sum_{y_{i-1}y_i}f_k(y_{i-1},y_i,x,i) frac{a_{i-1}^TM_i(y_{i-1},y_i|x)eta_i(y_i|x)}{Z(x)}
end{aligned}

其中 $Z(x) = a_n^T(x) cdot mathbf{1} $

假设经验分布为 $widetilde{P}(X)$ ,特征函数  $ left { f_k ight }_{k=1}^K$  关于联合分布 P(Y|X) 的数学期望是:

egin{aligned}
E_{P(X,Y)}[f_k] &= sum_{x,y}P(x,y)sum_{i=1}^{n+1}f_k(y_{i-1}.y_i,x,i) \
&= sum_xwidetilde{P}(x) sum_yP(y|x)sum_{i=1}^{n+1}f_k(y_{i-1,}y_ix,i) \
&= sum_xwidetilde{P}(x) sum_{i=1}^{n+1} sum_{y_{i-1}y_i}f_k(y_{i-1,}y_ix,i)frac{a_{i-1}^T(y_{i-1}|x)M_i(y_{i-1},y_i|x) eta_i(y_i|x)}{Z(x)}
end{aligned}

其中,$Z(x) = a_n^T(x) cdot mathbf{1} $

这个式子是特征函数数学期望的一般计算公式。对于转移特征 $t_k(y_{i-1},y_i,x,i) ,k=1,2,…,K$ ,可以将式中的 $f_k$ 换成 $t_k$ ;对于状态特征,可以将式中的 $f_k$ 换成 $s_l$ , 表示为 $s_l(y_i,x,i),k = K_1+1;l=1,2,…,K_2$ 。

有了这些式子,对于给定的观测序列 x 与标记序列 y ,可以通过一次前向扫描计算 $a_i$ 及 $Z(x)$ ,通过一次后向扫描计算 $eta_i$,从而计算所有的概率和特征的期望。



















条件随机场入门条件随机场的训练

本节讨论给定训练数据集估计条件随机场模型参数的问题,即条件随机场的学习问题。条件随机场模型实际上是定义在时序数据上的对数线形模型,其学习方法包括极大似然估计和正则化的极大似然估计。具体的优化实现算法有... 查看详情

条件随机场

概述条件随机场(conditionalrandomfield,CRF)是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔可夫随机场。条件随机场可以用于不同的预测问题,本章主要讲述线性链(linearc... 查看详情

ml-13-6条件随机场的三个问题(crf-conditionalrandomfield)

目录条件随机场CRF——前向后向算法评估标记序列概率条件随机场CRF——模型参数学习条件随机场CRF——维特比算法解码一、条件随机场CRF——前向后向算法评估标记序列概率  linear-CRF第一个问题是评... 查看详情

概率图模型(马尔科夫与条件随机场)

再一次遇到了Markov模型与条件随机场的问题,学而时习之,又有了新的体会。所以我决定从头开始再重新整理一次马尔科夫模型与条件随机场。  马尔科夫模型是一种无向概率图模型,其与马尔科夫链并不是很一样。马尔科夫... 查看详情

条件随机场

...有结点为O,对应随机变量组YO,那么给定随机变量组YO的条件下,Yu和Yv是 查看详情

条件随机场摘要

条件随机场(ConditionalRandomFields,以下简称CRF)是给定一组输入序列条件下另一组输出序列的条件概率分布模型,在自然语言处理中得到了广泛应用。HMM引入了马尔科夫假设,即当前时刻的状态只与其前一时刻的状态有关,HMM是一种... 查看详情

nlp入门使用crf++实现命名实体识别(ner)(代码片段)

CRF与NER简介??CRF,英文全称为conditionalrandomfield,中文名为条件随机场,是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔可夫(Markov)随机场。??较为简单的条件随机场... 查看详情

条件随机场(crf)-基础

  条件随机场(conditionalrandomfields,简称CRF,或CRFs)下文简称CRF,是一种典型的判别模型,相比隐马尔可夫模型可以没有很强的假设存在,在分词、词性标注、命名实体识别等领域有较好的应用。CRF是在马尔可夫随机场的基础... 查看详情

条件随机场介绍——anintroductiontoconditionalrandomfields

2.模型本部分从建模的角度讨论条件随机场,解释条件随机场如何将结构化输出上的概率分布表示为高维输入向量的函数。条件随机场即可以理解为逻辑回归在任意图结构上的扩展,也可以理解为结构化数据的生成模型(如隐马... 查看详情

ml-13-5条件随机场(crf-conditionalrandomfield)

目录知识串讲HMMVSMEMM从随机场到马尔科夫随机场条件随机场(CRF)MRF因子分解定理线性链条件随机场(Linear-CRF)一句话简介:条件随机场(ConditionalRandomFields,以下简称CRF)是给定一组输入序列条件下另一组输出序列的条件概率分布模型... 查看详情

crf条件随机场

CRF的进化https://flystarhe.github.io/2016/07/13/hmm-memm-crf/参考:http://blog.echen.me/2012/01/03/introduction-to-conditional-random-fields/ 标记偏置问题:MEMM最大熵马尔可夫模型  路径1-1-1-1的概率:0.4*0.45*0.5=0 查看详情

条件随机场介绍——anintroductiontoconditionalrandomfields

4.推断高效的推断算法对条件随机场的训练和序列预测都非常重要。主要有两个推断问题:第一,模型训练之后,为新的输入(mathbf{x})确定最可能的标记(mathbf{y}^*=argmax_{mathbf{y}}p(mathbf{y}|mathbf{x}));第二,如第5部分所述,参数估计... 查看详情

如何用简单易懂的例子解释条件随机场模型?它和hmm有啥区别

参考技术A概率模型与条件随机场1、概率模型 机器学习中的很多模型可以根据概率分布形式分为生成模型和判别模型,其中生成模型以输入输出的联合分布P(X,Y)为基础建模,如朴素贝叶斯、隐马尔可夫模型;判别模型以条件... 查看详情

条件随机场(crf)-2-定义和形式(转载)

    转载自:http://www.68idc.cn/help/jiabenmake/qita/20160530618218.html     参考书本:《2012.李航.统计学习方法.pdf》     书上首先介绍概率无向图模型,然后叙述条件随机场的定义和 查看详情

自然语言处理系列-4条件随机场(crf)及其tensorlofw实现

...用比较多的一些机器学习模型,隐马尔科夫模型(HMM),条件随机场(CRF),朴素贝叶斯,支持向量机(SVM),EM算法等相继都会聊到,感兴趣的朋友可以订阅我的博客,或者关注我的微信公众号,会定期更新NLP相关的文章。 ... 查看详情

条件随机场之crf++源码详解-训练(代码片段)

...CRF++的源码,并且本篇文章将是整个系列的重点,会介绍条件随机场中如何构造无向图、前向后向算法、如何计算条件概率、如何计算特征函数的期望以及如何求似然函数的梯度。本篇将结合条件随机场公式推导和CRF++源码实现... 查看详情

条件随机场介绍——anintroductiontoconditionalrandomfields

6.相关研究和未来方向本部分简要分析条件随机场的发展路线,特别是在结构化预测(structuredprediction)方面。除此之外,还将分析条件随机场与神经网络和最大熵马尔可夫模型(MEMMs)的关系。最后列出了几个未来研究的开放领... 查看详情

条件随机场-应用

  今天介绍CRFs在中文分词中的应用  工具:CRF++,可以去 https://taku910.github.io/crfpp/下载,训练数据和测试数据可以考虑使用bakeoff2005,这是链接http://sighan.cs.uchicago.edu/bakeoff2005/  首先需要了解一些概念  字标记法——统... 查看详情