MEMM(Maximum-entry Markov models)最大熵模型
好,说完了,HMM,我们来看看MEMM。
MEMM和HMM第一个不同的地方是,HMM是生成式模型,而MEMM是判别式模型,它是对如下概率进行建模:
p(y1,y2,...,yn|x1,x2,...,xn)
p
(
y
1
,
y
2
,
.
.
.
,
y
n
|
x
1
,
x
2
,
.
.
.
,
x
n
)
具体是建模方法如下:
p(y1,y2,...,yn|x1,x2,...,xn)=∏i=1np(si|s1,...,si−1,,x1,...,xn)=∏i=1np(si|si−1,,x1,...,xn)
p
(
y
1
,
y
2
,
.
.
.
,
y
n
|
x
1
,
x
2
,
.
.
.
,
x
n
)
=
∏
i
=
1
n
p
(
s
i
|
s
1
,
.
.
.
,
s
i
−
1
,
,
x
1
,
.
.
.
,
x
n
)
=
∏
i
=
1
n
p
(
s
i
|
s
i
−
1
,
,
x
1
,
.
.
.
,
x
n
)
第一个等式是链式法则,很容易懂。我们观察第二个等式,发现MEMM做了很HMM很类似的一个假设就是第i个位置的状态仅和第 i1 i 1 位置的状态的有关(齐次独立性假设)。
那么 p(si|si−1,,x1,...,xn) p ( s i | s i − 1 , , x 1 , . . . , x n ) 再往下怎么弄呢?我们将这一概率形式建模成一个log-linear模型(这又是一段故事了),即:
p(si|si−1,x1,...,xn)=exp(w.ϕ(x1,...,xn,i,si−1,si)∑exp(w.ϕ(x1,...,xn,i,si−1,s′)
p
(
s
i
|
s
i
−
1
,
x
1
,
.
.
.
,
x
n
)
=
e
x
p
(
w
.
ϕ
(
x
1
,
.
.
.
,
x
n
,
i
,
s
i
−
1
,
s
i
)
∑
e
x
p
(
w
.
ϕ
(
x
1
,
.
.
.
,
x
n
,
i
,
s
i
−
1
,
s
′
)
(看来还是得说说这个log-linear, 跑不掉的 手动笑哭)
到此,MEMM是建模过程就完成了,参数的估计参见log-linear,
解码,viterbi