PRML学习总结(1)——Introduction
1.1 Example: Polynomial Curve Fitting
对于训练数据集
x
≡
(
x
1
,
…
,
x
N
)
T
,
t
≡
(
t
1
,
…
,
t
N
)
T
\mathbf { x } \equiv \left( x _ { 1 } , \ldots , x _ { N } \right) ^ { \mathrm { T } },\mathbf { t } \equiv \left( t _ { 1 } , \ldots , t _ { N } \right) ^ { \mathrm { T } }
x≡(x1,…,xN)T,t≡(t1,…,tN)T,其由
s
i
n
(
2
π
x
)
sin(2\pi x)
sin(2πx)加上一定的噪声生成,采用多项式曲线拟合:
y
(
x
,
w
)
=
w
0
+
w
1
x
+
w
2
x
2
+
…
+
w
M
x
M
=
∑
j
=
0
M
w
j
x
j
y ( x , \mathbf { w } ) = w _ { 0 } + w _ { 1 } x + w _ { 2 } x ^ { 2 } + \ldots + w _ { M } x ^ { M } = \sum _ { j = 0 } ^ { M } w _ { j } x ^ { j }
y(x,w)=w0+w1x+w2x2+…+wMxM=j=0∑Mwjxj
其中
M
M
M代表改模型的最高次幂,也就是代表模型的复杂度。有了数据跟模型后,接下来就是需要训练模型,而训练模型需要一个目标函数,我们可以最小化以下目标函数:
E
(
w
)
=
1
2
∑
n
=
1
N
{
y
(
x
n
,
w
)
−
t
n
}
2
E ( \mathbf { w } ) = \frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ y \left( x _ { n } , \mathbf { w } \right) - t _ { n } \right\} ^ { 2 }
E(w)=21n=1∑N{y(xn,w)−tn}2
不难发现,该目标函数的最小值为0,当且仅当曲线穿过所有训练数据时才满足最小值。而且该函数为关于
w
\mathbf { w }
w的二次函数,那么在最小化该函数时很容易得到一个解析解得
w
⋆
\mathbf { w } ^ { \star }
w⋆。
现在需要关注另一个模型,那就是模型选择问题,即
M
M
M到底选择多少才合适,不同的
M
M
M,模型的表达能力也不同,太小则模型的拟合能力不足,太大则会过拟合,如下图所示。
当过拟合后,对于新来的测试数据,我们将会得到非常差的结果,这并不是我们想要的,这归根结底就是在模型选择上出了问题。为了定量地分析在新的数据上,模型的泛化能力,通常采用均方根误差进行度量:
E
R
M
S
=
2
E
(
w
⋆
)
/
N
E _ { \mathrm { RMS } } = \sqrt { 2 E \left( \mathbf { w } ^ { \star } \right) / N }
ERMS=2E(w⋆)/N
利用此误差,可以得到训练数据和测试数据的
E
R
M
S
E _ { \mathrm { RMS } }
ERMS:
从上图可以发现,当
M
M
M较小时,模型的拟合能力不足,导致测试和训练的误差都很大,当
M
=
9
M=9
M=9时,模型就会陷入过拟合,即训练误差为0,而测试误差很大,最合适的
M
∈
[
3
,
8
]
M\in[3,8]
M∈[3,8]。
我们的数据最理想的拟合函数应该为
s
i
n
(
2
π
x
)
sin(2\pi x)
sin(2πx),而该函数展开后,其幂次数应该是包括了无穷多次幂,按照我们的想法,模型应该是随着
M
M
M的增加,拟合得越好。但是却出现了过拟合,我们可以进一步探索我们模型中所学出来的最优值为多少。
从结果可以看出,随着
M
M
M的增加,所得到的参数的绝对值很越来越大的,正是在这样变化大的参数下,导致最终拟合的曲线波动很大。我们也可以进一步看看模型与训练数据量的关系
从上图可以发现,增大训练数据量可以有效地减少过拟合。但是现实生活中我们的数据是很有限的,因此如何让模型保持一定的复杂性和灵活性,且不会出现过拟合是一个需要解决的问题。正则化正好可以解决这个问题。也就是在目标函数中加入对参数的惩罚项:
E
~
(
w
)
=
1
2
∑
n
=
1
N
{
y
(
x
n
,
w
)
−
t
n
}
2
+
λ
2
∥
w
∥
2
\widetilde { E } ( \mathbf { w } ) = \frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ y \left( x _ { n } , \mathbf { w } \right) - t _ { n } \right\} ^ { 2 } + \frac { \lambda } { 2 } \| \mathbf { w } \| ^ { 2 }
E
(w)=21n=1∑N{y(xn,w)−tn}2+2λ∥w∥2
其中
λ
\lambda
λ控制正则项和原目标函数之间的重要性。这样就不可避免地为模型又引入了一个参数,在
M
=
9
M=9
M=9时,不同的
λ
\lambda
λ拟合结果如下
从上图可以看出,当
λ
\lambda
λ太大时,即参数的绝对值大小将会在很大程度上得到惩罚,因此最后拟合结果近似一条在0附近的线。更加定量地看待引入正则项的好处,得到如下表
可以看出引入正则项能够在一定程度上限制模型的复杂度,从而能够减少过拟合。在确定
M
,
λ
M,\lambda
M,λ时,往往将数据分为训练数据和验证数据,但是对于数据非常少的情况,这种方式将会很“浪费”有效的数据!
1.2 Probability Theory
这一部分主要介绍一些概率的基本概念,这儿简要提出这几个概念,详细的内容参照书中内容。
The Rules of probability
sum rule
p
(
X
)
=
∑
Y
p
(
X
,
Y
)
\text { sum rule } \quad p ( X ) = \sum _ { Y } p ( X , Y )
sum rule p(X)=Y∑p(X,Y)
product rule
p
(
X
,
Y
)
=
p
(
Y
∣
X
)
p
(
X
)
\text { product rule } \quad p ( X , Y ) = p ( Y | X ) p ( X )
product rule p(X,Y)=p(Y∣X)p(X)
Bayes’ Theorem
p
(
Y
∣
X
)
=
p
(
X
∣
Y
)
p
(
Y
)
p
(
X
)
p ( Y | X ) = \frac { p ( X | Y ) p ( Y ) } { p ( X ) }
p(Y∣X)=p(X)p(X∣Y)p(Y)
posterior
∝
likelihood
×
prior
\text { posterior } \propto \text { likelihood } \times \text { prior }
posterior ∝ likelihood × prior
Curve fitting re-visited
介绍了一些基本的概率概念后,现在再回看之前的曲线拟合问题,我们可以建模如下
p
(
t
∣
x
,
w
,
β
)
=
N
(
t
∣
y
(
x
,
w
)
,
β
−
1
)
p ( t | x , \mathbf { w } , \beta ) = \mathcal { N } \left( t | y ( x , \mathbf { w } ) , \beta ^ { - 1 } \right)
p(t∣x,w,β)=N(t∣y(x,w),β−1)
可以形象地表示为下图
对于模型中的参数
w
,
β
\mathbf { w },\beta
w,β,我们利用训练数据
{
x
,
t
}
\{ \mathbf { x } , \mathbf { t } \}
{x,t}进行最大似然估计,一般来说我们都假设数据是独立的,因此
p
(
t
∣
x
,
w
,
β
)
=
∏
n
=
1
N
N
(
t
n
∣
y
(
x
n
,
w
)
,
β
−
1
)
p ( \mathbf { t } | \mathbf { x } , \mathbf { w } , \beta ) = \prod _ { n = 1 } ^ { N } \mathcal { N } \left( t _ { n } | y \left( x _ { n } , \mathbf { w } \right) , \beta ^ { - 1 } \right)
p(t∣x,w,β)=n=1∏NN(tn∣y(xn,w),β−1)
转化为log
ln
p
(
t
∣
x
,
w
,
β
)
=
−
β
2
∑
n
=
1
N
{
y
(
x
n
,
w
)
−
t
n
}
2
+
N
2
ln
β
−
N
2
ln
(
2
π
)
\ln p ( \mathbf { t } | \mathbf { x } , \mathbf { w } , \beta ) = - \frac { \beta } { 2 } \sum _ { n = 1 } ^ { N } \left\{ y \left( x _ { n } , \mathbf { w } \right) - t _ { n } \right\} ^ { 2 } + \frac { N } { 2 } \ln \beta - \frac { N } { 2 } \ln ( 2 \pi )
lnp(t∣x,w,β)=−2βn=1∑N{y(xn,w)−tn}2+2Nlnβ−2Nln(2π)
对于
w
\mathbf{w}
w,发现优化的目标与一开始的目标函数一致,这儿记为
w
M
L
\mathbf { w } _ { \mathrm { ML } }
wML。对
β
\beta
β求导,可以得到
1
β
M
L
=
1
N
∑
n
=
1
N
{
y
(
x
n
,
w
M
L
)
−
t
n
}
2
\frac { 1 } { \beta _ { \mathrm { ML } } } = \frac { 1 } { N } \sum _ { n = 1 } ^ { N } \left\{ y \left( x _ { n } , \mathbf { w } _ { \mathrm { ML } } \right) - t _ { n } \right\} ^ { 2 }
βML1=N1n=1∑N{y(xn,wML)−tn}2
当确定了
w
,
β
\mathbf { w },\beta
w,β之后,就可以得到预测概率
p
(
t
∣
x
,
w
M
L
,
β
M
L
)
=
N
(
t
∣
y
(
x
,
w
M
L
)
,
β
M
L
−
1
)
p \left( t | x , \mathbf { w } _ { \mathrm { ML } } , \beta _ { \mathrm { ML } } \right) = \mathcal { N } \left( t | y \left( x , \mathbf { w } _ { \mathrm { ML } } \right) , \beta _ { \mathrm { ML } } ^ { - 1 } \right)
p(t∣x,wML,βML)=N(t∣y(x,wML),βML−1)
以上的方法为最大似然估计(点估计)ML,接下来我们在参数上引入一个先验概率
p
(
w
∣
α
)
=
N
(
w
∣
0
,
α
−
1
I
)
=
(
α
2
π
)
(
M
+
1
)
/
2
exp
{
−
α
2
w
T
w
}
p ( \mathbf { w } | \alpha ) = \mathcal { N } \left( \mathbf { w } | \mathbf { 0 } , \alpha ^ { - 1 } \mathbf { I } \right) = \left( \frac { \alpha } { 2 \pi } \right) ^ { ( M + 1 ) / 2 } \exp \left\{ - \frac { \alpha } { 2 } \mathbf { w } ^ { \mathrm { T } } \mathbf { w } \right\}
p(w∣α)=N(w∣0,α−1I)=(2πα)(M+1)/2exp{−2αwTw}
其中
α
\alpha
α为超参数。利用贝叶斯公式,我们可以得到
β
\beta
β的后验概率
p
(
w
∣
x
,
t
,
α
,
β
)
∝
p
(
t
∣
x
,
w
,
β
)
p
(
w
∣
α
)
p ( \mathbf { w } | \mathbf { x } , \mathbf { t } , \alpha , \beta ) \propto p ( \mathbf { t } | \mathbf { x } , \mathbf { w } , \beta ) p ( \mathbf { w } | \alpha )
p(w∣x,t,α,β)∝p(t∣x,w,β)p(w∣α)
需要说明的一点是,此时的
β
\beta
β我们也考虑为超参。也是一个预先给定的值。不像之前通过最大似然估计出来。
在后验上进行最大点估计,也就是最大后验估计(点估计),MAP。最终结果为
β
2
∑
n
=
1
N
{
y
(
x
n
,
w
)
−
t
n
}
2
+
α
2
w
T
w
\frac { \beta } { 2 } \sum _ { n = 1 } ^ { N } \left\{ y \left( x _ { n } , \mathbf { w } \right) - t _ { n } \right\} ^ { 2 } + \frac { \alpha } { 2 } \mathbf { w } ^ { \mathrm { T } } \mathbf { w }
2βn=1∑N{y(xn,w)−tn}2+2αwTw
这个结果正是之前说的正则化方式!!!
无论是ML还是MAP,它们都是点估计!点估计有个致命的弱点是会导致过拟合!而全贝叶斯的观点是,我们不需要对参数进行点估计,我们只要得到其后验概率,然后在预测概率上,我们利用积分积掉参数部分,这样就不会涉及点估计就能得到预测概率!
p
(
t
∣
x
,
x
,
t
)
=
∫
p
(
t
∣
x
,
w
)
p
(
w
∣
x
,
t
)
d
w
p ( t | x , \mathbf { x } , \mathbf { t } ) = \int p ( t | x , \mathbf { w } ) p ( \mathbf { w } | \mathbf { x } , \mathbf { t } ) \mathrm { d } \mathbf { w }
p(t∣x,x,t)=∫p(t∣x,w)p(w∣x,t)dw
最终可得
p
(
t
∣
x
,
x
,
t
)
=
N
(
t
∥
m
(
x
)
,
s
2
(
x
)
)
m
(
x
)
=
β
ϕ
(
x
)
T
S
∑
n
=
1
N
ϕ
(
x
n
)
t
n
s
2
(
x
)
=
β
−
1
+
ϕ
(
x
)
T
S
ϕ
(
x
)
\begin{aligned} p ( t | x , \mathbf { x } , \mathbf { t } ) &= \mathcal { N } \left( t \| m ( x ) , s ^ { 2 } ( x ) \right)\\m ( x ) & = \beta \boldsymbol {\phi} ( x ) ^ { \mathrm { T } } \mathbf { S } \sum _ { n = 1 } ^ { N } \boldsymbol {\phi} \left( x _ { n } \right) t _ { n } \\ s ^ { 2 } ( x ) & = \beta ^ { - 1 } + \boldsymbol {\phi} ( x ) ^ { \mathrm { T } } \mathbf { S } \boldsymbol {\phi} ( x ) \end{aligned}
p(t∣x,x,t)m(x)s2(x)=N(t∥m(x),s2(x))=βϕ(x)TSn=1∑Nϕ(xn)tn=β−1+ϕ(x)TSϕ(x)
其中
S
−
1
=
α
I
+
β
∑
n
=
1
N
ϕ
(
x
n
)
ϕ
(
x
)
T
\mathbf { S } ^ { - 1 } = \alpha \mathbf { I } + \beta \sum _ { n = 1 } ^ { N } \boldsymbol {\phi} \left( x _ { n } \right) \boldsymbol { \phi } ( x ) ^ { \mathrm { T } }
S−1=αI+βn=1∑Nϕ(xn)ϕ(x)T
ϕ
i
(
x
)
=
x
i
for
i
=
0
,
…
,
M
\phi _ { i } ( x ) = x ^ { i } \text { for } i = 0 , \ldots , M
ϕi(x)=xi for i=0,…,M
1.3 Model Selection
在1.1中,我们发现不同的
M
M
M导致模型的泛化能力也不同,因此如何选择一个恰当的模型是一个很重要的问题。往往采用的方式为交叉验证的方式
但是这种方式最大的问题就是效率太低,需要对模型进行很多次训练!最理想的情况下就是对模型就行一次训练就能达到效果!这一类方法将在后续讲到。
1.4 The Curse of Dimensionality
为了更加深刻地了解这个问题,首先引入一个数据集
这个数据集中的数据有12个维度,且有三个类别,上图展示了
x
6
,
x
7
x_6,x_7
x6,x7的二维分布图。当我们要判断图中黑色交叉点到底是属于哪一类时,可以发现该点周围大部分都是红色或是绿色的点,因此很大程度上可以判断为属于这两个类别,或是可以说不可能属于蓝色点那一类,因为离得太远了!因此我们可以利用这样的最近邻方式判断点到底属于哪一类。我们可以把该空间划分为规则的块,同一块中的点最多的点决定改块的类别!
该方法有个致命的缺点是,随着维度的增加,这样划分出来的块的数量将会呈指数增长!
不仅如此,在高维空间中,一个单位超球体的体积大部分都集中在一个球体表面!高维所带来的一系列问题都可以称为维数灾难。在低维所构建的模型,一般来说泛化到高维空间中会导致效果很差!但是在现实生活中,我们的数据往往处于低维的流形中,因此可以借助于其他手段处理高维的数据!
1.5 Decision Theory
概率理论告诉我们对不确定进行度量,而决策理论则告诉我们怎么利用这个不确定度进行最优决策!下面以一个医疗问题入手,对于一个病人的X光照图片 x x x,需要判断该病人是( C 1 \mathcal { C } _ { 1 } C1)否( C 2 \mathcal { C }_2 C2)得了癌症。
Minimizing the misclassification rate
我们的目标是尽可能最小化错分率。定义决策域
R
k
\mathcal { R } _ { k }
Rk表示在这个区域中的
x
x
x属于
C
k
\mathcal { C }_k
Ck类。
p
(
mistake
)
=
p
(
x
∈
R
1
,
C
2
)
+
p
(
x
∈
R
2
,
C
1
)
=
∫
R
1
p
(
x
,
C
2
)
d
x
+
∫
R
2
p
(
x
,
C
1
)
d
x
\begin{aligned} p ( \text { mistake } ) & = p \left( \mathbf { x } \in \mathcal { R } _ { 1 } , \mathcal { C } _ { 2 } \right) + p \left( \mathbf { x } \in \mathcal { R } _ { 2 } , \mathcal { C } _ { 1 } \right) \\ & = \int _ { \mathcal { R } _ { 1 } } p \left( \mathbf { x } , \mathcal { C } _ { 2 } \right) \mathrm { d } \mathbf { x } + \int _ { \mathcal { R } _ { 2 } } p \left( \mathbf { x } , \mathcal { C } _ { 1 } \right) \mathrm { d } \mathbf { x } \end{aligned}
p( mistake )=p(x∈R1,C2)+p(x∈R2,C1)=∫R1p(x,C2)dx+∫R2p(x,C1)dx
为了最小化以上表达式,如果存在
p
(
x
,
C
1
)
>
p
(
x
,
C
2
)
p \left( \mathbf { x } , \mathcal { C } _ { 1 } \right)>p \left( \mathbf { x } , \mathcal { C } _ { 2 } \right)
p(x,C1)>p(x,C2),那么我们应该让
x
x
x属于
C
1
\mathcal { C } _ { 1 }
C1。
p
(
x
,
C
k
)
=
p
(
C
k
∣
x
)
p
(
x
)
p \left( \mathbf { x } , \mathcal { C } _ { k } \right) = p \left( \mathcal { C } _ { k } | \mathbf { x } \right) p ( \mathbf { x } )
p(x,Ck)=p(Ck∣x)p(x),由于
p
(
x
)
p(\mathbf{x})
p(x)都一样,所以最小化错分率,就等同于最大化后验概率。
对于
K
K
K分类问题,定义为最大化正确分类率
p
(
correct
)
=
∑
k
=
1
K
p
(
x
∈
R
k
,
C
k
)
=
∑
k
=
1
K
∫
R
k
p
(
x
,
C
k
)
d
x
\begin{aligned} p ( \text { correct } ) & = \sum _ { k = 1 } ^ { K } p \left( \mathbf { x } \in \mathcal { R } _ { k } , \mathcal { C } _ { k } \right) \\ & = \sum _ { k = 1 } ^ { K } \int _ { \mathcal { R } _ { k } } p \left( \mathbf { x } , \mathcal { C } _ { k } \right) \mathrm { d } \mathbf { x } \end{aligned}
p( correct )=k=1∑Kp(x∈Rk,Ck)=k=1∑K∫Rkp(x,Ck)dx
发现同样等同于最大后验概率!
Minimizing the expected loss
在现实生活中,有些问题更加复杂,对于上面的医疗诊断问题来说,误诊为癌症比误诊为健康好!因此可以适当地错分为癌症,但要最大程度上减少错分为健康!处理这个问题,其实就是进行加权!对于该问题,我们可以引入这样的权重
L
k
j
L_{kj}
Lkj代表属于
C
k
\mathcal { C } _ { k }
Ck的而被判别为
C
j
\mathcal { C } _ { j}
Cj所引入的权重。从上图可以看出对误分为健康的权重很大。
E
[
L
]
=
∑
k
∑
j
∫
R
j
L
k
j
p
(
x
,
C
k
)
d
x
\mathbb { E } [ L ] = \sum _ { k } \sum _ { j } \int _ { \mathcal { R } _ { j } } L _ { k j } p \left( \mathbf { x } , \mathcal { C } _ { k } \right) \mathrm { d } \mathbf { x }
E[L]=k∑j∑∫RjLkjp(x,Ck)dx
按照上面一样的推导,对于某一个新的点
x
x
x,我们只需要找到
j
j
j类使得下式最小即可
∑
k
L
k
j
p
(
C
k
∣
x
)
\sum _ { k } L _ { k j } p \left( \mathcal { C } _ { k } | \mathbf { x } \right)
k∑Lkjp(Ck∣x)
The reject option
Inference and decision
之前我们将分类问题划分为两个阶段:inference和decision。inference stage:利用训练样本得到后验概率
p
(
C
k
∣
x
)
p \left( \mathcal { C } _ { k } | \mathbf { x } \right)
p(Ck∣x),decision stage 利用得到的这个后验概率进行决策。
总共有以下三种形式(按照难度减少):
a) generative model
首先infer
p
(
x
∣
C
k
)
p \left( \mathbf { x } | \mathcal { C } _ { k } \right)
p(x∣Ck),然后infer
p
(
C
k
)
p \left( \mathcal { C } _ { k } \right)
p(Ck),然后利用贝叶斯公式
p
(
C
k
∣
x
)
=
p
(
x
∣
C
k
)
p
(
C
k
)
p
(
x
)
p \left( \mathcal { C } _ { k } | \mathbf { x } \right) = \frac { p \left( \mathbf { x } | \mathcal { C } _ { k } \right) p \left( \mathcal { C } _ { k } \right) } { p ( \mathbf { x } ) }
p(Ck∣x)=p(x)p(x∣Ck)p(Ck)
得到后验概率,其中
p
(
x
)
=
∑
k
p
(
x
∣
C
k
)
p
(
C
k
)
p ( \mathbf { x } ) = \sum _ { k } p \left( \mathbf { x } | \mathcal { C } _ { k } \right) p \left( \mathcal { C } _ { k } \right)
p(x)=k∑p(x∣Ck)p(Ck)
同样的我们也可以直接建模联合概率分布
p
(
x
,
C
k
)
p \left( \mathbf { x } , \mathcal { C } _ { k } \right)
p(x,Ck)。在得到了后验概率后就可以利用决策论进行类别划分。
b) discriminative models
直接建模后验概率分布 p ( C k ∣ x ) p \left( \mathcal { C } _ { k } | \mathbf { x } \right) p(Ck∣x)
c) discriminant function
直接找一个判别函数 f ( x ) f ( \mathbf { x } ) f(x),将输入 x x x直接映射到类别标签,在二分类的情况下,我们可以令 f = 0 f=0 f=0代表 C 1 \mathcal { C } _ { 1 } C1类,而 f = 1 f=1 f=1代表 C 2 \mathcal { C } _ { 2 } C2类。
Loss functions for regression
以上讨论的是分类模型的损失函数,这个部分主要讨论回归问题的损失函数
E
[
L
]
=
∬
L
(
t
,
y
(
x
)
)
p
(
x
,
t
)
d
x
d
t
\mathbb { E } [ L ] = \iint L ( t , y ( \mathbf { x } ) ) p ( \mathbf { x } , t ) \mathrm { d } \mathbf { x } \mathrm { d } t
E[L]=∬L(t,y(x))p(x,t)dxdt
一般来说,我们取平方误差
L
(
t
,
y
(
x
)
)
=
{
y
(
x
)
−
t
}
2
L ( t , y ( \mathbf { x } ) ) = \{ y ( \mathbf { x } ) - t \} ^ { 2 }
L(t,y(x))={y(x)−t}2
如果我们的
y
(
x
)
y ( \mathbf { x } )
y(x)为任意函数的话,我们利用变分可以得到
δ
E
[
L
]
δ
y
(
x
)
=
2
∫
{
y
(
x
)
−
t
}
p
(
x
,
t
)
d
t
=
0
\frac { \delta \mathbb { E } [ L ] } { \delta y ( \mathbf { x } ) } = 2 \int \{ y ( \mathbf { x } ) - t \} p ( \mathbf { x } , t ) \mathrm { d } t = 0
δy(x)δE[L]=2∫{y(x)−t}p(x,t)dt=0
y
(
x
)
=
∫
t
p
(
x
,
t
)
d
t
p
(
x
)
=
∫
t
p
(
t
∣
x
)
d
t
=
E
t
[
t
∣
x
]
y ( \mathbf { x } ) = \frac { \int t p ( \mathbf { x } , t ) \mathrm { d } t } { p ( \mathbf { x } ) } = \int t p ( t | \mathbf { x } ) \mathrm { d } t = \mathbb { E } _ { t } [ t | \mathbf { x } ]
y(x)=p(x)∫tp(x,t)dt=∫tp(t∣x)dt=Et[t∣x]
这个函数称为回归函数,下图为回归函数的具体意义
回归函数还可以按照如下方式得到
{
y
(
x
)
−
t
}
2
=
{
y
(
x
)
−
E
[
t
∣
x
]
+
E
[
t
∣
x
]
−
t
}
2
=
{
y
(
x
)
−
E
[
t
∣
x
]
}
2
+
2
{
y
(
x
)
−
E
[
t
∣
x
]
}
{
E
[
t
∣
x
]
−
t
}
+
{
E
[
t
∣
x
]
−
t
}
2
\begin{array} { l } { \{ y ( \mathbf { x } ) - t \} ^ { 2 } = \{ y ( \mathbf { x } ) - \mathbb { E } [ t | \mathbf { x } ] + \mathbb { E } [ t | \mathbf { x } ] - t \} ^ { 2 } } \\ { \quad = \{ y ( \mathbf { x } ) - \mathbb { E } [ t | \mathbf { x } ] \} ^ { 2 } + 2 \{ y ( \mathbf { x } ) - \mathbb { E } [ t | \mathbf { x } ] \} \{ \mathbb { E } [ t | \mathbf { x } ] - t \} + \{ \mathbb { E } [ t | \mathbf { x } ] - t \} ^ { 2 } } \end{array}
{y(x)−t}2={y(x)−E[t∣x]+E[t∣x]−t}2={y(x)−E[t∣x]}2+2{y(x)−E[t∣x]}{E[t∣x]−t}+{E[t∣x]−t}2
先对
t
t
t进行积分,则获得
E
[
L
]
=
∫
{
y
(
x
)
−
E
[
t
∣
x
]
}
2
p
(
x
)
d
x
+
∫
{
E
[
t
∣
x
]
−
t
}
2
p
(
x
)
d
x
\mathbb { E } [ L ] = \int \{ y ( \mathbf { x } ) - \mathbb { E } [ t | \mathbf { x } ] \} ^ { 2 } p ( \mathbf { x } ) \mathrm { d } \mathbf { x } + \int \{ \mathbb { E } [ t | \mathbf { x } ] - t \} ^ { 2 } p ( \mathbf { x } ) \mathrm { d } \mathbf { x }
E[L]=∫{y(x)−E[t∣x]}2p(x)dx+∫{E[t∣x]−t}2p(x)dx
为了使上式最小,则能得到回归函数。上式右边的第二部分为
t
t
t在
p
(
x
)
p(\mathbf{x})
p(x)上的方差,是固有噪声,不可消除!
与分类问题类似,回归问题也可以按照先难后易有三种解决回归问题的方法:
a)直接建模
p
(
x
,
t
)
p ( \mathbf { x } , t )
p(x,t),然后得到
p
(
t
∣
x
)
p ( t | \mathbf { x } )
p(t∣x),最后得到回归函数;
b)直接建模
p
(
t
∣
x
)
p ( t | \mathbf { x } )
p(t∣x);
c)建模一个映射函数
y
(
x
)
y ( \mathbf { x } )
y(x)
1.6 Information Theory
简要介绍一些关于信息论的概念
Entropy
H [ x ] = − ∫ p ( x ) ln p ( x ) d x \mathrm { H } [ \mathrm { x } ] = - \int p ( \mathrm { x } ) \ln p ( \mathrm { x } ) \mathrm { d } \mathrm { x } H[x]=−∫p(x)lnp(x)dx
Conditional Entropy
H
[
y
∣
x
]
=
−
∬
p
(
y
,
x
)
ln
p
(
y
∣
x
)
d
y
d
x
\mathrm { H } [ \mathbf { y } | \mathbf { x } ] = - \iint p ( \mathbf { y } , \mathbf { x } ) \ln p ( \mathbf { y } | \mathbf { x } ) \mathrm { d } \mathbf { y } \mathrm { d } \mathbf { x }
H[y∣x]=−∬p(y,x)lnp(y∣x)dydx
H
[
x
,
y
]
=
H
[
y
∣
x
]
+
H
[
x
]
\mathrm { H } [ \mathrm { x } , \mathrm { y } ] = \mathrm { H } [ \mathbf { y } | \mathrm { x } ] + \mathrm { H } [ \mathrm { x } ]
H[x,y]=H[y∣x]+H[x]
Relative entropy and mutual information
KL divergence
K
L
(
p
∥
q
)
=
−
∫
p
(
x
)
ln
q
(
x
)
d
x
−
(
−
∫
p
(
x
)
ln
p
(
x
)
d
x
)
=
−
∫
p
(
x
)
ln
{
q
(
x
)
p
(
x
)
}
d
x
\begin{aligned} \mathrm { KL } ( p \| q ) & = - \int p ( \mathbf { x } ) \ln q ( \mathbf { x } ) \mathrm { d } \mathbf { x } - \left( - \int p ( \mathbf { x } ) \ln p ( \mathbf { x } ) \mathrm { d } \mathbf { x } \right) \\ & = - \int p ( \mathbf { x } ) \ln \left\{ \frac { q ( \mathbf { x } ) } { p ( \mathbf { x } ) } \right\} \mathrm { d } \mathbf { x } \end{aligned}
KL(p∥q)=−∫p(x)lnq(x)dx−(−∫p(x)lnp(x)dx)=−∫p(x)ln{p(x)q(x)}dx
需要注意的是
K
L
(
p
∥
q
)
̸
=
K
L
(
q
∥
p
)
\mathrm { KL } ( p \| q ) \not= \mathrm { KL } ( q \| p )
KL(p∥q)̸=KL(q∥p),且
K
L
(
q
∥
p
)
⩾
0
\mathrm { KL } ( q \| p ) \geqslant 0
KL(q∥p)⩾0,当且仅当
q
(
x
)
=
p
(
x
)
q(x)=p(x)
q(x)=p(x)时,取等。下面从KL散度来推导最大似然估计,假设我么有个未知分布
p
(
x
)
p(x)
p(x),我们利用
q
(
x
∣
θ
)
q ( \mathbf { x } | \boldsymbol { \theta } )
q(x∣θ)去近似这个未知分布,则
K
L
(
p
∥
q
)
≃
∑
n
=
1
N
{
−
ln
q
(
x
n
∣
θ
)
+
ln
p
(
x
n
)
}
\mathrm { KL } ( p \| q ) \simeq \sum _ { n = 1 } ^ { N } \left\{ - \ln q \left( \mathbf { x } _ { n } | \boldsymbol { \theta } \right) + \ln p \left( \mathbf { x } _ { n } \right) \right\}
KL(p∥q)≃n=1∑N{−lnq(xn∣θ)+lnp(xn)}
右边的第二部分与
θ
\boldsymbol { \theta }
θ无关,只需要看第一部分,这部分正好就是最大似然估计项!!最小KL散度就是在最大似然函数!
下面开始介绍互信息,其是在KL散度上定义的,用于衡量
x
,
y
x,y
x,y与独立的距离!
I
[
x
,
y
]
≡
K
L
(
p
(
x
,
y
)
∥
p
(
x
)
p
(
y
)
)
=
−
∬
p
(
x
,
y
)
ln
(
p
(
x
)
p
(
y
)
p
(
x
,
y
)
)
d
x
d
y
\begin{aligned} \mathrm { I } [ \mathbf { x } , \mathbf { y } ] & \equiv \mathrm { KL } ( p ( \mathbf { x } , \mathbf { y } ) \| p ( \mathbf { x } ) p ( \mathbf { y } ) ) \\ & = - \iint p ( \mathbf { x } , \mathbf { y } ) \ln \left( \frac { p ( \mathbf { x } ) p ( \mathbf { y } ) } { p ( \mathbf { x } , \mathbf { y } ) } \right) \mathrm { d } \mathbf { x } \mathrm { d } \mathbf { y } \end{aligned}
I[x,y]≡KL(p(x,y)∥p(x)p(y))=−∬p(x,y)ln(p(x,y)p(x)p(y))dxdy
I
(
x
,
y
)
⩾
0
I ( \mathbf { x } , \mathbf { y } ) \geqslant 0
I(x,y)⩾0,当且仅当独立时取等。
互信息与熵有如下关系
I
[
x
,
y
]
=
H
[
x
]
−
H
[
x
∣
y
]
=
H
[
y
]
−
H
[
y
∣
x
]
\mathrm { I } [ \mathrm { x } , \mathrm { y } ] = \mathrm { H } [ \mathrm { x } ] - \mathrm { H } [ \mathrm { x } | \mathrm { y } ] = \mathrm { H } [ \mathrm { y } ] - \mathrm { H } [ \mathrm { y } | \mathrm { x } ]
I[x,y]=H[x]−H[x∣y]=H[y]−H[y∣x]