条件随机场CRF(二)

CRF主要涉及到三个问题,标记序列概率的计算、参数的学习、序列的预测(解码),本片博文主要介绍第一个问题:标记序列概率的计算–前向后向算法,在博文中提到,在BI-LSTM-CRF模型框架的CRF层,当计算序列所有路径的总得分时就用到了前向后向算法的思想。

CRF前向后向概率计算

首先定义 α i ( y i x ) \alpha_i(y_i|x) 表示序列位置 i i 的标记是 y i y_i 时,在位置 i i 之前的部分标记序列的非规范化概率。之所以是非规范化概率是因为我们不想加入一个不影响结果计算的规范化因子 Z ( x ) Z(x) 在分母里面。
条件随机场CRF(一)中,我们定义了下式:
M i ( y i 1 , y i x ) = e x p ( k = 1 K w k f k ( y i 1 , y i , x , i ) ) M_i(y_{i-1},y_i |x) = exp(\sum\limits_{k=1}^Kw_kf_k(y_{i-1},y_i, x,i))
这个式子定义了在给定 y i 1 y_{i−1} 时,从 y i 1 y_{i−1} 转移到 y i y_i 的非规范化概率。
这样,我们很容易得到序列位置 i + 1 i+1 的标记是 y i + 1 y_{i+1} 时,在位置 i + 1 i+1 之前的部分标记序列的非规范化概率 α i + 1 ( y i + 1 x ) \alpha_{i+1}(y_{i+1}|x) 的递推公式:
α i + 1 ( y i + 1 x ) = α i ( y i x ) M i + 1 ( y i + 1 , y i x )      i = 1 , 2 , . . . , n + 1 \alpha_{i+1}(y_{i+1}|x) = \alpha_i(y_i|x)M_{i+1}(y_{i+1},y_i|x) \;\; i=1,2,...,n+1
同样的,我们定义 β i ( y i x ) \beta_i(y_i|x) 表示序列位置 i i 的标记是 y i y_i 时,在位置 i i 之后的从 i + 1 i+1 n n 的部分标记序列的非规范化概率。这样,我们很容易得到序列位置 i + 1 i+1 的标记是 y i + 1 y_{i+1} 时,在位置 i i 之后的部分标记序列的非规范化概率 β i ( y i x ) \beta_{i}(y_{i}|x) 的递推公式:
β i ( y i x ) = M i + 1 ( y i , y i + 1 x ) β i + 1 ( y i + 1 x ) \beta_{i}(y_{i}|x) = M_{i+1}(y_i,y_{i+1}|x)\beta_{i+1}(y_{i+1}|x)
有了前向后向概率的定义和计算方法,我们就很容易计算序列位置 i i 的标记是 y i y_i 时的条件概率 P ( y i x ) P(y_i|x) :
P ( y i x ) = α i T ( y i x ) β i ( y i x ) Z ( x ) = α i T ( y i x ) β i ( y i x ) α n T ( x ) 1 P(y_i|x) = \frac{\alpha_i^T(y_i|x)\beta_i(y_i|x)}{Z(x)} = \frac{\alpha_i^T(y_i|x)\beta_i(y_i|x)}{ \alpha_{n}^T(x) \bullet \mathbf{1}}
也容易计算序列位置 i i 的标记是 y i y_i ,位置 i 1 i−1 的标记是 y i 1 y_{i−1} 时的条件概率 P ( y i 1 , y i x ) P(y_{i-1},y_i|x) :
P ( y i 1 , y i x ) = α i 1 T ( y i 1 x ) M i ( y i 1 , y i x ) β i ( y i x ) Z ( x ) = α i 1 T ( y i 1 x ) M i ( y i 1 , y i x ) β i ( y i x ) α n T ( x ) 1 P(y_{i-1},y_i|x) = \frac{\alpha_{i-1}^T(y_{i-1}|x)M_i(y_{i-1},y_i|x)\beta_i(y_i|x)}{Z(x)} = \frac{\alpha_{i-1}^T(y_{i-1}|x)M_i(y_{i-1},y_i|x)\beta_i(y_i|x)}{ \alpha_{n}^T(x) \bullet \mathbf{1}}
以上就是精简的CRF的前向后向算法。

发布了24 篇原创文章 · 获赞 2 · 访问量 1167

猜你喜欢

转载自blog.csdn.net/qq_40176087/article/details/104044666