条件随机场的概率计算问题
问题描述:给定条件随机场
P(Y|X)
P
(
Y
|
X
)
,输入序列x和输出序列y,计算条件概率
P(Yi=yi|x),P(Yi−1=yi−1,Yi=yi|x)
P
(
Y
i
=
y
i
|
x
)
,
P
(
Y
i
−
1
=
y
i
−
1
,
Y
i
=
y
i
|
x
)
以及相应的数学期望的问题。
一、前向-后向算法
对每个指标
i=0,1,⋯,n+1
i
=
0
,
1
,
⋯
,
n
+
1
,定义前向向量
αi(x)
α
i
(
x
)
:
对于
α0(y|x)
α
0
(
y
|
x
)
,其在y开始时为1,其余为0,
递推公式有:
αTi(x)=αTi−1(x)Mi(x)
α
i
T
(
x
)
=
α
i
−
1
T
(
x
)
M
i
(
x
)
同理,定义类似的后向向量
βi(x)
β
i
(
x
)
,则也有:
βi(x)=Mi+1(x)βi+1(x)
β
i
(
x
)
=
M
i
+
1
(
x
)
β
i
+
1
(
x
)
由前向后向向量可得:
Z(x)=αTn(x)1=1Tβ1(x)
Z
(
x
)
=
α
n
T
(
x
)
1
=
1
T
β
1
(
x
)
这里的1均为m维列向量。
二、概率计算
三、期望值的计算
条件随机场的学习算法
问题描述:给定训练数据集,估计条件随机场参数。
条件随机场模型实际是定义在时序数据上的对数线性模型,其学习方法包括极大似然估计和正则化的极大似然估计,优化实现算法有改进的迭代尺度法、梯度下降法以及拟牛顿法。
一、改进的迭代尺度法
已知训练数据集,由此可知经验概率分布
P˜(X,Y)
P
~
(
X
,
Y
)
,可以通过极大化训练数据的对数似然函数来求模型参数。
训练数据的对数似然函数为:
L(w)=LP˜(Pw)=log∏x,yPw(y|x)P˜(x,y)=∏x,yP˜(x,y)logPw(y|x)
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
)
当
Pw
P
w
是一个条件随机场模型时,对数似然函数变为:
L(w)=∑j=1N∑k=1Kwkfk(yj,xj)−∑j=1NlogZw(xj)
L
(
w
)
=
∑
j
=
1
N
∑
k
=
1
K
w
k
f
k
(
y
j
,
x
j
)
−
∑
j
=
1
N
log
Z
w
(
x
j
)
改进的迭代尺度法是通过迭代的方法不断的优化对数似然函数改变量的下界,达到极大化对数似然函数的目的。具体推导过程见《统计学习方法》第202页。
二、拟牛顿法
见《统计学习方法》第205页