最大后验概率是在最大似然后面乘上一个先验概率,求的仍是一个具体值,但最大似然与最大后验有很大不同。
在最大似然估计中,用的是 p ( t ∣ w , X , δ 2 ) p(t|w,\textbf X,\delta^2) p(t∣w,X,δ2)乘在一起求最大值(极大似然的意义),然后导等于0求出 w w w很好理解,求出来的 w w w就是最应该的值,
在最大后验概率估计中,求的是 P ( w ∣ t , X , δ 2 ) P(w|t,\textbf X,\delta^2) P(w∣t,X,δ2)的最大值,但是仍然通过求导等于0得出参数解,究其原因,应该就是在于高斯函数的求导等于0的地方,同时也是最大的,极值即最值。先验概率分布起到一个提升起跑线的作用,毕竟 P ( X ) P(X) P(X)是自己定的,在最大似然估计中,它被设定成了1(表示完全没有任何信息),但是并没有分母,实际上,最大后验概率就是没有分母的,因此不能求最大值,只能求导来。
最大后验估计一般是这样的:
θ
=
a
r
g
m
a
x
θ
P
(
θ
∣
D
)
∼
a
r
g
m
a
x
θ
P
(
D
∣
θ
)
P
(
θ
)
=
a
r
g
m
a
x
θ
l
o
g
P
(
D
∣
θ
)
+
l
o
g
P
(
θ
)
\theta = argmax_\theta P(\theta|D)\sim argmax_\theta P(D|\theta)P(\theta)\\ =argmax_\theta logP(D|\theta)+logP(\theta)
θ=argmaxθP(θ∣D)∼argmaxθP(D∣θ)P(θ)=argmaxθlogP(D∣θ)+logP(θ)
然后求导等于0求出 w w w。鉴于最大似然也是先取 log \log log再求导,最大后验的本质是多了一个 l o g P ( θ ) logP(\theta) logP(θ)项而已。
每日小常识:
信息量的定义为:
I
(
x
)
=
−
l
o
g
(
p
(
x
)
)
I(x)=-log(p(x))
I(x)=−log(p(x))
例如当事件必定发生时,其信息量为0。而熵值越大,表明这个系统的不确定性就越大:
H
(
x
)
=
−
∑
i
=
1
n
p
(
x
i
)
l
o
g
(
p
(
x
i
)
)
H(x)=-\sum^n_{i=1}p(x_i)log(p(x_i))
H(x)=−i=1∑np(xi)log(p(xi))
就是概率与信息量的乘积之和。
相对熵也成为KL散度,用来比较两条曲线是否一致是最好的(之前是用来检验简繁体字)(了解即可,用处不大):
D
K
L
(
p
∣
∣
q
)
=
∑
i
p
(
x
i
)
l
o
g
(
p
(
x
i
)
q
(
x
i
)
)
D_{KL}(p||q)=\sum_ip(x_i)log(\frac{p(x_i)}{q_(x_i)})
DKL(p∣∣q)=i∑p(xi)log(q(xi)p(xi))
交叉熵,设
p
(
x
)
,
q
(
x
)
p(x),q(x)
p(x),q(x)分别是随机变量
X
X
X的两个概率分布,其中
p
(
x
)
p(x)
p(x)是目标分布,
p
p
p和
q
q
q的交叉熵可以看作使用分布
q
(
x
)
q(x)
q(x)表示目标分布
p
(
x
)
p(x)
p(x)的困难程度:
H
(
p
,
q
)
=
−
∑
i
p
(
x
i
)
l
o
g
q
(
x
i
)
H(p,q)=-\sum_ip(x_i)logq(x_i)
H(p,q)=−i∑p(xi)logq(xi)
明白了,就是普通熵的一个变种。实际上:
H
(
p
,
q
)
=
D
K
L
(
p
,
q
)
+
H
(
p
)
H(p,q)=D_{KL}(p,q)+H(p)
H(p,q)=DKL(p,q)+H(p)
通常
p
(
x
)
p(x)
p(x)是训练数据,是固定的,即
H
(
p
)
H(p)
H(p)是一个常量,这样算交叉熵也就等价于最小化这两个分布的相对熵
D
K
L
(
p
∣
∣
q
)
D_{KL}(p||q)
DKL(p∣∣q),
q
(
x
)
q(x)
q(x)为训练得到的分布。注意下面的最大似然平均值:
1
m
∑
i
m
l
o
g
(
x
i
,
θ
)
=
E
(
l
o
g
(
x
,
θ
)
)
\frac{1}{m}\sum^m_ilog(x_i,\theta)=E(log(x,\theta))
m1i∑mlog(xi,θ)=E(log(x,θ))
θ M L = a r g m a x θ E x − P ( l o g ( x , θ ) ) = a r g m a x θ E x − P ( − l o g ( x , θ ) ) \theta_{ML}={argmax}_\theta E_{x-P}(log(x,\theta))\\ ={argmax}_\theta E_{x-P}(-log(x,\theta)) θML=argmaxθEx−P(log(x,θ))=argmaxθEx−P(−log(x,θ))
对右边取负号的意义是将最大化变成最小化运算。