条件随机场(CRF)是判别式无向图模型,解决 MEMM 的标签偏置问题。通过全局归一化建模条件概率 $p(Y|X)$。
背景对比
| 模型 | 类型 | 建模对象 |
|---|---|---|
| HMM | 生成式 | $p(X,Y)$ |
| MEMM | 判别式 | $p(Y |
| CRF | 判别式 | $p(Y |
CRF 概率密度函数
$$p(Y|X)=\frac{1}{Z(x,\theta)}\exp[\theta^TH(y_t,y_{t-1},x)]$$
其中:
$$H=\left(\sum_{t=1}^Tf(y_{t-1},y_t,x), \sum_{t=1}^Tg(y_t,x)\right)^T$$
- $f$:转移特征函数
- $g$:状态特征函数
三个问题
| 问题 | 方法 |
|---|---|
| 参数估计 | 梯度上升 |
| 边缘概率 | 前向后向算法 |
| 译码 | Viterbi 算法 |
边缘概率
$$p(y_t=i|x)=\frac{1}{Z}\alpha_t(i)\beta_t(i)$$
前向递推:
$$\alpha_t(i)=\sum_{j\in S}\phi_t(y_{t-1}=j,y_t=i,x)\alpha_{t-1}(j)$$
后向递推:
$$\beta_t(i)=\sum_{j\in S}\phi_{t+1}(y_t=i,y_{t+1}=j,x)\beta_{t+1}(j)$$
参数估计
$$\nabla_\lambda L=\sum_{i=1}^N\sum_{t=1}^T[f(y_{t-1},y_t,x^i)-\sum_{y_{t-1},y_t}p(y_{t-1},y_t|x^i)f(y_{t-1},y_t,x^i)]$$
使用梯度上升求解。
译码
采用动态规划(Viterbi 算法),类似 HMM。
张芷铭的个人博客
Comments