【统计学习方法】第11章 条件随机场

条件随机场(conditional random field,CRF)是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔可夫随机场。

1、概率无向图模型

概率无向图模型(probabilistic undirected graphical model),又称为马尔可夫随机场(Markov random field),是一个可以由无向图表示的联合概率分布.本节首先叙述概率无向图模型的定义,然后介绍概率无向图模型的因子分解。

图(graph)是由结点(node)及连接结点的边(edge)组成的集合。结点记作 v v v,结点集合记作 V V V;边记作 e e e,边的集合记作 E E E;图记作 G = ( V , E ) G=\left(V,E\right) G=(V,E)

概率图模型是由图表示的概率分布。设由联合分布 P ( Y ) P\left(Y\right) P(Y) Y ∈ Y Y \in \mathcal{Y} YY是一组随机变量。由无向图 G = ( V , E ) G=\left(V,E\right) G=(V,E)表示概率分布 P ( Y ) P\left(Y\right) P(Y),即在图 G G G中,结点 v ∈ V v \in V vV表示一个随机变量 Y v Y_{v} Yv Y = ( Y v ) v ∈ V Y=\left(Y_{v}\right)_{v \in V} Y=(Yv)vV;边 e ∈ E e \in E eE表示随机变量之间的概率依赖关系。

成对马尔可夫性(pairwise Markov property) P ( Y u , Y v ∣ Y O ) = P ( Y u ∣ Y O ) P ( Y v ∣ Y O ) \begin{aligned} & P\left(Y_{u},Y_{v}|Y_{O}\right)=P\left(Y_{u}|Y_{O}\right)P\left(Y_{v}|Y_{O}\right)\end{aligned} P(Yu,YvYO)=P(YuYO)P(YvYO)

其中,设 u u u v v v是无向图 G G G中任意两个没有边连接的结点,分别对应随机变量 Y u Y_{u} Yu Y v Y_{v} Yv;其它所有结点为 O O O,对应的随机变量组是 Y O Y_{O} YO。即,给定随机变量组 Y O Y_{O} YO的条件下随机变量 Y u Y_{u} Yu Y v Y_{v} Yv是条件独立的。

局部马尔可夫性(local Markov property) P ( Y v , Y O ∣ Y W ) = P ( Y v ∣ Y W ) P ( Y O ∣ Y W ) \begin{aligned} & P\left(Y_{v},Y_{O}|Y_{W}\right)=P\left(Y_{v}|Y_{W}\right)P\left(Y_{O}|Y_{W}\right)\end{aligned} P(Yv,YOYW)=P(YvYW)P(YOYW)

其中,设 v ∈ V v \in V vV是无向图 G G G中任意一个结点,对应的随机变量是 Y v Y_{v} Yv W W W是与 v v v有边连接的所有的结点,对应的随机变量组是 Y W Y_{W} YW O O O v , W v,W v,W以外的其它所有结点,对应的随机变量组是 Y O Y_{O} YO。即,给定随机变量组 Y W Y_{W} YW的条件下随机变量 Y v Y_{v} Yv Y O Y_{O} YO是条件独立的。

在这里插入图片描述

全局马尔可夫性(global Markov property) P ( Y A , Y B ∣ Y C ) = P ( Y A ∣ Y C ) P ( Y B ∣ Y C ) \begin{aligned} & P\left(Y_{A},Y_{B}|Y_{C}\right)=P\left(Y_{A}|Y_{C}\right)P\left(Y_{B}|Y_{C}\right)\end{aligned} P(YA,YBYC)=P(YAYC)P(YBYC)

其中,设结点集合 A , B A,B A,B是在无向图 G G G中被结点集合 C C C分开的任意结点集合,对应的随机变量组是 Y A , Y B , Y C Y_{A},Y_{B},Y_{C} YA,YB,YC。即,给定随机变量组 Y C Y_{C} YC的条件下随机变量 Y A Y_{A} YA Y B Y_{B} YB是条件独立的。

在这里插入图片描述

概率无向图模型(马尔可夫随机场):设有联合概率分布 P ( Y ) P\left(Y\right) P(Y),由无向图 G = ( V , E ) G=\left(V,E\right) G=(V,E)表示,在图 G G G中,结点表示随机变量,边表示随机变量之间的依赖关系。如果联合概率分布 P ( Y ) P\left(Y\right) P(Y)满足成对、局部或全局马尔可夫性,就称次联合概率分布为概率无向图模型,或马尔可夫随机场。

概率无向图模型的因子分解

团:无向图 G G G中任意两个结点均有边连接的结点子集。
最大团:无向图 G G G中的一个团,并且不能再加进任何一个结点使其成为一个更大的团。

概率无向图模型的联合概率分布 P ( Y ) = 1 Z ∏ C Ψ C ( Y C ) \begin{aligned} & P\left(Y\right)=\dfrac{1}{Z} \prod_{C} \varPsi_{C}\left(Y_{C}\right) \end{aligned} P(Y)=Z1CΨC(YC)

其中, C C C是无向图的最大团, Y C Y_{C} YC C C C的结点对应的随机变量;势函数 Ψ C ( Y C ) \varPsi_{C}\left(Y_{C}\right) ΨC(YC)是严格正的 Ψ C ( Y C ) = exp ⁡ { − E ( Y C ) } \begin{aligned} & \varPsi_{C}\left(Y_{C}\right) = \exp \left\{-E\left(Y_{C}\right)\right\} \end{aligned} ΨC(YC)=exp{E(YC)}

Z Z Z是规范化因子,保证 P ( Y ) P\left(Y\right) P(Y)构成一个概率分布 Z = ∑ Y ∏ C Ψ C ( Y C ) \begin{aligned} & Z = \sum_{Y} \prod_{C} \varPsi_{C}\left(Y_{C} \right) \end{aligned} Z=YCΨC(YC)

乘积是在无向图所有的最大团上进行的。

2、条件随机场的定义与形式

条件随机场的定义

X X X Y Y Y是随机变量, P ( Y ∣ X ) P\left(Y|X\right) P(YX)是在给定 X X X的条件下 Y Y Y的条件概率分布,若随机变量 Y Y Y构成一个由无向图 G = ( V , E ) G=\left(V,E\right) G=(V,E)表示的马尔可夫随机场,即 P ( Y v ∣ X , Y w , w ≠ v ) = P ( X , Y w , w ∼ v ) \begin{aligned} & P\left(Y_{v}|X,Y_{w},w \neq v \right)= P\left(X,Y_{w},w \thicksim v \right)\end{aligned} P(YvX,Yw,w=v)=P(X,Yw,wv)

对任意结点 v v v成立,则称条件概率分布 P ( Y ∣ X ) P\left(Y|X\right) P(YX)条件随机场。其中, w ∼ v w \thicksim v wv表示在图 G = ( V , E ) G=\left(V,E\right) G=(V,E)中与结点 v v v有边连接的所有结点 w w w w ≠ v w \neq v w=v表示结点 v v v以外的所有结点, Y v Y_{v} Yv Y w Y_{w} Yw为结点 v v v w w w对应的随机变量。

X = ( X 1 , X 2 , ⋯   , X n ) X=\left(X_{1},X_{2}, \cdots, X_{n}\right) X=(X1,X2,,Xn) Y = ( Y 1 , Y 2 , ⋯   , Y n ) Y=\left(Y_{1},Y_{2}, \cdots, Y_{n}\right) Y=(Y1,Y2,,Yn)均为线性链表示的随机变量序列,若在给定随机变量序列 X X X的条件下,随机变量序列 Y Y Y的条件概率分布 P ( Y ∣ X ) P\left(Y|X\right) P(YX)构成条件随机场,即满足马尔可夫性 P ( Y i ∣ X , Y 1 , ⋯   , Y i − 1 , Y i + 1 , ⋯   , Y n ) = P ( Y i ∣ X , Y i − 1 , Y i + 1 ) \begin{aligned} & P\left(Y_{i}|X,Y_{1},\cdots,Y_{i-1},Y_{i+1},\cdots,Y_{n} \right)= P\left(Y_{i}|X,Y_{i-1},Y_{i+1}\right)\end{aligned} P(YiX,Y1,,Yi1,Yi+1,,Yn)=P(YiX,Yi1,Yi+1)

称条件概率分布 P ( Y ∣ X ) P\left(Y|X\right) P(YX)线性链条件随机场

线性链条件随机场的参数化形式

P ( Y ∣ X ) P\left(Y|X\right) P(YX)为线性链条件随机场,则在随机变量 X X X取值为 x x x的条件下,随机变量 Y Y Y取值为 y y y的条件概率 P ( y ∣ x ) = 1 Z ( x ) exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) \begin{aligned} & P\left(y|x\right)= \dfrac{1}{Z\left(x\right)} \exp \left(\sum_{i,k} \lambda_{k} t_{k} \left(y_{i-1},y_{i},x,i\right)+\sum_{i,l} \mu_{l}s_{l} \left(y_{i},x,i\right) \right)\end{aligned} P(yx)=Z(x)1expi,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)

其中, Z ( x ) = ∑ y exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) \begin{aligned} & Z\left(x\right) = \sum_{y} \exp \left(\sum_{i,k} \lambda_{k} t_{k} \left(y_{i-1},y_{i},x,i\right)+\sum_{i,l} \mu_{l}s_{l} \left(y_{i},x,i\right) \right)\end{aligned} Z(x)=yexpi,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)

t k t_{k} tk是定义在边上特征函数,称为转移特征,依赖于当前和前一个位置; s l s_{l} sl是定义在结点上的特征函数,称为状态特征,依赖于当前位置。特征函数 t k t_{k} tk s l s_{l} sl取值为1或0。 λ k \lambda_{k} λk μ l \mu_{l} μl是对应的权值, Z ( x ) Z\left(x\right) Z(x)是规范化因子,求和是在所有可能的输出序列上进行的。

线性链条件随机场的简化化形式

设有 K 1 K_{1} K1个转移特征, K 2 K_{2} K2个状态特征, K = K 1 + K 2 K=K_{1}+K_{2} K=K1+K2,记 f k ( y i − 1 , y i , x , i ) = {   t k ( y i − 1 , y i , x , i ) , k = 1 , 2 , ⋯   , K 1 s l ( y i , x , i ) , k = K 1 + l ; l = 1 , 2 , ⋯   , K 2 \begin{aligned} f_{k}\left(y_{i-1},y_{i},x,i\right) = \left\{ \begin{aligned} \ & t_{k}\left(y_{i-1},y_{i},x,i\right), \quad k=1,2,\cdots,K_{1} \\ & s_{l}\left(y_{i},x,i\right), \quad k=K_{1}+l; \quad l=1,2,\cdots,K_{2} \end{aligned} \right.\end{aligned} fk(yi1,yi,x,i)={ tk(yi1,yi,x,i),k=1,2,,K1sl(yi,x,i),k=K1+l;l=1,2,,K2

转移与状态特征在各个位置 i i i求和,记作 f k ( y , x ) = ∑ i = 1 n f k ( y i − 1 , y i , x , i ) , k = 1 , 2 , ⋯   , K \begin{aligned} & f_{k} \left(y,x\right) = \sum_{i=1}^{n} f_{k}\left(y_{i-1},y_{i},x,i\right), \quad k=1,2, \cdots,K\end{aligned} fk(y,x)=i=1nfk(yi1,yi,x,i),k=1,2,,K

w k w_{k} wk表示特征 f k ( y , x ) f_{k}\left(y,x\right) fk(y,x)的权值,即 w k = {   λ k , k = 1 , 2 , ⋯   , K 1 μ l , k = K 1 + l ; l = 1 , 2 , ⋯   , K 2 \begin{aligned} w_{k} = \left\{ \begin{aligned} \ & \lambda_{k}, \quad k=1,2,\cdots,K_{1} \\ & \mu_{l}, \quad k=K_{1}+l; \quad l=1,2,\cdots,K_{2} \end{aligned} \right.\end{aligned} wk={ λk,k=1,2,,K1μl,k=K1+l;l=1,2,,K2

则条件随机场可表示为 P ( y ∣ x ) = 1 Z ( x ) exp ⁡ ∑ k = 1 K w k f k ( y , x ) Z ( x ) = ∑ y exp ⁡ ∑ k = 1 K w k f k ( y , x ) \begin{aligned} & P\left(y|x\right)= \dfrac{1}{Z\left(x\right)} \exp \sum_{k=1}^{K} w_{k} f_{k}\left(y,x\right) \\ & Z\left(x\right) = \sum_{y} \exp \sum_{k=1}^{K} w_{k} f_{k}\left(y,x\right) \end{aligned} P(yx)=Z(x)1expk=1Kwkfk(y,x)Z(x)=yexpk=1Kwkfk(y,x)

w w w表示权值向量,即 w = ( w 1 , w 2 , ⋯   , w K ) T \begin{aligned} & w=\left(w_{1},w_{2}, \cdots, w_{K}\right)^{T}\end{aligned} w=(w1,w2,,wK)T

F ( y , x ) F\left(y,x\right) F(y,x)表示权局特征向量,即 F ( y , x ) = ( f 1 ( y , x ) , f 2 ( y , x ) , ⋯   , f K ( y , x ) ) T \begin{aligned} & F\left(y,x\right) = \left(f_{1}\left(y,x\right),f_{2}\left(y,x\right), \cdots, f_{K}\left(y,x\right)\right)^{T} \end{aligned} F(y,x)=(f1(y,x),f2(y,x),,fK(y,x))T

则条件随机场可写成向量 w w w F ( y , x ) F\left(y,x\right) F(y,x)的内积的形式 P ( y ∣ x ) = exp ⁡ ( w ⋅ F ( y , x ) ) Z w ( x ) \begin{aligned} & P\left(y|x\right) = \dfrac{\exp \left(w \cdot F\left(y,x\right)\right)}{Z_{w}\left(x\right)} \end{aligned} P(yx)=Zw(x)exp(wF(y,x))其中, Z w ( x ) = ∑ y exp ⁡ ( w ⋅ F ( y , x ) ) \begin{aligned} & Z_{w}\left(x\right) = \sum_{y} \exp \left(w \cdot F\left(y,x\right)\right) \end{aligned} Zw(x)=yexp(wF(y,x))

条件随机场的矩阵形式

假设 P w ( y ∣ x ) P_{w}\left(y|x\right) Pw(yx)是线性链条件随机场对给定观测序列 x x x,相应的标记序列 y y y的条件概率。引进特殊的起点标记 y 0 = s t a r t y_{0}=start y0=start表示开始状态,特殊的终点标记 y n + 1 = s t o p y_{n+1}=stop yn+1=stop表示终止状态。对观测序列 x x x的每一个位置 i = 1 , 2 , ⋯   , n + 1 i=1,2,\cdots,n+1 i=1,2,,n+1,定义一个 m m m阶矩阵( m m m是标记 y i y_{i} yi取值的个数) M i ( x ) = [ M i ( y i − 1 , y i ∣ x ) ] m × m M i ( y i − 1 , y i ∣ x ) = exp ⁡ ( W i ( y i − 1 , y i , ∣ x ) ) W i ( y i − 1 , y i , ∣ x ) = ∑ i = 1 K w k f k ( y i − 1 , y i , x , i ) \begin{aligned} & M_{i}\left(x\right) = \left[ M_{i} \left(y_{i-1},y_{i}|x\right) \right]_{m \times m} \\ & M_{i} \left(y_{i-1},y_{i}|x\right) = \exp \left(W_{i} \left(y_{i-1},y_{i},|x\right)\right) \\ & W_{i} \left(y_{i-1},y_{i},|x\right) = \sum_{i=1}^{K} w_{k} f_{k} \left(y_{i-1},y_{i},x,i\right)\end{aligned} Mi(x)=[Mi(yi1,yix)]m×mMi(yi1,yix)=exp(Wi(yi1,yi,x))Wi(yi1,yi,x)=i=1Kwkfk(yi1,yi,x,i)

P w ( y ∣ x ) = 1 Z w ( x ) ∏ i = 1 n + 1 M i ( y i − 1 , y i ∣ x ) \begin{aligned} & P_{w}\left(y|x\right) = \dfrac{1}{Z_{w}\left(x\right)} \prod_{i=1}^{n+1} M_{i} \left(y_{i-1},y_{i}|x\right)\end{aligned} Pw(yx)=Zw(x)1i=1n+1Mi(yi1,yix)

其中, Z w Z_{w} Zw为规范化因子,是 n + 1 n+1 n+1个矩阵的乘积的元素,是以 s t a r t start start为起点 s t o p stop stop为终点通过状态的所有路径 y 1 y 2 ⋯ y n y_{1}y_{2}\cdots y_{n} y1y2yn的非规范化概率 ∏ i = 1 n + 1 M i ( y i − 1 , y i ∣ x ) \prod_{i=1}^{n+1} M_{i} \left(y_{i-1},y_{i}|x\right) i=1n+1Mi(yi1,yix)之和。 Z w ( x ) = ( M 1 ( x ) , M 2 ( x ) , ⋯   , M n + 1 ( x ) ) s t a r t , s t o p \begin{aligned} & Z_{w}\left(x\right) = \left(M_{1}\left(x\right),M_{2}\left(x\right), \cdots,M_{n+1}\left(x\right)\right)_{start,stop}\end{aligned} Zw(x)=(M1(x),M2(x),,Mn+1(x))start,stop

3、条件随机场的概率计算问题

前向-后向算法

对每个指标 i = 0 , 1 , ⋯   , n + 1 i=0,1,\cdots,n+1 i=0,1,,n+1,定义前向向量 α i ( x ) \alpha_{i}\left(x\right) αi(x) α 0 ( y ∣ x ) = {   1 , y = s t a r t 0 , 否 则 \begin{aligned} \alpha_{0}\left(y|x\right) = \left\{ \begin{aligned} \ & 1, \quad y=start \\ & 0, \quad 否则 \end{aligned} \right.\end{aligned} α0(yx)={ 1,y=start0,递推公式 α i T ( y i ∣ x ) = α i − 1 T ( y i ∣ x ) [ M i ( y i − 1 , y i ∣ x ) ] , i = 1 , 2 , ⋯   , n + 1 \begin{aligned} & \alpha_{i}^{T}\left(y_{i}|x\right) = \alpha_{i-1}^{T}\left(y_{i}|x\right) \left[M_{i}\left(y_{i-1},y_{i}|x\right)\right], \quad i=1,2,\cdots,n+1\end{aligned} αiT(yix)=αi1T(yix)[Mi(yi1,yix)],i=1,2,,n+1又表示为 α i T ( x ) = α i − 1 T ( x ) M i ( x ) \begin{aligned} & \alpha_{i}^{T} \left(x\right) = \alpha_{i-1}^{T} \left(x\right) M_{i}\left(x\right)\end{aligned} αiT(x)=αi1T(x)Mi(x)

α i ( y i ∣ x ) \alpha_{i}\left(y_{i}|x\right) αi(yix)表示在位置 i i i的标记是 y i y_{i} yi并且到位置 i i i的前部分标记序列的非规范化概率, y i y_{i} yi可取的值又 m m m个,所以 α i ( x ) \alpha_{i}\left(x\right) αi(x) m m m维列向量。

对每个指标 i = 0 , 1 , ⋯   , n + 1 i=0,1,\cdots,n+1 i=0,1,,n+1,定义后向向量 β i ( x ) \beta_{i}\left(x\right) βi(x) β n + 1 ( y n + 1 ∣ x ) = {   1 , y n + 1 = s t o p 0 , 否 则 \begin{aligned} \beta_{n+1}\left(y_{n+1}|x\right) = \left\{ \begin{aligned} \ & 1, \quad y_{n+1}=stop \\ & 0, \quad 否则 \end{aligned} \right.\end{aligned} βn+1(yn+1x)={ 1,yn+1=stop0,递推公式 β i ( y i ∣ x ) = [ M i ( y i , y i + 1 ∣ x ) ] β i + 1 ( y i + 1 ∣ x ) , i = 1 , 2 , ⋯   , n + 1 \begin{aligned} & \beta_{i}\left(y_{i}|x\right) = \left[M_{i}\left(y_{i},y_{i+1}|x\right)\right]\beta_{i+1}\left(y_{i+1}|x\right) , \quad i=1,2,\cdots,n+1\end{aligned} βi(yix)=[Mi(yi,yi+1x)]βi+1(yi+1x),i=1,2,,n+1又表示为 β i ( x ) = M i + 1 ( x ) β i + 1 ( x ) \begin{aligned} & \beta_{i} \left(x\right) = M_{i+1}\left(x\right) \beta_{i+1} \left(x\right) \end{aligned} βi(x)=Mi+1(x)βi+1(x)

β i ( y i ∣ x ) \beta_{i}\left(y_{i}|x\right) βi(yix)表示在位置 i i i的标记是 y i y_{i} yi并且到位置 i + 1 i+1 i+1 n n n的后部分标记序列的非规范化概率。

由前向-后向向量,得 Z ( x ) = α n T ( x ) ⋅ 1 = 1 T ⋅ β i ( x ) \begin{aligned} & Z\left(x\right)=\alpha_{n}^{T}\left(x\right) \cdot \mathbf{1} = \mathbf{1}^{T} \cdot \beta_{i}\left(x\right) \end{aligned} Z(x)=αnT(x)1=1Tβi(x)其中, 1 \mathbf{1} 1是元素均为1的 m m m维列向量。

概率计算

标记序列中,在位置 i i i是标记 y i y_{i} yi的条件概率 P ( Y i = y i ∣ x ) = α i T ( y i ∣ x ) β i ( y i ∣ x ) Z ( x ) \begin{aligned} & P\left(Y_{i}=y_{i}|x\right) = \dfrac{\alpha_{i}^{T}\left(y_{i}|x\right) \beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)}\end{aligned} P(Yi=yix)=Z(x)αiT(yix)βi(yix)

标记序列中,在位置 i - 1 i-1 i1是标记 y i − 1 y_{i-1} yi1,在位置 i i i是标记 y i y_{i} yi的条件概率 P ( Y i - 1 = y i − 1 , Y i = y i ∣ x ) = α i − 1 T ( y i − 1 ∣ x ) M i ( y i − 1 , y i ∣ x ) β i ( y i ∣ x ) Z ( x ) \begin{aligned} & P\left(Y_{i-1}=y_{i-1},Y_{i}=y_{i}|x\right) = \dfrac{\alpha_{i-1}^{T}\left(y_{i-1}|x\right) M_{i}\left(y_{i-1},y_{i}|x\right)\beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)}\end{aligned} P(Yi1=yi1,Yi=yix)=Z(x)αi1T(yi1x)Mi(yi1,yix)βi(yix)

其中, Z ( x ) = α n T ( x ) ⋅ 1 \begin{aligned} & Z\left(x\right)=\alpha_{n}^{T}\left(x\right) \cdot \mathbf{1} \end{aligned} Z(x)=αnT(x)1

期望值的计算

特征函数 f k f_{k} fk关于条件分布 P ( Y ∣ X ) P\left(Y|X\right) P(YX)的数学期望 E P ( Y ∣ X ) [ f k ] = ∑ y P ( y ∣ x ) f k ( y , x ) = ∑ i = 1 n + 1 ∑ y i − 1 , y i f k ( y i − 1 , y i , x , i ) α i − 1 T ( y i − 1 ∣ x ) M i ( y i − 1 , y i ∣ x ) β i ( y i ∣ x ) Z ( x ) \begin{aligned} & E_{P\left(Y|X\right)} \left[f_{k}\right]=\sum_{y} P\left(y|x\right) f_{k}\left(y,x\right) \\ & = \sum_{i=1}^{n+1} \sum_{y_{i-1},y_{i}} f_{k}\left(y_{i-1},y_{i},x,i\right) \dfrac{\alpha_{i-1}^{T}\left(y_{i-1}|x\right) M_{i}\left(y_{i-1},y_{i}|x\right)\beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)}\end{aligned} EP(YX)[fk]=yP(yx)fk(y,x)=i=1n+1yi1,yifk(yi1,yi,x,i)Z(x)αi1T(yi1x)Mi(yi1,yix)βi(yix)

假设经验分布为 P ~ ( x ) \tilde{P}\left(x\right) P~(x),特征函数 f k f_{k} fk关于联合分布 P ( X , Y ) P\left(X,Y\right) P(X,Y)的数学期望 E P ( X , Y ) [ f k ] = ∑ x , y P ( x , y ) ∑ i = 1 n + 1 f k ( y i − 1 , y i , x , i ) = ∑ x P ~ ( x ) ∑ y P ( y ∣ x ) ∑ i = 1 n + 1 f k ( y i − 1 , y i , x , i ) = ∑ x P ~ ( x ) ∑ i = 1 n + 1 ∑ y i − 1 , y i f k ( y i − 1 , y i , x , i ) α i − 1 T ( y i − 1 ∣ x ) M i ( y i − 1 , y i ∣ x ) β i ( y i ∣ x ) Z ( x ) k = 1 , 2 , ⋯   , K \begin{aligned} & E_{P\left(X,Y\right)} \left[f_{k}\right]=\sum_{x,y} P\left(x,y\right) \sum_{i=1}^{n+1} f_{k}\left(y_{i-1},y_{i},x,i\right) \\ & = \sum_{x} \tilde{P}\left(x\right) \sum_{y} P\left(y|x\right) \sum_{i=1}^{n+1} f_{k}\left(y_{i-1},y_{i},x,i\right) \\ & = \sum_{x} \tilde{P}\left(x\right) \sum_{i=1}^{n+1} \sum_{y_{i-1},y_{i}} f_{k}\left(y_{i-1},y_{i},x,i\right) \dfrac{\alpha_{i-1}^{T}\left(y_{i-1}|x\right) M_{i}\left(y_{i-1},y_{i}|x\right)\beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)} \quad \quad k=1,2,\cdots,K \end{aligned} EP(X,Y)[fk]=x,yP(x,y)i=1n+1fk(yi1,yi,x,i)=xP~(x)yP(yx)i=1n+1fk(yi1,yi,x,i)=xP~(x)i=1n+1yi1,yifk(yi1,yi,x,i)Z(x)αi1T(yi1x)Mi(yi1,yix)βi(yix)k=1,2,,K

其中, Z ( x ) = α n T ( x ) ⋅ 1 \begin{aligned} & Z\left(x\right)=\alpha_{n}^{T}\left(x\right) \cdot \mathbf{1} \end{aligned} Z(x)=αnT(x)1

4、条件随机场的学习算法

改进的迭代尺度法

由训练数据集,得经验概率分布 P ~ ( X , Y ) \tilde{P}\left(X,Y\right) P~(X,Y)。训练数据的对数似然函数 L ( w ) = L P ~ ( P w ) = log ⁡ ∏ x , y P w ( y ∣ x ) P ~ ( x , y ) = ∑ x , y P ~ ( x , y ) log ⁡ P w ( y ∣ x ) \begin{aligned} & L\left(w\right)= L_{\tilde{P}}\left(P_{w}\right)=\log \prod_{x,y} P_{w}\left(y|x\right)^{\tilde{P}\left(x,y\right)} = \sum_{x,y} \tilde{P}\left(x,y\right) \log P_{w}\left(y|x\right)\end{aligned} L(w)=LP~(Pw)=logx,yPw(yx)P~(x,y)=x,yP~(x,y)logPw(yx)

P w P_{w} Pw是条件随机场模型时,对数似然函数 L ( w ) = ∑ x , y P ~ ( x , y ) log ⁡ P w ( y ∣ x ) = ∑ x , y [ P ~ ( x , y ) ∑ k = 1 K w k f k ( y , x ) − P ~ ( x , y ) log ⁡ Z w ( x ) ] = ∑ j = 1 N ∑ k = 1 K w k f k ( y j , x j ) − ∑ j = 1 N log ⁡ Z w ( x j ) \begin{aligned} & L\left(w\right)= \sum_{x,y} \tilde{P}\left(x,y\right) \log P_{w}\left(y|x\right) \\ & = \sum_{x,y} \left[\tilde{P}\left(x,y\right) \sum_{k=1}^{K} w_{k} f_{k}\left(y,x\right) - \tilde{P}\left(x,y\right) \log Z_{w}\left(x\right) \right] \\ & = \sum_{j=1}^{N} \sum_{k=1}^{K} w_{k} f_{k} \left(y_{j},x_{j}\right) - \sum_{j=1}^{N} \log Z_{w} \left(x_{j}\right) \end{aligned} L(w)=x,yP~(x,y)logPw(yx)=x,y[P~(x,y)k=1Kwkfk(y,x)P~(x,y)logZw(x)]=j=1Nk=1Kwkfk(yj,xj)j=1NlogZw(xj)

设模型当前参数向量 w = ( w 1 , w 2 , ⋯   , w K ) T \begin{aligned} & w = \left(w_{1},w_{2},\cdots,w_{K}\right)^{T}\end{aligned} w=(w1,w2,,wK)T向量的增量 δ = ( δ 1 , δ 2 , ⋯   , δ K ) T \begin{aligned} & \delta = \left(\delta_{1},\delta_{2},\cdots,\delta_{K}\right)^{T}\end{aligned} δ=(δ1,δ2,,δK)T更新参数向量 w + δ = ( w 1 + δ 1 , w 2 + δ 2 , ⋯   , w K + δ K ) T \begin{aligned} & w+\delta = \left(w_{1}+\delta_{1},w_{2}+\delta_{2},\cdots,w_{K}+\delta_{K}\right)^{T}\end{aligned} w+δ=(w1+δ1,w2+δ2,,wK+δK)T

关于转移特征 t k t_{k} tk的更新方程 E P ~ [ t k ] = ∑ x , y P ~ ( x , y ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) = ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) exp ⁡ ( δ k T ( x , y ) ) k = 1 , 2 , ⋯   , K \begin{aligned} & E_{\tilde{P}} \left[t_{k}\right]=\sum_{x,y} \tilde{P} \left(x,y\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right) \\ & = \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right)\exp\left(\delta_{k}T\left(x,y\right)\right) \quad \quad k=1,2,\cdots,K \end{aligned} EP~[tk]=x,yP~(x,y)i=1n+1tk(yi1,yi,x,i)=x,yP~(x)P(yx)i=1n+1tk(yi1,yi,x,i)exp(δkT(x,y))k=1,2,,K

关于转移特征 s l s_{l} sl的更新方程 E P ~ [ s l ] = ∑ x , y P ~ ( x , y ) ∑ i = 1 n s l ( y i , x , i ) = ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n s l ( y i , x , i ) exp ⁡ ( δ K 1 + l T ( x , y ) ) l = 1 , 2 , ⋯   , K 2 \begin{aligned} & E_{\tilde{P}} \left[s_{l}\right]=\sum_{x,y} \tilde{P} \left(x,y\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right) \\ & = \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right)\exp\left(\delta_{K_{1}+l}T\left(x,y\right)\right) \quad \quad l=1,2,\cdots,K_{2} \end{aligned} EP~[sl]=x,yP~(x,y)i=1nsl(yi,x,i)=x,yP~(x)P(yx)i=1nsl(yi,x,i)exp(δK1+lT(x,y))l=1,2,,K2

其中, T ( x , y ) T\left(x,y\right) T(x,y)是在数据 ( x , y ) \left(x,y\right) (x,y)中出现的所有特征函数的总和 T ( x , y ) = ∑ k f k ( y , x ) = ∑ k = 1 K ∑ i = 1 n + 1 f k ( y i − 1 , y i , x , i ) \begin{aligned} & T\left(x,y\right)=\sum_{k} f_{k}\left(y,x\right)=\sum_{k=1}^{K} \sum_{i=1}^{n+1} f_{k} \left(y_{i-1},y_{i},x,i\right)\end{aligned} T(x,y)=kfk(y,x)=k=1Ki=1n+1fk(yi1,yi,x,i)

条件随机场模型学习的改进的迭代尺度法

  • 输入:特征函数 t 1 , t 2 , ⋯   , t K 1 t_{1},t_{2},\cdots,t_{K_{1}} t1,t2,,tK1 s 1 , s 2 , ⋯   , s K 2 s_{1},s_{2},\cdots,s_{K_{2}} s1,s2,,sK2,经验分布 P ~ ( x , y ) \tilde{P}\left(x,y\right) P~(x,y)
  • 输出:参数估计值 w ^ \hat{w}\quad w^ 模型 P w ^ P_{\hat{w}} Pw^
  1. 对所有 k ∈ { 1 , 2 , ⋯   , K } k \in \left\{1,2,\cdots,K\right\} k{1,2,,K},取初值 w k = 0 w_{k}=0 wk=0
  2. 对每一个 k ∈ { 1 , 2 , ⋯   , K } k \in \left\{1,2,\cdots,K\right\} k{1,2,,K}
    2.1当 k = 1 , 2 , ⋯   , K 1 k=1,2,\cdots,K_{1} k=1,2,,K1时,令 δ k \delta_{k} δk是方程 ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) exp ⁡ ( δ k T ( x , y ) ) = E P ~ [ t k ] \begin{aligned} \\& \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right)\exp\left(\delta_{k}T\left(x,y\right)\right)=E_{\tilde{P}} \left[t_{k}\right] \end{aligned} x,yP~(x)P(yx)i=1n+1tk(yi1,yi,x,i)exp(δkT(x,y))=EP~[tk]的解
    k = K 1 + l , l = 1 , 2 , ⋯   , K 2 k=K_{1}+l,l=1,2,\cdots,K_{2} k=K1+l,l=1,2,,K2时,令 δ K 1 + l \delta_{K_{1}+l} δK1+l是方程 ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n s l ( y i , x , i ) exp ⁡ ( δ K 1 + l T ( x , y ) ) = E P ~ [ s l ] \begin{aligned} \\& \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right)\exp\left(\delta_{K_{1}+l}T\left(x,y\right)\right)=E_{\tilde{P}} \left[s_{l}\right] \end{aligned} x,yP~(x)P(yx)i=1nsl(yi,x,i)exp(δK1+lT(x,y))=EP~[sl]的解
    2.2更新 w k w_{k} wk的值: w k ← w k + δ k w_{k} \leftarrow w_{k}+\delta_{k} wkwk+δk
  3. 如果不是所有的 w k w_{k} wk都收敛,重复步骤2.
    其中, T ( x , y ) = ∑ k f k ( y , x ) = ∑ k = 1 K ∑ i = 1 n + 1 f k ( y i − 1 , y i , x , i ) \begin{aligned} & T\left(x,y\right)=\sum_{k} f_{k}\left(y,x\right)=\sum_{k=1}^{K} \sum_{i=1}^{n+1} f_{k} \left(y_{i-1},y_{i},x,i\right)\end{aligned} T(x,y)=kfk(y,x)=k=1Ki=1n+1fk(yi1,yi,x,i)

算法 S S S是解决 T ( x , y ) T\left(x,y\right) T(x,y)表示数据 ( x , y ) \left(x,y\right) (x,y)中特征总数时,对不同数据 ( x , y ) \left(x,y\right) (x,y)取值可能不同的问题。引入松弛特征 s ( x , y ) = S − ∑ i = 1 n + 1 ∑ k = 1 K f k ( y i − 1 , y i , x , i ) \begin{aligned} & s\left(x,y\right) = S - \sum_{i=1}^{n+1} \sum_{k=1}^{K} f_{k} \left(y_{i-1},y_{i},x,i\right)\end{aligned} s(x,y)=Si=1n+1k=1Kfk(yi1,yi,x,i)其中, S S S是一个常数。选取足够大的常数 S S S使得对训练数据集的所有数据 ( x , y ) \left(x,y\right) (x,y) s ( x , y ) ≥ 0 s\left(x,y\right) \geq 0 s(x,y)0成立。这时特征总数可取 S S S

对转移特征 t k t_{k} tk δ k \delta_{k} δk的更新方程 ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) exp ⁡ ( δ k S ) = E P ~ [ t k ] δ k = 1 S log ⁡ E P ~ [ t k ] E P [ t k ] \begin{aligned} & \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right)\exp\left(\delta_{k}S\right)=E_{\tilde{P}} \left[t_{k}\right] \\ & \delta_{k}=\dfrac{1}{S} \log \dfrac{E_{\tilde{P}}\left[t_{k}\right]}{E_{P}\left[t_{k}\right]}\end{aligned} x,yP~(x)P(yx)i=1n+1tk(yi1,yi,x,i)exp(δkS)=EP~[tk]δk=S1logEP[tk]EP~[tk]其中, E P [ t k ] = ∑ x P ~ ( x ) ∑ i = 1 n + 1 ∑ y i − 1 , y i t k ( y i − 1 , y i , x , i ) α i − 1 T ( y i − 1 ∣ x ) M i ( y i − 1 , y i ∣ x ) β i ( y i ∣ x ) Z ( x ) \begin{aligned} & E_{P} \left[t_{k}\right]=\sum_{x} \tilde{P}\left(x\right) \sum_{i=1}^{n+1} \sum_{y_{i-1},y_{i}} t_{k}\left(y_{i-1},y_{i},x,i\right) \dfrac{\alpha_{i-1}^{T}\left(y_{i-1}|x\right) M_{i}\left(y_{i-1},y_{i}|x\right)\beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)} \end{aligned} EP[tk]=xP~(x)i=1n+1yi1,yitk(yi1,yi,x,i)Z(x)αi1T(yi1x)Mi(yi1,yix)βi(yix)

对状态特征 s l s_{l} sl δ k \delta_{k} δk的更新方程 ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n s l ( y i , x , i ) exp ⁡ ( δ K 1 S ) = E P ~ [ s l ] δ K 1 + l = 1 S log ⁡ E P ~ [ s l ] E P [ s l ] \begin{aligned} & \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right)\exp\left(\delta_{K_{1}}S\right)=E_{\tilde{P}} \left[s_{l}\right] \\ & \delta_{K_{1}+l}=\dfrac{1}{S} \log \dfrac{E_{\tilde{P}}\left[s_{l}\right]}{E_{P}\left[s_{l}\right]}\end{aligned} x,yP~(x)P(yx)i=1nsl(yi,x,i)exp(δK1S)=EP~[sl]δK1+l=S1logEP[sl]EP~[sl]其中, E P [ s l ] = ∑ x P ~ ( x ) ∑ i = 1 n ∑ y i − 1 , y i s l ( y i , x , i ) α i T ( y i − 1 ∣ x ) β i ( y i ∣ x ) Z ( x ) \begin{aligned} & E_{P} \left[s_{l}\right]=\sum_{x} \tilde{P}\left(x\right) \sum_{i=1}^{n} \sum_{y_{i-1},y_{i}} s_{l}\left(y_{i},x,i\right) \dfrac{\alpha_{i}^{T}\left(y_{i-1}|x\right) \beta_{i}\left(y_{i}|x\right)}{Z\left(x\right)} \end{aligned} EP[sl]=xP~(x)i=1nyi1,yisl(yi,x,i)Z(x)αiT(yi1x)βi(yix)

算法 T T T是解决算法 S S S每步迭代增量向量变大,算法收敛变慢问题。对每个观测序列 x x x计算其特征总数最大值 T ( x ) T\left(x\right) T(x) T ( x ) = max ⁡ y T ( x , y ) = t \begin{aligned} \\& T\left(x\right) = \max_{y} T\left(x,y\right)=t\end{aligned} T(x)=ymaxT(x,y)=t

关于转移特征参数的更新方程 E P ~ [ t k ] = ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) exp ⁡ ( δ k T ( x , y ) ) = ∑ x P ~ ( x ) ∑ y P ( y ∣ x ) ∑ i = 1 n + 1 t k ( y i − 1 , y i , x , i ) exp ⁡ ( δ k T ( x , y ) ) = ∑ x P ~ ( x ) a k , t exp ⁡ ( δ k ⋅ t ) = ∑ t = 0 T m a x a k , t β k t \begin{aligned} & E_{\tilde{P}} \left[t_{k}\right]=\sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right)\exp\left(\delta_{k}T\left(x,y\right)\right) \\ & = \sum_{x} \tilde{P} \left(x\right) \sum_{y} P\left(y|x\right) \sum_{i=1}^{n+1} t_{k}\left(y_{i-1},y_{i},x,i\right)\exp\left(\delta_{k}T\left(x,y\right)\right) \\ & = \sum_{x} \tilde{P}\left(x\right) a_{k,t} \exp\left(\delta_k \cdot t\right) \\ & = \sum_{t=0}^{T_{max}} a_{k,t} \beta_{k}^{t} \end{aligned} EP~[tk]=x,yP~(x)P(yx)i=1n+1tk(yi1,yi,x,i)exp(δkT(x,y))=xP~(x)yP(yx)i=1n+1tk(yi1,yi,x,i)exp(δkT(x,y))=xP~(x)ak,texp(δkt)=t=0Tmaxak,tβkt其中, a k , t a_{k,t} ak,t是特征 t k t_{k} tk的期望, δ k = log ⁡ β k \delta_{k}=\log \beta_{k} δk=logβk β k \beta_{k} βk是多项式方程唯一的实根,可以用牛顿法求得,从而得 δ k \delta_{k} δk

关于状态特征的参数更新方程 E P ~ [ s l ] = ∑ x , y P ~ ( x ) P ( y ∣ x ) ∑ i = 1 n s l ( y i , x , i ) exp ⁡ ( δ K 1 + l T ( x , y ) ) = ∑ x P ~ ( x ) ∑ y P ( y ∣ x ) ∑ i = 1 n s l ( y i , x , i ) exp ⁡ ( δ K 1 + l T ( x , y ) ) = ∑ x P ~ ( x ) b l , t exp ⁡ ( δ k ⋅ t ) = ∑ t = 0 T m a x b l , t γ l t \begin{aligned} & E_{\tilde{P}} \left[s_{l}\right]= \sum_{x,y} \tilde{P} \left(x\right) P\left(y|x\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right)\exp\left(\delta_{K_{1}+l}T\left(x,y\right)\right) \\ & = \sum_{x} \tilde{P} \left(x\right) \sum_{y} P\left(y|x\right) \sum_{i=1}^{n} s_{l}\left(y_{i},x,i\right)\exp\left(\delta_{K_{1}+l}T\left(x,y\right)\right) \\ & = \sum_{x} \tilde{P} \left(x\right) b_{l,t} \exp \left(\delta_{k} \cdot t\right) \\ & = \sum_{t=0}^{T_{max}} b_{l,t} \gamma_{l}^{t} \end{aligned} EP~[sl]=x,yP~(x)P(yx)i=1nsl(yi,x,i)exp(δK1+lT(x,y))=xP~(x)yP(yx)i=1nsl(yi,x,i)exp(δK1+lT(x,y))=xP~(x)bl,texp(δkt)=t=0Tmaxbl,tγlt其中, b l , t b_{l,t} bl,t是特征 s l s_{l} sl的期望, δ l = log ⁡ γ l \delta_{l}=\log \gamma_{l} δl=logγl γ l \gamma_{l} γl是多项式方程唯一的实根,可以用牛顿法求得。

5、条件随机场的预测算法

条件随机场的预测问题是给定条件随机场 P ( Y ∣ X ) P\left(Y|X\right) P(YX)和输入序列(观测序列) x x x,求条件概率最大的输出序列(标记序列) y ∗ y^{*} y,即对观测序列进行标注。 即, y ∗ = arg ⁡ max ⁡ y P w ( y ∣ x ) = arg ⁡ max ⁡ y exp ⁡ ( w ⋅ F ( y , x ) ) Z w ( x ) = arg ⁡ max ⁡ y exp ⁡ ( w ⋅ F ( y , x ) ) = arg ⁡ max ⁡ y ( w ⋅ F ( y , x ) ) \begin{aligned} & y^{*}=\arg\max_{y}P_{w}\left(y|x\right) \\ & = \arg\max_{y} \dfrac{\exp \left(w \cdot F\left(y,x\right)\right)}{Z_{w}\left(x\right)} \\ & = \arg\max_{y} \exp \left(w \cdot F\left(y,x\right)\right) \\ & = \arg\max_{y} \left(w \cdot F\left(y,x\right)\right) \end{aligned} y=argymaxPw(yx)=argymaxZw(x)exp(wF(y,x))=argymaxexp(wF(y,x))=argymax(wF(y,x))其中, w = ( w 1 , w 2 , ⋯   , w K ) T F ( y , x ) = ( f 1 ( y , x ) , f 2 ( y , x ) , ⋯   , f K ( y , x ) ) T f k ( y , x ) = ∑ i = 1 n f k ( y i − 1 , y i , x , i ) , k = 1 , 2 , ⋯   , K \begin{aligned} & w=\left(w_{1},w_{2},\cdots,w_{K}\right)^{T} \\ & F\left(y,x\right)=\left(f_{1}\left(y,x\right),f_{2}\left(y,x\right),\cdots,f_{K}\left(y,x\right)\right)^{T} \\ & f_{k}\left(y,x\right)=\sum_{i=1}^{n} f_{k} \left(y_{i-1},y_{i},x,i\right),\quad \quad k=1,2,\cdots,K \end{aligned} w=(w1,w2,,wK)TF(y,x)=(f1(y,x),f2(y,x),,fK(y,x))Tfk(y,x)=i=1nfk(yi1,yi,x,i),k=1,2,,K等价的 max ⁡ y ∑ i = 1 n w ⋅ F i ( y i − 1 , y i , x ) \begin{aligned} & \max_{y} \sum_{i=1}^{n} w \cdot F_{i} \left(y_{i-1},y_{i},x\right)\end{aligned} ymaxi=1nwFi(yi1,yi,x)其中, F i ( y i − 1 , y i , x ) = ( f 1 ( y i − 1 , y i , x , i ) , f 2 ( y i − 1 , y i , x , i ) , ⋯   , f K ( y i − 1 , y i , x , i ) ) T \begin{aligned} & F_{i}\left(y_{i-1},y_{i},x\right) = \left(f_{1}\left(y_{i-1},y_{i},x,i\right),f_{2}\left(y_{i-1},y_{i},x,i\right),\cdots,f_{K}\left(y_{i-1},y_{i},x,i\right)\right)^{T}\end{aligned} Fi(yi1,yi,x)=(f1(yi1,yi,x,i),f2(yi1,yi,x,i),,fK(yi1,yi,x,i))T

条件随机场预测的维特比算法

  • 输入:模型特征函数 F ( y , x ) F\left(y,x\right) F(y,x)和权值向量 w w w,观测序列 x = ( x 1 , x 2 , ⋯   , x n ) x=\left(x_{1},x_{2},\cdots,x_{n}\right) x=(x1,x2,,xn)
  • 输出:最优序列 y ∗ = ( y 1 ∗ , y 2 ∗ , ⋯   , y n ∗ ) y^{*}=\left(y_{1}^{*},y_{2}^{*},\cdots,y_{n}^{*}\right) y=(y1,y2,,yn)

1。 初始化 δ 1 ( j ) = w ⋅ F 1 ( y 0 = s t a r t , y 1 = j , x ) , j = 1 , 2 , ⋯   , m \begin{aligned} & \delta_{1}\left(j\right)=w \cdot F_{1}\left(y_{0}=start,y_{1}=j,x\right),\quad j=1,2,\cdots,m\end{aligned} δ1(j)=wF1(y0=start,y1=j,x),j=1,2,,m
2. 递推,对 i = 2 , 3 , ⋯   , n i=2,3,\cdots,n i=2,3,,n
δ i ( l ) = max ⁡ 1 ≤ j ≤ m { δ i − 1 ( j ) + w ⋅ F i ( y i − 1 = j , y i = l , x ) } , l = 1 , 2 , ⋯   , m Ψ i ( l ) = arg ⁡ max ⁡ 1 ≤ j ≤ m { δ i − 1 ( j ) + w ⋅ F i ( y i − 1 = j , y i = l , x ) } , l = 1 , 2 , ⋯   , m \begin{aligned} & \delta_{i}\left(l\right)=\max_{1 \leq j \leq m}\left\{\delta_{i-1}\left(j\right)+w \cdot F_{i}\left(y_{i-1}=j,y_{i}=l,x\right)\right\},\quad l=1,2,\cdots,m \\ & \varPsi_{i}\left(l\right) = \arg \max_{1 \leq j \leq m}\left\{\delta_{i-1}\left(j\right)+w \cdot F_{i}\left(y_{i-1}=j,y_{i}=l,x\right)\right\},\quad l=1,2,\cdots,m\end{aligned} δi(l)=1jmmax{δi1(j)+wFi(yi1=j,yi=l,x)},l=1,2,,mΨi(l)=arg1jmmax{δi1(j)+wFi(yi1=j,yi=l,x)},l=1,2,,m
3. 终止 max ⁡ y ( w ⋅ F ( y , x ) ) = max ⁡ 1 ≤ j ≤ m δ n ( j ) y n ∗ = arg ⁡ max ⁡ 1 ≤ j ≤ m δ n ( j ) \begin{aligned} & \max_{y} \left(w \cdot F\left(y,x\right)\right)=\max_{1 \leq j \leq m} \delta_{n}\left(j\right) \\ & y_{n}^{*}=\arg \max_{1 \leq j \leq m}\delta_{n}\left(j\right) \end{aligned} ymax(wF(y,x))=1jmmaxδn(j)yn=arg1jmmaxδn(j)
4. 返回路径 y i ∗ = Ψ i + 1 ( y i + 1 ∗ ) , i = n − 1 , n − 2 , ⋯   , 1 \begin{aligned} \\& y_{i}^{*}=\varPsi_{i+1}\left(y_{i+1}^{*}\right),\quad i=n-1,n-2,\cdots,1\end{aligned} yi=Ψi+1(yi+1),i=n1,n2,,1最优路径 y i ∗ = ( y 1 ∗ , y 2 ∗ , ⋯   , y n ∗ ) \begin{aligned} & y_{i}^{*}=\left(y_{1}^{*},y_{2}^{*},\cdots,y_{n}^{*}\right)\end{aligned} yi=(y1,y2,,yn)

6、概要总结

  1. 概率无向图模型是由无向图表示的联合概率分布。无向图上的结点之间的连接关系表示了联合分布的随机变量集合之间的条件独立性,即马尔可夫性。因此,概率无向图模型也称为马尔可夫随机场。

    概率无向图模型或马尔可夫随机场的联合概率分布可以分解为无向图最大团上的正值函数的乘积的形式。

  2. 条件随机场是给定输入随机变量 X X X条件下,输出随机变量 Y Y Y的条件概率分布模型, 其形式为参数化的对数线性模型。条件随机场的最大特点是假设输出变量之间的联合概率分布构成概率无向图模型,即马尔可夫随机场。条件随机场是判别模型。

  3. 线性链条件随机场是定义在观测序列与标记序列上的条件随机场。线性链条件随机场一般表示为给定观测序列条件下的标记序列的条件概率分布,由参数化的对数线性模型表示。模型包含特征及相应的权值,特征是定义在线性链的边与结点上的。线性链条件随机场的数学表达式是 P ( y ∣ x ) = 1 Z ( x ) exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) P(y | x)=\frac{1}{Z(x)} \exp \left(\sum_{i, k} \lambda_{k} t_{k}\left(y_{i-1}, y_{i}, x, i\right)+\sum_{i, l} \mu_{l} s_{l}\left(y_{i}, x, i\right)\right) P(yx)=Z(x)1expi,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)

    其中, Z ( x ) = ∑ y exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) Z(x)=\sum_{y} \exp \left(\sum_{i, k} \lambda_{k} t_{k}\left(y_{i-1}, y_{i}, x, i\right)+\sum_{i, l} \mu_{l} s_{l}\left(y_{i}, x, i\right)\right) Z(x)=yexpi,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)

  4. 线性链条件随机场的概率计算通常利用前向-后向算法。

  5. 条件随机场的学习方法通常是极大似然估计方法或正则化的极大似然估计,即在给定训练数据下,通过极大化训练数据的对数似然函数以估计模型参数。具体的算法有改进的迭代尺度算法、梯度下降法、拟牛顿法等。

  6. 线性链条件随机场的一个重要应用是标注。维特比算法是给定观测序列求条件概率最大的标记序列的方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值