极大似然估计与交叉熵
概统学了没多久又忘了,没理解透彻,这次稍微复习一下。
一、 极大似然估计
在已知试验结果的情况下,用来估计满足这些样本分布的参数,把可能性最大的参数作为真实的参数估计。
p
(
x
∣
θ
)
p(x|\theta)
p(x∣θ),
x
x
x表示样本,
θ
\theta
θ表示参数,样本已经发生了,我们要求的就是一个参数,让样本发生的概率最大,即
p
(
x
∣
θ
)
p(x|\theta)
p(x∣θ)最大。如果
x
x
x为离散型随机变量,即{
x
1
,
x
2
,
x
3
.
.
.
,
x
n
−
1
,
x
n
x_1,x_2,x_3...,x_{n-1},x_n
x1,x2,x3...,xn−1,xn} ,那么
p
(
x
∣
θ
)
p(x|\theta)
p(x∣θ)可以表示为
∏
i
=
1
n
p
(
x
i
∣
θ
)
\displaystyle\prod_{i=1}^{n} p(x_i|\theta)
i=1∏np(xi∣θ),连续的话就改为密度函数即可,计算过程中往往会取对数简化计算。
二、熵
信息熵定义
假设 X X X是一个离散型随机变量,其取值集合为 χ χ χ,概率分布函数 p ( x ) = P r ( X = x ) , x ∈ χ p(x)=P_r(X=x),x∈χ p(x)=Pr(X=x),x∈χ,则定义事件 X = x 0 X=x_0 X=x0的信息量为: I ( x 0 ) = − l o g ( p ( x 0 ) ) I(x_0)=−log(p(x_0)) I(x0)=−log(p(x0))
则 信息熵 H ( X ) = − ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) H(X)=-\displaystyle\sum_{i=1}^{n}p(xi)log(p(xi)) H(X)=−i=1∑np(xi)log(p(xi))
而条件熵 H ( Y ∣ X ) = ∑ x ∈ X P ( x ) H ( Y ∣ x ) = − ∑ x ∈ X P ( x ) ∑ y ∈ Y P ( y ∣ x ) l o g P ( y ∣ x ) H(Y|X)=\displaystyle\sum_{x\in X}P(x)H(Y|x)=-\displaystyle\sum_{x\in X}P(x)\displaystyle\sum_{y\in Y}P(y|x)logP(y|x) H(Y∣X)=x∈X∑P(x)H(Y∣x)=−x∈X∑P(x)y∈Y∑P(y∣x)logP(y∣x)。信息熵减去条件熵即是互信息,这就是ID3决策树的分类依据。
预测输出即 Sigmoid 函数的输出表征了当前样本标签为 1 的概率:
y
r
=
P
(
y
=
1
∣
x
)
y_r=P(y=1|x)
yr=P(y=1∣x)
很明显,当前样本标签为 0 的概率就可以表达成:
1
−
y
r
=
P
(
y
=
0
∣
x
)
1−y_r=P(y=0|x)
1−yr=P(y=0∣x)
重点来了,如果我们从极大似然性的角度出发,把上面两种情况整合到一起:
P
(
y
∣
x
;
θ
)
=
y
r
y
⋅
(
1
−
y
r
)
1
−
y
P(y|x;\theta)=y_r^y⋅(1−y_r)^{1−y}
P(y∣x;θ)=yry⋅(1−yr)1−y
极大似然估计就是说,
θ
,
x
\theta,x
θ,x是已经确定的,我们要让上面的式子最大,为了方便计算,左右取对数,如果左右乘负号,就变成了我们熟悉的交叉熵的形式了。
交叉熵
交叉熵是由相对熵变形过来的。
多分类问题
在多分类问题中,我们的输出不再是一个,往往是多个值,在神经网络中控制输出层结点的个数。通过softmax函数后(归一化,各类概率综合为1),再用交叉熵的形式求损失函数。这个和之前讲的二分类有一定关联,比如是第一类就不可能是第二类或第三类,可以抽象为二分类问题,因此我们使用onehot编码,计算只需相乘即可。
参考资料:
https://blog.csdn.net/tsyccnh/article/details/79163834
https://blog.csdn.net/red_stone1/article/details/80735068