Ch1 introduction绪论
-
模式识别(pattern recognition)
The field of pattern recognition is concerned with the automatic discovery of regularities in data through the use of computer algorithms and with the use of these regularities to take actions such as classifying the data into different categories. 利用计算机算法自动发现数据中的规律,使用这些规律采取将数据分类等行动。
-
机器学习算法(machine learning algorithm)
-
输入向量x ;输出向量y
训练阶段,学习阶段,确定y(x)的精确形式
泛化(generalization):正确分类与训练集不同的新样本的能力
预处理:特征抽取(feature extraction),变换原始输入向量到新的变量空间使模式识别问题更容易解决;加快计算速度。例如:数字识别问题中图像被转化缩放使得每个数字能被包含到一个固定大小的盒子中
-
有监督学习(supervised learning)
训练数据的样本包含输入向量以及对应的目标向量。
如:数字识别,给每个输入向量分配到有限数量离散标签中的一个-----分类(classification);输出由一个或者多个连续变量组成----回归(regression)
-
无监督学习(unsupervised learning)
训练数据由一组输入向量x组成,没有任何对应的目标值。
如:发现数据中相似样本的分组----聚类(clustering);决定输入空间中数据的分布----密度估计(density estimation);数据从高维空间投影到二维或者三维空间----数据可视化(visualization)
-
强化学习(reinforcement learning) (不是很了解,可以去查阅相关的详细资料)
在给定的条件下,找到合适的动作,使得奖励达到最⼤值。
-
1.1例子:多项式曲线拟合
输入变量 x x x;目标变量 t t t;数据由 sin ( 2 π x ) \sin{(2\pi x)} sin(2πx)生成,目标变量带有随机的噪声
- 训练集:x ≡ ( x 1 , … , x N ) \equiv {(x_1,\ldots,x_N)} ≡(x1,…,xN);t ≡ ( t 1 , … , t N ) \equiv(t_1,\ldots,t_N) ≡(t1,…,tN);x的生成:选择 x n ( n = 1 , … , N ) x_n(n=1,\ldots,N) xn(n=1,…,N)的值,其中 x n x_n xn均匀分布在区间 [ 0 , 1 ] [0,1] [0,1];t的生成: sin ( 2 π x ) \sin{(2\pi x)} sin(2πx),再给每个点增加一个小的符合高斯分布的随机噪声
- 目标:利用训练集预测对应于输入变量的新值 x ^ \hat{x} x^的目标变量的值 t ^ \hat{t} t^
使用多项式函数拟合数据
-
目标函数:
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,\boldsymbol 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是多项式的阶数(order), x j x_j xj表示 x x x的 j j j次幂,系数 w 0 , … , w M w_0,\ldots,w_M w0,…,wM记作向量 w \boldsymbol w w。 y ( x , w ) y(x,\boldsymbol w) y(x,w)是 x x x的非线性函数,是系数 w \boldsymbol w w的线性函数 -
误差函数:
E ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 E(\boldsymbol w)=\frac{1}{2} \sum_{n=1}^N\left\{y(x_n,\boldsymbol w)-t_n\right\}^2 E(w)=21n=1∑N{y(xn,w)−tn}2
因子 1 2 \frac{1}{2} 21是为了后续运算方便而加入的,误差函数非负,当且仅当函数 y ( x , w ) y(x,\boldsymbol w) y(x,w)对所有的训练数据点均作出正确预测时,误差函数为0; -
目标:选择使得 E ( w ) E(\boldsymbol w) E(w)尽量小的 w \boldsymbol w w
误差函数是 w \boldsymbol w w的二次函数,导数是 w \boldsymbol w w的线性函数,则最小值有一个唯一解,记作 w ∗ \boldsymbol w^* w∗
存在问题:选择多项式的阶数 M M M----模型对比(model comparison)or模型选择(model selection)
9阶时得到了对于训练数据的一个完美拟合, E ( w ∗ ) E(\boldsymbol w^*) E(w∗)=0,拟合的曲线剧烈震荡,表现很差----过拟合(over-fitting)
- 均方根误差:
E R M S = 2 E ( w ∗ ) / N E_{RMS}=\sqrt{2E(\boldsymbol w^*)/N} ERMS=2E(w∗)/N
除以 N N N目的是以相同的基础对比不同大小的数据集;平方根确保 E R M S E_{RMS} ERMS与 t t t使用相同的规模和单位
随着 M M M的增大,系数变大。 M = 9 M=9 M=9,有着更大的 M M M值的更灵活的多项式被过分地调参使得多项式被调节成了与目标值的随机噪声相符,导致了过拟合现象
对一个给定的模型复杂度,当数据集的规模增加时,过拟合问题变得不严重。即数据集规模越大,能用来拟合数据的模型就越复杂(越灵活)。要求数据点的数量不应该小于模型的可调节参数的数量的若干倍(如5或10)。然而参数的数量对于模型复杂度的大部分合理的度量来说都不是必要的
上图中
M
=
9
M=9
M=9
-
控制过拟合:正则化(regularization)----收缩法(shrinkage),二次正则项称山脊回归(ridge regression),神经网络中叫权值衰减(weight decay)
E ~ ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 + λ 2 ∥ w ∥ 2 \tilde{E}(\boldsymbol w)=\frac{1}{2} \sum_{n=1}^{N}\left\{y(x_n,\boldsymbol w)-t_n\right\}^2+\frac{\lambda}{2}\left\|\boldsymbol w\right\|^2 E~(w)=21n=1∑N{y(xn,w)−tn}2+2λ∥w∥2
其中 ∥ w ∥ 2 = w T w = w 0 2 + w 1 2 + … + w M 2 \left\|\boldsymbol w\right\|^2=\boldsymbol w^T\boldsymbol w=w_0^2+w_1^2+\ldots+w_M^2 ∥w∥2=wTw=w02+w12+…+wM2通常系数 w 0 w_0 w0从正则化项中省略,因为包含 w 0 w_0 w0会使得结果依赖于目标变量原点的选择,也可以包含但必须有自己的正则化系数
下图中 M = 9 M=9 M=9,随着 λ \lambda λ的增大,系数变小
1.2概率论
概率论提供了一个合理的框架用来对不确定性进行量化和计算,构成了模式识别的一个中心基础
- 一个例子:红盒子和蓝盒子,苹果和橘子。红盒子中有2个苹果和6个句子,蓝盒子中有3个苹果和1个橘子
选择的盒子的颜色记为随机变量 B B B,取值 r r r或 b b b. p ( r ) = 4 10 p(r)=\frac{4}{10} p(r)=104, p ( b ) = 6 10 p(b)=\frac{6}{10} p(b)=106
选择的水果的种类记为随机变量 F F F,取值 a a a或 o o o
-
一般情形:随机变量 X X X和 Y Y Y, x i ( i = 1 , … , M ) x_i(i=1,\ldots,M) xi(i=1,…,M); y j ( j = 1 , … , L ) y_j(j=1,\ldots,L) yj(j=1,…,L); N N N次试验, X = x i X=x_i X=xi且 Y = y j Y=y_j Y=yj的试验数量记为 n i j n_{ij} nij
p ( X = x i , Y = y j ) = n i j N p(X=x_i,Y=y_j)=\frac{n_{ij}}{N} p(X=xi,Y=yj)=Nnijp ( X = x i ) = c i N = ∑ j = 1 L p ( X = x i , Y = y j ) p(X=x_i)=\frac{c_i}{N}=\sum_{j=1}^{L}{p(X=x_i,Y=y_j)} p(X=xi)=Nci=j=1∑Lp(X=xi,Y=yj)
p ( Y = y j ∣ X = x i ) = n i j c i p(Y=y_j|X=x_i)=\frac{n_{ij}}{c_i} p(Y=yj∣X=xi)=cinij
p ( X = x i , Y = y j ) = n i j N = n i j c i ⋅ c i N = p ( Y = y j ∣ X = x i ) p ( X = x i ) p(X=x_i,Y=y_j)=\frac{n_{ij}}{N}=\frac{n_{ij}}{c_i}\cdot \frac{c_i}{N}=p(Y=y_j|X=x_i)p(X=x_i) p(X=xi,Y=yj)=Nnij=cinij⋅Nci=p(Y=yj∣X=xi)p(X=xi)
-
概率论的两条基本规则:
加法准则(sum rule) p ( X ) = ∑ Y p ( X , Y ) p(X)=\sum_Y{p(X,Y)} p(X)=∑Yp(X,Y)
乘法准则(product rule) p ( X , Y ) = P ( Y ∣ X ) P ( X ) p(X,Y)=P(Y|X)P(X) p(X,Y)=P(Y∣X)P(X)
根据这两条规则,以及对称性 p ( X , Y ) = p ( Y , X ) p(X,Y)=p(Y,X) p(X,Y)=p(Y,X),得到:
-
贝叶斯定理
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) -
贝叶斯定理的分母,归一化常数
p ( X ) = ∑ Y p ( X ∣ Y ) p ( Y ) p(X)=\sum_Y{p(X|Y)p(Y)} p(X)=Y∑p(X∣Y)p(Y)
-
-
先验概率(prior probability): p ( B ) p(B) p(B)观察到水果种类之前就能得到的概率
后验概率(posterior probability): p ( B ∣ F ) p(B|F) p(B∣F)
1.2.1概率密度(probability density)
如果一个实值变量
x
x
x的概率落在区间
(
x
,
x
+
δ
x
)
(x,x+\delta x)
(x,x+δx)的概率由
p
(
x
)
δ
x
p(x)\delta x
p(x)δx给出
(
δ
x
→
0
)
(\delta x\to0 )
(δx→0),
p
(
x
)
p(x)
p(x)是概率密度
p
(
x
∈
(
a
,
b
)
)
=
∫
a
b
p
(
x
)
d
x
p(x\in (a,b))=\int_{a}^{b}p(x)dx
p(x∈(a,b))=∫abp(x)dx
p ( x ) ≥ 0 p(x)\ge 0 p(x)≥0
∫ − ∞ ∞ p ( x ) d x = 1 \int_{-\infty}^{\infty}p(x)dx=1 ∫−∞∞p(x)dx=1
p y ( y ) = p x ( x ) ∣ d x d y ∣ = p x ( g ( y ) ) ∣ g ′ ( y ) ∣ p_y(y)=p_x(x)\left|\frac{dx}{dy}\right|=p_x(g(y))\left|g^\prime(y)\right| py(y)=px(x)∣∣∣∣dydx∣∣∣∣=px(g(y))∣g′(y)∣
P ( z ) = ∫ − ∞ z p ( x ) d x P(z)=\int_{-\infty}^{z}p(x)dx P(z)=∫−∞zp(x)dx
-
加法和乘法规则:
p ( x ) = ∫ p ( x , y ) d y p(x)=\int p(x,y)dy p(x)=∫p(x,y)dyp ( x , y ) = p ( y ∣ x ) p ( x ) p(x,y)=p(y|x)p(x) p(x,y)=p(y∣x)p(x)
1.2.2期望和协方差
-
期望(expectation)
离散变量 E [ f ] = ∑ x p ( x ) f ( x ) \mathbb E[f]= \sum_{x} p(x)f(x) E[f]=∑xp(x)f(x)
连续变量 E [ f ] = ∫ p ( x ) f ( x ) d x \mathbb E[f]=\int p(x)f(x)dx E[f]=∫p(x)f(x)dx
给定有限数量的 N N N个点 E [ f ] ≃ 1 N ∑ n = 1 N f ( x n ) \mathbb E[f]\simeq \frac{1}{N} \sum_{n=1}^N f(x_n) E[f]≃N1∑n=1Nf(xn)
多变量 E x [ f ( x , y ) ∣ y ] = ∑ x p ( x ∣ y ) f ( x ) \mathbb E_x[f(x,y)|y]=\sum_x p(x|y)f(x) Ex[f(x,y)∣y]=∑xp(x∣y)f(x)
-
方差(variance):
v a r [ f ] = E [ ( f ( x ) − E [ f ( x ) ] ) 2 ] = E [ f ( x ) 2 ] − E [ f ( x ) ] 2 var[f]=\mathbb E[(f(x)-\mathbb E[f(x)])^2]=\mathbb E[f(x)^2]-\mathbb E[f(x)]^2 var[f]=E[(f(x)−E[f(x)])2]=E[f(x)2]−E[f(x)]2
v a r [ x ] = E [ x 2 ] − E [ x ] 2 var[x]=\mathbb E[x^2]-\mathbb E[x]^2 var[x]=E[x2]−E[x]2
-
协方差(covariance)
c o v [ x , y ] = E x , y [ { x − E [ x ] } { y − E [ y ] } ] = E x , y [ x y ] − E [ x ] E [ y ] cov[x,y]=\mathbb E_{x,y}[\left\{x-\mathbb E[x]\right\}\left\{y-\mathbb E[y]\right\}]=\mathbb E_{x,y}[xy]-\mathbb E[x]E[y] cov[x,y]=Ex,y[{x−E[x]}{y−E[y]}]=Ex,y[xy]−E[x]E[y]
向量 c o v [ x , y ] = E x , y [ { x − E [ x ] } { y T − E [ y T ] } ] = E x , y [ x y T ] − E [ x ] E [ y T ] cov[\boldsymbol x,\boldsymbol y]=\mathbb E_{x,y}[\left\{x-\mathbb E[x]\right\}\left\{\boldsymbol y^T-\mathbb E[\boldsymbol y^T]\right\}]=\mathbb E_{x,y}[\boldsymbol x\boldsymbol y^T]-\mathbb E[\boldsymbol x]E[\boldsymbol y^T] cov[x,y]=Ex,y[{x−E[x]}{yT−E[yT]}]=Ex,y[xyT]−E[x]E[yT]
1.2.3贝叶斯概率
使用概率论来描述模型参数(例如 w w w)的不确定性,或者模型本身的选择
-
贝叶斯定理:
在观察到数据之前,有一些关于参数 w w w的假设,以先验概率 p ( w ) p(w) p(w)的形式给出;
观察数据 D = { t 1 , … , t N } \mathcal D=\left\{t_1,\ldots,t_N\right\} D={t1,…,tN}的效果通过条件概率 p ( D ∣ w ) p(\mathcal D|w) p(D∣w)表达
p ( w ∣ D ) = p ( D ∣ w ) p ( w ) p ( D ) p(\boldsymbol w|\mathcal D)=\frac{p(\mathcal D|\boldsymbol w) p(\boldsymbol w)}{p(\mathcal D)} p(w∣D)=p(D)p(D∣w)p(w)
其中 p ( D ∣ w ) p(\mathcal D|w) p(D∣w)是似然函数,由观测数据集 D \mathcal D D来估计,看成参数向量 w w w的函数。表达了在不同参数向量 w w w下,观测数据出现的可能性的大小。它不是 w w w的概率分布,关于 w w w的积分并不(一定)等于1.贝叶斯定理的自然语言表述
p o s t e r i o r ∝ l i k e h o o d × p r i o r posterior \propto likehood\times prior posterior∝likehood×prior
贝叶斯公式的分母是一个归一化常数,积分为1.对公式两侧关于 w w w进行积分,得到贝叶斯定理的分母:
p ( D ) = ∫ p ( D ∣ w ) p ( w ) d w p(\mathcal D)=\int p(\mathcal D|\boldsymbol w)p(\boldsymbol w)d\boldsymbol w p(D)=∫p(D∣w)p(w)dw -
似然函数(likehood function): p ( D ∣ w ) p(\mathcal D|\boldsymbol w) p(D∣w)
频率学家的观点: w w w被认为是一个固定的参数,它的值由某种形式的“估计”确定,这个估计的误差通过考察可能的数据集 D \mathcal D D的概率分布来得到
贝叶斯的观点:只有一个数据集 D \mathcal D D(即实际观测到的数据集)参数的不确定性通过 w w w的概率分布来表达用极大似然估计,其中 w w w的值是使似然函数 p ( D ∣ w ) p(\mathcal D|w) p(D∣w)达到最大值的 w w w值,即选择使观察到的数据集出现概率最大的 w w w的值
批评:先验概率的选择通常是为了计算的方便而不是为了反映出任何先验的知识;对于先验选择的依赖性
困难:计算复杂
极大似然估计,其中 w \boldsymbol w w的值是使似然函数 p ( D ∣ w ) p(\mathcal D|\boldsymbol w) p(D∣w)达到最大值的 w \boldsymbol w w值,即选择使观察到的数据集出现概率最大的 w \boldsymbol w w的值
误差函数:似然函数的负对数,单调递减。最大化似然函数等价于最小化误差函数
1.2.4高斯分布(gaussian/normal)
-
一元实值变量 x x x:
N ( x ∣ μ , σ 2 ) = 1 ( 2 π σ 2 ) 1 2 exp { − 1 2 σ 2 ( x − μ ) 2 } \mathcal N(x|\mu,\sigma ^2)=\frac{1}{(2\pi \sigma ^2)^{\frac{1}{2}}}\exp \left\{-\frac{1}{2\sigma^2}(x-\mu)^2\right\} N(x∣μ,σ2)=(2πσ2)211exp{−2σ21(x−μ)2}
μ \mu μ均值, σ 2 \sigma ^2 σ2方差, β = 1 σ 2 \beta =\frac{1}{\sigma ^2} β=σ21精度(precision) -
D D D维 x \boldsymbol x x:
N ( x ∣ μ , ∑ ) = 1 ( 2 π ) D 2 1 ∣ ∑ ∣ 1 2 exp { − 1 2 ( x − μ ) T ∑ − 1 ( x − μ ) } \mathcal N(\boldsymbol x|\boldsymbol \mu, \sum)=\frac{1}{(2\pi)^{\frac{D}{2}} } \frac{1}{\left|\sum\right|^{\frac{1}{2}}}\exp\left\{-\frac{1}{2}(\boldsymbol x-\boldsymbol \mu)^T \begin{matrix}\sum^{-1}(\boldsymbol x-\boldsymbol \mu)\end{matrix} \right\} N(x∣μ,∑)=(2π)2D1∣∑∣211exp{−21(x−μ)T∑−1(x−μ)}
其中 D D D维向量 μ \mu μ是均值, D × D D\times D D×D的矩阵 ∑ \sum ∑是协方差, ∣ ∑ ∣ |\sum| ∣∑∣是行列式 -
最大似然法:
观测数据集 x = ( x 1 , … , x N ) T \boldsymbol {\mathrm x}=(x_1,\ldots,x_N)^T x=(x1,…,xN)T,表示标量变量 x x x的 N N N次观测,区别向量 x \boldsymbol x x变量 ( x 1 , … , x d ) T (x_1,\ldots,x_d)^T (x1,…,xd)T
独立同分布(independent and identically distributed):独立地从相同的数据点中抽取的数据点,缩写i.i.d
数据集 x \boldsymbol {\mathrm x} x的概率(即高斯分布的似然函数)为
p ( x ∣ μ , σ 2 ) = ∏ n = 1 N N ( x n ∣ μ , σ 2 ) p(\boldsymbol {\mathrm x}|\mu,\sigma ^2)=\prod_{n=1}^N \mathcal N(x_n|\mu,\sigma ^2) p(x∣μ,σ2)=n=1∏NN(xn∣μ,σ2)
对数似然函数为
ln p ( x ∣ μ , σ 2 ) = − 1 2 σ 2 ∑ n = 1 N ( x n − μ ) 2 − N 2 ln σ 2 − N 2 ln ( 2 π ) \ln p(\boldsymbol {\mathrm x}|\mu,\sigma ^2)=-\frac{1}{2\sigma ^2}\sum_{n=1}^N(x_n-\mu)^2-\frac{N}{2}\ln \sigma^2-\frac{N}{2}\ln(2\pi) lnp(x∣μ,σ2)=−2σ21n=1∑N(xn−μ)2−2Nlnσ2−2Nln(2π)
μ \mu μ的最大似然解为
μ M L = 1 N ∑ n = 1 N x n = x ˉ \mu_{ML}=\frac{1}{N}\sum _{n=1}^Nx_n=\bar x μML=N1n=1∑Nxn=xˉ
即为样本均值。σ 2 \sigma ^2 σ2的最大似然解为
σ M L 2 = 1 N ∑ n = 1 N ( x n − μ M L ) 2 = M 2 \sigma_{ML}^2=\frac{1}{N}\sum_{n=1}^N(x_n-\mu_{ML})^2=M_2 σML2=N1n=1∑N(xn−μML)2=M2
Z这是关于样本均值 μ M L \mu_{ML} μML的样本方差,也是二阶样本中心矩 M 2 M_2 M2。
E [ μ M L ] = μ \mathbb E[\mu_{ML}]=\mu E[μML]=μE [ σ M L 2 ] = ( N − 1 N ) σ 2 \mathbb E[\sigma_{ML}^2]=(\frac{N-1}{N})\sigma^2 E[σML2]=(NN−1)σ2
可以看出最大似然估计的均值正确,但是最大似然求出的方差估计不是方差的无偏估计,低估了方差。这是一种叫做偏移(bias)的现象,与多项式曲线拟合问题中遇到的过拟合问题相关。在实际应用中,只要 N N N不太小,那么偏移的现象就不是个大问题。但是我们更多地关注带有很多参数的复杂模型,它们的最大似然的偏移问题会更加严重。实际上,最大似然的偏移问题是我们在多项式曲线拟合问题中遇到的过拟合问题的核心。如下图:
因此将
M
2
M_2
M2的分母
N
N
N修正为
N
−
1
N-1
N−1获得样本方差,此时才是对方差参数的估计是无偏的。如下:
σ
~
2
=
N
−
1
N
σ
M
L
2
=
1
N
−
1
∑
n
=
1
N
(
x
n
−
μ
M
L
)
2
=
S
2
\tilde \sigma^2=\frac{N-1}{N}\sigma_{ML}^2=\frac{1}{N-1}\sum_{n=1}^N(x_n-\mu_{ML})^2=S_2
σ~2=NN−1σML2=N−11n=1∑N(xn−μML)2=S2
上式
E
[
σ
M
L
2
]
=
(
N
−
1
N
)
σ
2
\mathbb E[\sigma_{ML}^2]=(\frac{N-1}{N})\sigma^2
E[σML2]=(NN−1)σ2的推导如下:
∑
n
=
1
N
(
x
n
−
μ
M
L
)
2
=
∑
n
=
1
N
[
(
x
n
−
μ
)
−
(
x
ˉ
−
μ
)
]
2
\sum_{n=1}^N(x_n-\mu_{ML})^2=\sum_{n=1}^N[(x_n-\mu)-(\bar x-\mu)]^2
n=1∑N(xn−μML)2=n=1∑N[(xn−μ)−(xˉ−μ)]2
= ∑ n = 1 N ( x n − μ ) 2 − 2 ( x ˉ − μ ) ∑ n = 1 N ( x n − μ ) + n ( x ˉ − μ ) 2 =\sum_{n=1}^N(x_n-\mu)^2-2(\bar x-\mu)\sum_{n=1}^N(x_n-\mu)+n(\bar x-\mu)^2 =n=1∑N(xn−μ)2−2(xˉ−μ)n=1∑N(xn−μ)+n(xˉ−μ)2
= ∑ n = 1 N ( x n − μ ) 2 − 2 ( x ˉ − μ ) n ( x ˉ − μ ) + n ( x ˉ − μ ) 2 = ∑ n = 1 N ( x n − μ ) 2 − n ( x ˉ − μ ) 2 =\sum_{n=1}^N(x_n-\mu)^2-2(\bar x-\mu)n(\bar x-\mu)+n(\bar x-\mu)^2=\sum_{n=1}^N(x_n-\mu)^2-n(\bar x-\mu)^2 =n=1∑N(xn−μ)2−2(xˉ−μ)n(xˉ−μ)+n(xˉ−μ)2=n=1∑N(xn−μ)2−n(xˉ−μ)2
即
∑
n
=
1
N
(
x
n
−
μ
M
L
)
2
=
∑
n
=
1
N
(
x
n
−
μ
)
2
−
n
(
x
ˉ
−
μ
)
2
\sum_{n=1}^N(x_n-\mu_{ML})^2=\sum_{n=1}^N(x_n-\mu)^2-n(\bar x-\mu)^2
n=1∑N(xn−μML)2=n=1∑N(xn−μ)2−n(xˉ−μ)2
而
E
[
(
x
n
−
μ
)
2
]
=
v
a
r
[
x
i
]
=
σ
2
\mathbb E[(x_n-\mu)^2]=var[x_i]=\sigma ^2
E[(xn−μ)2]=var[xi]=σ2
E [ ( x ˉ − μ ) 2 ] = v a r [ x ˉ ] = v a r [ 1 N ∑ n = 1 N x n ] = 1 N ∑ n = 1 N v a r [ x n ] = σ 2 N \mathbb E[(\bar x-\mu)^2]=var[\bar x]=var[\frac{1}{N}\sum _{n=1}^Nx_n]=\frac{1}{N}\sum _{n=1}^Nvar[x_n]=\frac{\sigma^2}{N} E[(xˉ−μ)2]=var[xˉ]=var[N1n=1∑Nxn]=N1n=1∑Nvar[xn]=Nσ2
所以
E
[
σ
M
L
2
]
=
E
[
1
N
∑
n
=
1
N
(
x
n
−
μ
M
L
)
2
]
=
1
N
E
[
∑
n
=
1
N
(
x
n
−
μ
M
L
)
2
]
\mathbb E[\sigma_{ML}^2]=\mathbb E[\frac{1}{N}\sum_{n=1}^N(x_n-\mu_{ML})^2]=\frac{1}{N}\mathbb E[\sum_{n=1}^N(x_n-\mu_{ML})^2]
E[σML2]=E[N1n=1∑N(xn−μML)2]=N1E[n=1∑N(xn−μML)2]
= 1 N E [ ∑ n = 1 N ( x n − x ˉ ) 2 ] = 1 N ( ∑ n = 1 N σ 2 − N σ 2 N ) = ( N − 1 N ) σ 2 =\frac{1}{N}\mathbb E[\sum_{n=1}^N(x_n-\bar x)^2]=\frac{1}{N}(\sum_{n=1}^N\sigma^2-N\frac{\sigma^2}{N})=(\frac{N-1}{N})\sigma^2 =N1E[n=1∑N(xn−xˉ)2]=N1(n=1∑Nσ2−NNσ2)=(NN−1)σ2
1.2.5重新考虑曲线拟合问题
曲线拟合的目标: N N N个输入x = ( x 1 , … , x N ) = {(x_1,\ldots,x_N)} =(x1,…,xN)和对应的目标值t = ( t 1 , … , t N ) =(t_1,\ldots,t_N) =(t1,…,tN),在给出输入变量 x x x的新值的情况下,对目标变量 t t t进行预测。
用概率分布来表达关于目标变量的值的不确定性。做法如下:
给定
x
x
x的值,对应的
t
t
t值服从高斯分布,分布的均值为
y
(
x
,
w
)
y(x,\boldsymbol w)
y(x,w)。因此有
p
(
t
∣
x
,
w
,
β
)
=
N
(
t
∣
y
(
x
,
w
)
,
β
−
1
)
)
p(t|x,\boldsymbol w,\beta)=\mathcal N(t|y(x,\boldsymbol w),\beta^{-1}))
p(t∣x,w,β)=N(t∣y(x,w),β−1))
-
用训练数据{x,t}通过最大似然法决定未知参数 w \boldsymbol w w和 β \beta β的值
似然函数:
p ( t ∣ x , w , β ) = ∏ n = 1 N N ( t n ∣ y ( x n , w ) , β − 1 ) ) p(\boldsymbol {\mathrm t}|\boldsymbol {\mathrm x},\boldsymbol w,\beta)=\prod_{n=1}^N\mathcal N(t_n|y(x_n,\boldsymbol w),\beta^{-1})) p(t∣x,w,β)=n=1∏NN(tn∣y(xn,w),β−1))
对数似然函数:
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(\boldsymbol {\mathrm t}|\boldsymbol {\mathrm x},\boldsymbol w,\beta)=-\frac{\beta}{2}\sum_{n=1}^N\left\{y(x_n,\boldsymbol w)-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 M L \boldsymbol w_{ML} wML):由上式中与 w \boldsymbol w w有关的式子确定。省略最后两项,且使用一个正的常数系数来缩放对数似然函数并不会改变关于 w \boldsymbol w w的最大值的位置,因此用 1 2 \frac{1}{2} 21来代替系数 β 2 \frac{\beta}{2} 2β。最后等价地最小化负对数似然函数。于是最大化似然函数等价于最小化平方和误差函数。因此,在高斯噪声的假设下,平方误差函数是最大化似然函数的一个自然结果。
考虑精度 β M L \beta_{ML} βML:
1 β M L = 1 N ∑ n = 1 N { y ( x n , w M L ) − t n } 2 \frac{1}{\beta_{ML}}=\frac{1}{N}\sum_{n=1}^N\left\{y(x_n,\boldsymbol w_{ML})-t_n\right\}^2 βML1=N1n=1∑N{y(xn,wML)−tn}2 -
对新的 x x x的值进行预测
现在有一个概率模型,预测可以通过给出 t t t的概率分布的预测分布来表示
预测分布:
p ( t ∣ x , w M L , β M L ) = N ( t ∣ y ( x , w M L ) , β M L − 1 ) ) p(t|x,\boldsymbol w_{ML},\beta_{ML})=\mathcal N(t|y(x,\boldsymbol w_{ML}),\beta_{ML}^{-1})) p(t∣x,wML,βML)=N(t∣y(x,wML),βML−1))
引入在多项式系数 w \boldsymbol w w上的先验分布:
p ( w ∣ α ) = N ( w ∣ y ( 0 , α − 1 I ) = ( α 2 π ) M + 1 2 exp { − α 2 w T w } p(\boldsymbol w|\alpha)=\mathcal N(\boldsymbol w|y(\boldsymbol 0,\alpha ^{-1}\boldsymbol I)=(\frac{\alpha}{2\pi})^{\frac{M+1}{2}}\exp\left\{-\frac{\alpha}{2}\boldsymbol w^T\boldsymbol w\right\} p(w∣α)=N(w∣y(0,α−1I)=(2πα)2M+1exp{−2αwTw}
其中 α \alpha α是预测分布的精度,是超参数(控制模型参数分布的参数)。 M + 1 M+1 M+1是对于 M M M阶多项式的向量 w \boldsymbol w w的元素的总数使用贝叶斯定理:
p ( w ∣ x , t , α , β ) ∝ p ( t ∣ x , w , β ) p ( w ∣ α ) p(\boldsymbol w|\boldsymbol {\mathrm x},\boldsymbol {\mathrm t},\alpha,\beta)\propto p(\boldsymbol {\mathrm t}|\boldsymbol {\mathrm x},\boldsymbol w,\beta)p(\boldsymbol w|\alpha) p(w∣x,t,α,β)∝p(t∣x,w,β)p(w∣α)
最大化后验概率确定 w \boldsymbol w w----最大后验(maximum posterior),简称MAP:即最小化下式:
β 2 ∑ n = 1 N { y ( x n , w M L ) − t n } 2 + α 2 w T w \frac{\beta}{2}\sum_{n=1}^N\left\{y(x_n,\boldsymbol w_{ML})-t_n\right\}^2+\frac{\alpha}{2}\boldsymbol w^T\boldsymbol w 2βn=1∑N{y(xn,wML)−tn}2+2αwTw
因此最大化后验概率等价于最小化正则化的平方和误差函数,正则化参数为 λ = α β \lambda=\frac{\alpha}{\beta} λ=βα
1.2.6贝叶斯曲线拟合
1.2.5中的问题:虽然有先验分布 p ( w ∣ α ) p(\boldsymbol w|\alpha) p(w∣α),但仍在进行 w w w的点估计。
纯粹的贝叶斯方法:自始至终地应用概率的加法规则和乘法规则。这需要对所有 w \boldsymbol w w值进行积分。这种积分对模式识别来说是贝叶斯方法的核心。
曲线拟合问题中,训练数据x和t,新的测试点 x x x,预测 t t t的值。即估计预测分布 p ( t ∣ x , x , t ) p(t|x,\boldsymbol {\mathrm x},\boldsymbol {\mathrm t}) p(t∣x,x,t)。这里要假设参数 α \alpha α和 β \beta β是固定的,事先知道的(??)
-
预测概率:
p ( t ∣ x , x , t ) = ∫ p ( t ∣ x , w ) p ( w ∣ x , t ) d w p(t|x,\boldsymbol {\mathrm x},\boldsymbol {\mathrm t})=\int p(t|x,\boldsymbol w)p(\boldsymbol w|\boldsymbol {\mathrm x},\boldsymbol {\mathrm t})d\boldsymbol w p(t∣x,x,t)=∫p(t∣x,w)p(w∣x,t)dw
其中 p ( t ∣ x , w ) p(t|x,\boldsymbol w) p(t∣x,w)忽略了对 α \alpha α和 β \beta β的依赖。 p ( w ∣ x , t ) p(\boldsymbol w|\boldsymbol {\mathrm x},\boldsymbol {\mathrm t}) p(w∣x,t)是参数的后验分布,是一个高斯分布,可以解析地求出
p ( t ∣ x , x , t ) = N ( t ∣ m ( x ) , s 2 ( x ) ) p(t|x,\boldsymbol {\mathrm x},\boldsymbol {\mathrm t})=\mathcal N(t|m(x),s^2(x)) p(t∣x,x,t)=N(t∣m(x),s2(x))
均值和方差为
m ( x ) = β ϕ ( x ) T S ∑ n = 1 N ϕ ( x n ) t n m(x)=\beta \phi(x)^T\boldsymbol S\sum_{n=1}^N\phi (x_n)t_n m(x)=βϕ(x)TSn=1∑Nϕ(xn)tns 2 ( x ) = β − 1 + ϕ ( x ) T S ϕ ( x ) s^2(x)=\beta^{-1}+\phi(x)^T\boldsymbol S\phi(x) s2(x)=β−1+ϕ(x)TSϕ(x)
可以看出预测分布的均值和方差依赖于 x x x。方差的第一项表示预测值 t t t的不确定性,这种不确定性由目标变量上的噪声造成。在最大似然的预测分布中,这种不确定性通过 β M L − 1 \beta_{ML}^{-1} βML−1表达
其中矩阵 S \boldsymbol S S由下式给出。方差的第二项对参数 w \boldsymbol w w的不确定性有影响。
S − 1 = α I + β ∑ n = 1 N ϕ ( x n ) ϕ ( x n ) T \boldsymbol S^{-1}=\alpha \boldsymbol I+\beta\sum_{n=1}^N\phi(x_n)\phi(x_n)^T S−1=αI+βn=1∑Nϕ(xn)ϕ(xn)T
其中向量 ϕ ( x ) \phi(x) ϕ(x)被定义为 ϕ i ( x ) = x i ( i = 0 , … , M ) \phi_i(x)=x^i(i=0,\ldots,M) ϕi(x)=xi(i=0,…,M)
1.3模型选择
-
拟合多项式曲线例子
多项式的阶数控制了模型的自由参数的个数,因此控制了模型的复杂度
正则化系数 λ \lambda λ也控制了模型复杂度
-
更复杂的模型如混合分布或神经网络
可能存在多个控制模型复杂度的参数
-
模型选择:
-
数据量很大:
训练出一系列的模型;
得到某个给定模型的一系列复杂度的参数值;
在独立数据集上(验证集)比较;
选择预测表现最好的模型
-
数据有限:交叉验证(cross validation)
用可得数据的 S − 1 S \frac{S-1}{S} SS−1用于训练;使用所有的数据来评估表现。数据相当稀疏的时候,考虑 S = N S=N S=N,其中 N N N是数据点的总数----留一法(leave-one-out)
缺点:需要进行训练的次数随着 S S S而增加,耗时;对于一个单一的模型,可能有多个 复杂度参数(如可能有若干个正则化参数),最坏的情况下探索这些参数的组合所需的训练次数可能是参数个数的指数函数。
-
理想情况下:
应该只依赖于训练数据,应该允许在一轮训练中对比多个超参数及模型类型;
需要找到一种模型表现的度量,只依赖于训练数据且不会由于过拟合产生偏移的问题
-
-
信息准则(information criteria)
增加一个惩罚项来补偿过于复杂的模型造成的过拟合
如:赤池信息准则(akaike information criteria)or AIC
ln ( D ∣ w M L ) − M \ln(\mathcal D|w_{ML})-M ln(D∣wML)−M
选择使这个量最大的模型。 p ( D ∣ w M L ) p(\mathcal D|w_{ML}) p(D∣wML)是最合适的对数似然函数, M M M是模型中可调节参数的数量。缺点:没有考虑模型参数的不确定性,在实际应用中倾向于选择过于简单的模型
1.4维数灾难
-
考虑一个人工合成的数据集,每个数据点由一个12维的输入向量组成,给出数据集里的100个点的两个分量 x 6 x_6 x6和 x 7 x_7 x7,预测“叉点”的类别
一种简单的方法:把输入空间划分成小的单元格,首先判断测试点属于哪个单元格,寻找训练集中落在同一个单元格中的训练数据点。测试点的类别就是测试点所在的单元格中数量最多的训练数据点的类别。
问题:
把空间的区域分割成一个个的单元格,单元格的数量会随着空间的维数以指数的形式增大。为了保证单元格不为空,需要指数量级的训练数据。
-
考虑多项式拟合的问题。假设有 D D D个输入变量,三阶多项式如下:
y ( x , w ) = w o + ∑ i = 1 D w i x i + ∑ i = 1 D ∑ j = 1 D w i j x i x j + ∑ i = 1 D ∑ j = 1 D ∑ k = 1 D w i j k x i x j x k y(\boldsymbol x,\boldsymbol w)=w_o+\sum_{i=1}^Dw_ix_i+\sum_{i=1}^D \sum_{j=1}^Dw_{ij}x_ix_j+\sum_{i=1}^D\sum_{j=1}^D\sum_{k=1}^Dw_{ijk}x_ix_jx_k y(x,w)=wo+i=1∑Dwixi+i=1∑Dj=1∑Dwijxixj+i=1∑Dj=1∑Dk=1∑Dwijkxixjxk
随着 D D D的增加,独立的系数的数量的增长速度正比于 D 3 D^3 D3。对于一个 M M M饥阶多项式,系数数量增长速度类似于 D M D^M DM -
考虑 D D D维空间的一个半径 r = 1 r=1 r=1的球体,位于半径 r = 1 − ϵ r=1-\epsilon r=1−ϵ和半径 r = 1 r=1 r=1之间的部分占球的总体积的百分比
V D ( r ) = K D r D V_D(r)=K_Dr^D VD(r)=KDrD
其中常数 K D K_D KD值依赖于 D D D,体积比为
V D ( 1 ) − V D ( 1 − ϵ ) V D ( 1 ) = 1 − ( 1 − ϵ ) D \frac{V_D(1)-V_D(1-\epsilon)}{V_D(1)}=1-(1-\epsilon)^D VD(1)VD(1)−VD(1−ϵ)=1−(1−ϵ)D
对于较大的 D D D,体积比趋近于1。因此,在高维空间中,一个球体的大部分体积都聚集在表面附近的薄球壳上。 -
考虑高维空间的高斯分布。从笛卡尔坐标系变化到极坐标系,把方向变量积分出来即概率密度的表达式 p ( r ) p(r) p(r),它是关于距离原点的半径 r r r的函数。 p ( r ) δ r p(r)\delta r p(r)δr是位于半径 r r r处厚度为 δ r \delta r δr的薄球壳内部的概率质量。
可以看到,对于大的 D D D值,高斯分布的概率质量集中在薄球壳处。
-
寻找应用于高维空间的有效技术
原因:
第一,真实的数据经常被限制在有着较低的有效维度的空间区域中。特别地在目标值会发生重要变化的方向上也会有这种限制。
第二,真实数据通常比较光滑(至少局部上比较光滑),因此大多数情况下,对于输入变量的微小改变,目标值的改变也很小。因此对于新的输入变量,可以通过局部的类似于插值的技术预测。
目前的有效解决方法:FM算法
1.5决策论
不确定的情况下做出最优的决策。具体地,如前面所述的输入向量 x x x和对应的目标值向量 t t t,决策论的主题就是对 t t t的值做出具体的预测,根据对 t t t的可能去值得理解,采取一个具体的动作。
-
考虑一个医疗诊断问题,给病人拍了X光片,诊断是否得了癌症
输入向量 x \boldsymbol x x是X光片的像素的灰度值集合,输出变量 t \boldsymbol t t表示患有癌症(类 C 1 C_1 C1)或不患癌症(类 C 2 C_2 C2)
p ( C k ∣ x ) = p ( x ∣ C k ) p ( C k ) p ( x ) p(\mathcal C_k|\boldsymbol x)=\frac{p(\boldsymbol x|\mathcal C_k)p(\mathcal C_k)}{p(\boldsymbol x)} p(Ck∣x)=p(x)p(x∣Ck)p(Ck)
目标:最小化把 x \boldsymbol x x分到错误类别中的可能性 -
相关概念:
- 决策区域(decision region):把输入空间切分成不同的区域 R k \mathcal R_k Rk,每个类别都有一个决策区域,区域 R k \mathcal R_k Rk中的所有点都被分到 C k \mathcal C_k Ck类。注意,每一个决策区域未必是连续的,可以由若干个分离的区域组成
- 决策边界(decision boundary)或决策面(desicion surface):决策区域的边界
1.5.1最小化错误分类率
- 错误分类的概率:
p ( m i s t a k e ) = 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 p(\mathrm{mistake})=p(\boldsymbol x\in \mathcal R_1,\mathcal C_2)+p(\boldsymbol x \in \mathcal R_2,\mathcal C_1)=\int_{\mathcal R_1} {p(\boldsymbol x,\mathcal c_2)d \boldsymbol x}+\int_{\mathcal R_2}{p(\boldsymbol x,\mathcal c_1)d \boldsymbol x} p(mistake)=p(x∈R1,C2)+p(x∈R2,C1)=∫R1p(x,c2)dx+∫R2p(x,c1)dx
最小化 p ( m i s t a k e ) p(\mathrm{mistake}) p(mistake), 应该让被积函数尽量小。因此,给定的 x \boldsymbol x x值,若 p ( x , C 1 ) > p ( x , C 2 ) p(\boldsymbol x,\mathcal C_1)>p(\boldsymbol x,\mathcal C_2) p(x,C1)>p(x,C2),则把 x \boldsymbol x x分到类别 C 1 \mathcal C_1 C1中
p ( x , C k ) = p ( C k ∣ x ) p ( x ) p(\boldsymbol x,\mathcal C_k)=p(\mathcal C_k|\boldsymbol x)p(\boldsymbol x) p(x,Ck)=p(Ck∣x)p(x)
两项的 p ( x ) p(\boldsymbol x) p(x)相同,因此,若把每个 x \boldsymbol x x分配到后验概率 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)最大的类别中,分类错误的概率就最小
- 最大化正确率 :
p ( c o r r e c t ) = ∑ k = 1 K p ( x ∈ R k , C k ) = ∑ k = 1 K p ( x , C k ) d x p(\mathrm {correct})=\sum_{k=1}^{K}p(\boldsymbol x \in \mathcal R_k,\mathcal C_k)=\sum_{k=1}^Kp(\boldsymbol x,\mathcal C_k)d\boldsymbol x p(correct)=k=1∑Kp(x∈Rk,Ck)=k=1∑Kp(x,Ck)dx
当区域 R k \mathcal R_k Rk的选择使得每个 x \boldsymbol x x都被分到使 p ( x , C k ) p(\boldsymbol x,\mathcal C_k) p(x,Ck)最大的类别中时,上式取得最大值
p ( x , C k ) = p ( C k ∣ x ) p ( x ) p(\boldsymbol x,\mathcal C_k)=p(\mathcal C_k|\boldsymbol x)p(\boldsymbol x) p(x,Ck)=p(Ck∣x)p(x)
所有项的 p ( x ) p(\boldsymbol x) p(x)相同,每个 x \boldsymbol x x都应该分配到后验概率 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)最大的类别中
1.5.2最小化期望损失
很多应用下,目标不仅仅是单纯地最小化错误分类的数量。如医疗诊断的问题,有以下两种错误及其结果:
错误1:没有患癌症的病人错误地诊断为患病 ;结果:可能给病人带来一些压力,且病人可能需要进一步确诊
错误2:给患癌症的病人诊断为健康 ; 结果:可能会因为缺少治疗而使病人过早死亡
这两种错误的结果是不同的。第二种错误更致命,甚至由于少犯第二种错误会导致第一种错误增加也没关系。
-
损失函数(loss function):也叫代价函数(cost function)。是对于所有可能的决策或者动作可能产生的损失的一种整体的度量。有学者考虑效用函数(utility function),最大化效用函数
目标:最小化整体的损失
对于新的 x \boldsymbol x x的值,真实的类别是 C k \mathcal C_k Ck,把 x \boldsymbol x x分类为 C j \mathcal C_j Cj(其中 j j j可能与 k k k相等,也可能不相等),造成的损失记为 L k j L_{kj} Lkj(损失矩阵的第 k k k, j j j个元素)
-
最小化损失函数:
损失函数依赖于真实的类别,是未知的。对于一个给定的输入向量 x \boldsymbol x x,联合概率分布 p ( x , C k ) p(\boldsymbol x,\mathcal C_k) p(x,Ck)表示对于真是类别的不确定性。因此,可以转化为最小化平均损失。
平均损失:
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_{kj}p(\boldsymbol x,\mathcal C_k)d\boldsymbol x E[L]=k∑j∑∫RjLkjp(x,Ck)dx
目标是选择区域 R j \mathcal R_j Rj,最小化期望损失。表明对于每个 x \boldsymbol x x,最小化 ∑ k L k j p ( x , C k ) \sum_kL_{kj}p(\boldsymbol x,\mathcal C_k) ∑kLkjp(x,Ck).消掉共同因子 p ( x ) p(\boldsymbol x) p(x),最小化期望损失的决策规则是对于每个新的 x \boldsymbol x x,把它分到能使下式取得最小值的第 j j j类:
∑ k L k j p ( C k ∣ x ) \sum_k L_{kj}p(\mathcal C_k|\boldsymbol x) k∑Lkjp(Ck∣x)
关键是找后验概率 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)
1.5.3拒绝选项(reject option)
在发生分类错误的输入空间中,后验概率 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)通常远小于1.等价地,不同类别的联合分布 p ( x , C k ) p(\boldsymbol x,\mathcal C_k) p(x,Ck)有着可比的值。这些区域中,类别的归属相对不确定。这时避免做出决策是更合适的。
如医疗例子中,合适的做法是:使用自动化的系统来对那些几乎没有疑问的X光片进行分类,把不容易分类的X光片留给人类的专家。
-
合适的方式:
引入阈值 θ \theta θ;
拒绝后验概率 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)的最大值小于等于 θ \theta θ的那些输入 x \boldsymbol x x
θ = 1 \theta =1 θ=1,所有样本都被拒绝; θ < 1 K \theta <\frac{1}{K} θ<K1,没有样本被拒绝(有 K K K个类别)
θ \theta θ过大,弃真;$\theta $过小,纳伪
1.5.4 推断和决策
-
分类问题划分成两个阶段:
推断(inference)阶段:使用训练数据学习 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)的模型
决策(decision)阶段:使用这些后验概率进行最优的分类
-
另一种方法:同时解决两个问题,即简单地学习一个函数,将输入 x \boldsymbol x x直接映射为决策。这种函数称为判别函数(discriminant function)
-
三种不同的解决决策问题的方法(复杂度依次降低):
-
方法一:生成式模型
对于每个类别 C k \mathcal C_k Ck,独立地确定类条件密度 p ( x ∣ C k ) p(\boldsymbol x|\mathcal C_k) p(x∣Ck)----推断问题;
推断先验类概率 p ( C k ) p(\mathcal C_k) p(Ck);
使用贝叶斯定理 p ( C k ∣ x ) = p ( x ∣ C k ) p ( C k ) p ( x ) p(\mathcal C_k|\boldsymbol x)=\frac{p(\boldsymbol x|\mathcal C_k)p(\mathcal C_k)}{p(\boldsymbol x)} p(Ck∣x)=p(x)p(x∣Ck)p(Ck)求出后验类概率;其中 p ( x ) = ∑ k p ( x ∣ C k ) p ( C k ) p(\boldsymbol x)=\sum_kp(\boldsymbol x|\mathcal C_k)p(\mathcal C_k) p(x)=∑kp(x∣Ck)p(Ck)。
等价地,可以直接对联合概率分布 p ( x , C k ) p(\boldsymbol x,\mathcal C_k) p(x,Ck)建模,然后归一化得到后验概率。再用决策论确定新的输入 x \boldsymbol x x的类别。
-
方法二:判别式模型
确定后验类密度 p ( C k ∣ x ) p(\mathcal C_k|\boldsymbol x) p(Ck∣x)----推断问题
用决策论确定新的输入 x \boldsymbol x x的类别
-
方法三:判别函数
找一个函数 f ( x ) f(\boldsymbol x) f(x),把每个输入 x \boldsymbol x x直接映射为类别标签
与方法二的区别是:这种情况下,概率不起作用
-
生成式模型和判别式模型:
生成式模型(generative model):显式地或隐式地对输入及输出进行建模
判别式模型(discriminative model):直接对后验概率建模
-
-
三种方法的比较分析
-
方法一:
要求解的东西最多,涉及到寻找联合概率分布。 x \boldsymbol x x的维度很高导致需要大量的训练数据才能在合理的精度下确定类条件概率密度。事实上,类条件密度可能包含很多对于后验概率⼏乎没有影响的结构,如下图:
优点是能够通过公式 p ( x ) = ∑ k p ( x ∣ C k ) p ( C k ) p(\boldsymbol x)=\sum_kp(\boldsymbol x|\mathcal C_k)p(\mathcal C_k) p(x)=∑kp(x∣Ck)p(Ck)求出数据的边缘概率密度。可利用这来检测模型中具有低概率的新数据点,这些点可能会导致模型的预测准确率降低,做离群点outlier(异常点novelty)检测
-
方法二:
只求出后验概率做出分类的决策时节省计算资源
-
方法三:
使用训练数据来寻找将每个 x \boldsymbol x x直接映射为类别标签的判别 f ( x ) f(x) f(x),把推断阶段和决策阶段结合到一个学习问题中
-
-
计算后验概率的理由:
-
最小化风险
考虑一个问题,其中的损失矩阵的元素时刻都被修改(如金融应用中)。若知道后验概率,只需修改 ∑ k L k j p ( C k ∣ x ) \sum_k L_{kj}p(\mathcal C_k|\boldsymbol x) ∑kLkjp(Ck∣x)中定义的最小风险决策准则即可。若只有判别准则,那么损失矩阵的任何改变都需要返回训练数据重新解决分类问题
-
拒绝选项
如果给定被拒绝的数据点所占的⽐例,后验概率让我们能够确定最⼩化误分类 率的拒绝标准,或者在更⼀般的情况下确定最⼩化期望损失的拒绝标准。
-
补偿类先验概率
考虑医疗X光问题,一个将所有的点都判定为正常类别的分类器就已经能够达到99.9%的精度----平凡解。数据集极不平衡,需要修改训练数据。
而后需要补偿修改训练数据造成的影响。具体做法:把人造的平衡数据中得到的后验概率除以数据集里的类比例,再乘以我们想要应用模型的目标人群中类别的比例。最后归一化。即
人 造 的 平 衡 数 据 中 得 到 的 后 验 概 率 数 据 集 里 的 类 比 例 × 目 标 人 群 中 类 别 的 比 例 \frac{人造的平衡数据中得到的后验概率}{数据集里的类比例}\times 目标人群中类别的比例 数据集里的类比例人造的平衡数据中得到的后验概率×目标人群中类别的比例 -
组合模型
复杂的应用可以先分解成若干个小的子问题,每个子问题都可以通过一个独立的模型解决。
考虑医疗诊断问题,可能有来自血液检查的数据和X光片,独立。
p ( x I , x B ∣ C k ) = p ( x I ∣ C k ) p ( x B ∣ C k ) p(\boldsymbol x_I,\boldsymbol x_B|\mathcal C_k)=p(\boldsymbol x_I|\mathcal C_k)p(\boldsymbol x_B|\mathcal C_k) p(xI,xB∣Ck)=p(xI∣Ck)p(xB∣Ck)
这是条件独立(conditional independence)的一个例子。这个独立性假设是朴素贝叶斯模型(naive Bayes model)的一个例子后验概率为
p ( C k ∣ x I , x B ) ∝ p ( x I , x B ∣ C k ) p ( C k ) ∝ p ( x I ∣ C k ) p ( x B ∣ C k ) p ( C k ) p(\mathcal C_k|\boldsymbol x_I,\boldsymbol x_B)\propto p(\boldsymbol x_I,\boldsymbol x_B|\mathcal C_k)p(\mathcal C_k)\propto p(\boldsymbol x_I|\mathcal C_k)p(\boldsymbol x_B|\mathcal C_k)p(\mathcal C_k) p(Ck∣xI,xB)∝p(xI,xB∣Ck)p(Ck)∝p(xI∣Ck)p(xB∣Ck)p(Ck)∝ p ( C k ∣ x I ) p ( C k ∣ x B ) p ( C k ) \propto\frac{p(\mathcal C_k|\boldsymbol x_I)p(\mathcal C_k|\boldsymbol x_B)}{p(\mathcal C_k)} ∝p(Ck)p(Ck∣xI)p(Ck∣xB)
需要通过估计每个类别的数据点所占的比例求出类先验概率 p ( C k ) p(\mathcal C_k) p(Ck),后进行归一化。
-
1.5.5回归问题的损失函数
-
推导一:
考虑回归问题,决策阶段包括对于每个输入 x \boldsymbol x x,选择一个对于 t t t值的具体的估计 y ( x ) y(\boldsymbol x) y(x),造成损失 L ( t , y ( x ) ) L(t,y(\boldsymbol x)) L(t,y(x))。平均损失(期望损失):
E [ L ] = ∫ ∫ L ( t , y ( x ) ) p ( x , t ) d x d t \mathbb E[L]=\int\int L(t,y(\boldsymbol x))p(\boldsymbol x,t)d\boldsymbol xdt E[L]=∫∫L(t,y(x))p(x,t)dxdtL ( t , y ( x ) ) = { y ( x ) − t } 2 L(t,y(\boldsymbol x))=\left\{y(\boldsymbol x)-t\right\}^2 L(t,y(x))={y(x)−t}2
E [ L ] = ∫ ∫ { y ( x ) − t } 2 p ( x , t ) d x d t \mathbb E[L]=\int\int \left\{y(\boldsymbol x)-t\right\}^2 p(\boldsymbol x,t)d\boldsymbol xdt E[L]=∫∫{y(x)−t}2p(x,t)dxdt
目标:选择 y ( x ) y(\boldsymbol x) y(x)来最小化 E [ L ] \mathbb E[L] E[L].使用变分法求解
∂ E [ L ] ∂ y ( x ) = 2 ∫ { y ( x ) − t } p ( x , t ) d t = 0 \frac{\partial {\mathbb E[L]}}{\partial {y(\boldsymbol x)}}=2\int \left\{y(\boldsymbol x)-t\right\}p(\boldsymbol x,t)dt=0 ∂y(x)∂E[L]=2∫{y(x)−t}p(x,t)dt=0
求解 y ( x ) y(\boldsymbol x) y(x):
∫ y ( x ) p ( x , t ) d t = ∫ t p ( x , t ) d t \int y(\boldsymbol x)p(\boldsymbol x,t)dt=\int tp(\boldsymbol x,t)dt ∫y(x)p(x,t)dt=∫tp(x,t)dty ( x ) ∫ p ( x , t ) d t = y ( x ) p ( x ) = ∫ t p ( x , t ) d t y(\boldsymbol x)\int p(\boldsymbol x,t)dt=y(\boldsymbol x)p(\boldsymbol x)=\int tp(\boldsymbol x,t)dt y(x)∫p(x,t)dt=y(x)p(x)=∫tp(x,t)dt
y ( x ) = ∫ t p ( x , t ) d t p ( x ) = ∫ t p ( t ∣ x ) d t = E t [ t ∣ x ] y(\boldsymbol x)=\frac{\int tp(\boldsymbol x,t)dt}{p(\boldsymbol x)}=\int tp(t|\boldsymbol x)dt=\mathbb E_t[t|\boldsymbol x] y(x)=p(x)∫tp(x,t)dt=∫tp(t∣x)dt=Et[t∣x]
在 x \boldsymbol x x的条件下 t t t的条件均值----回归函数(regression function)。这种情况下,最优解是条件均值 y ( x ) = E t [ t ∣ x ] \boldsymbol y(\boldsymbol x)=\mathbb E_t[\boldsymbol t|\boldsymbol x] y(x)=Et[t∣x]
-
另一种推导方法:
{ y ( x ) − t } 2 = { y ( x ) − E [ t ∣ x ] + E [ t ∣ x ] − t } 2 \left\{y(\boldsymbol x)-t\right\}^2=\left\{y(\boldsymbol x)-\mathbb E[t|\boldsymbol x]+\mathbb E[t|\boldsymbol x]-t\right\}^2 {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 =\left\{y(\boldsymbol x)-\mathbb E[t|\boldsymbol x]\right\}^2+2\left\{y(\boldsymbol x)-\mathbb E[t|\boldsymbol x]\right\}\left\{\mathbb E[t|\boldsymbol x]-t\right\}+\left\{\mathbb E[t|\boldsymbol x]-t\right\}^2 ={y(x)−E[t∣x]}2+2{y(x)−E[t∣x]}{E[t∣x]−t}+{E[t∣x]−t}2
其中 E [ t ∣ x ] = E t [ t ∣ x ] \mathbb E[t|\boldsymbol x]=\mathbb E_t[t|\boldsymbol x] E[t∣x]=Et[t∣x],因此损失函数为
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 \left\{y(\boldsymbol x)-\mathbb E[t|\boldsymbol x]\right\}^2p(\boldsymbol x)d\boldsymbol x+\int \left\{\mathbb E[t|\boldsymbol x]-t\right\}^2p(\boldsymbol x)d\boldsymbol x E[L]=∫{y(x)−E[t∣x]}2p(x)dx+∫{E[t∣x]−t}2p(x)dx
当 y ( x ) = E [ t ∣ x ] y(\boldsymbol x)=\mathbb E[t|\boldsymbol x] y(x)=E[t∣x]时第一项取得最小值,消掉第一项。和之前的一样表明,最优的最⼩平⽅预测由条件均值给出。第二项是 t t t的分布的方差,在 x \boldsymbol x x上的平均。表示目标数据内在的变化性,可以被看做噪声,是损失函数的不可减小的最小值。
-
三种解决回归问题的方法(复杂度降低的顺序):
-
方法一:
解决确定联合概率密度 p ( x , t ) p(\boldsymbol x,t) p(x,t)的推断问题
计算条件概率密度 p ( t ∣ x ) p(t|\boldsymbol x) p(t∣x)
求出条件均值
-
方法二:
首先解决条件概率密度 p ( t ∣ x ) p(t|\boldsymbol x) p(t∣x)的推断问题
计算条件均值
-
方法三:
直接从训练数据中寻找一个回归函数 y ( x ) y(\boldsymbol x) y(x)
-
-
平方损失函数的一种推广----闵可夫斯基损失函数(Minkowski loss)
期望为
E [ L q ] = ∫ ∫ ∣ y ( x ) − t ∣ q p ( x , t ) d x d t \mathbb E[L_q]=\int \int |y(\boldsymbol x)-t|^qp(\boldsymbol x,t)d\boldsymbol xdt E[Lq]=∫∫∣y(x)−t∣qp(x,t)dxdt
当q = 2时, E [ L q ] \mathbb E[L_q] E[Lq]的最⼩值是条件均值。当q = 1时, E [ L q ] \mathbb E[L_q] E[Lq]的最⼩值是条件中位 数。当 q → 0 q\to 0 q→0时, E [ L q ] \mathbb E[L_q] E[Lq]的最⼩值是条件众数
1.6信息论
-
信息量:
有两个不相关的事件 x x x和 y y y,
观察到两个事件同时发生时获得的信息等于观察到事件各自发生时获得的信息之和,即
h ( x , y ) = h ( x ) + h ( y ) h(x,y)=h(x)+h(y) h(x,y)=h(x)+h(y)
两个不相关事件是统计独立的,即
p ( x , y ) = p ( x ) p ( y ) p(x,y)=p(x)p(y) p(x,y)=p(x)p(y)
因此有
h ( x ) = − log 2 p ( x ) h(x)=-\log_2p(x) h(x)=−log2p(x)
其中负号确保了信息⼀定是正数或者是零。信息论的普遍传统使用2作为对数的底,单位是bit -
随机变量 x x x的熵:
假设想传输一个随机变量 x x x的值,传输的平均信息量(即期望)为
H [ x ] = − ∑ x p ( x ) log 2 p ( x ) H[x]=-\sum_xp(x)\log_2p(x) H[x]=−x∑p(x)log2p(x)
注意 lim p → 0 p log ) 2 p ( x ) = 0 \lim_{p\to 0}p\log)2p(x)=0 limp→0plog)2p(x)=0,因此只要有 x x x使得 p ( x ) = 0 p(x)=0 p(x)=0,就该令 p ( x ) log 2 p ( x ) = 0 p(x)\log_2p(x)=0 p(x)log2p(x)=0非均匀分布比均匀分布的熵小。
熵是传输一个随机变量状态值所需的比特位的下界。
-
编码的平均长度:
使用更短的编码描述更可能的事件,更长的编码描述不太可能的事件
使用编码串:0、10、110、1110、111100、111101、111110、111111表示状态{ a , b , c , d , e , f , g , h a,b,c,d,e,f,g,h a,b,c,d,e,f,g,h}
传输的编码的平均长度是
a v e r a g e c o d e l e n g t h = 1 2 × 1 + 1 4 × 2 + 1 8 × 3 + 1 16 × 4 + 4 × 1 64 × 6 = 2 b i t s average code length=\frac{1}{2}\times 1+\frac{1}{4}\times 2+\frac{1}{8}\times 3+\frac{1}{16}\times 4+4\times \frac{1}{64}\times 6=2 bits averagecodelength=21×1+41×2+81×3+161×4+4×641×6=2bits
注意不能使用更短的编码串,因为必须能够从多个这种字符串的拼接中分割出各个独立的字符串。如11001110唯一的编码了状态序列 c , a , d c,a,d c,a,d -
熵等同于最短编码长度
-
熵的理解:
最早源于物理学,描述统计力学中的无序程度的度量。
考虑⼀个集合,包含 N N N个完全相同的物体,这些 物体要被分到若⼲个箱⼦中,使得第 i i i个箱⼦中有 n i n_i ni个物体。考虑把物体分配到箱子中的不同方案的数量。有 N N N种方式选择第一个物体, N − 1 N-1 N−1种方式选择第二个物体,总共有 N ! N! N!种方式把 N N N个物体分配到箱子中。在第 i i i个箱⼦中,有 n i n_i ni种方式对物体重新排序。不区分每个箱子内部物体的重新排列。总方案数量为
W = N ! ∏ i n i ! W=\frac{N!}{\prod_in_i!} W=∏ini!N!
称为乘数(multiplicity)。熵被定义为通过适当的参数放缩后的对数乘数,即
H = 1 N ln W = 1 N ln N ! − 1 N ∑ i ln n i ! H=\frac{1}{N}\ln W=\frac{1}{N}\ln N!-\frac{1}{N}\sum_i\ln n_i! H=N1lnW=N1lnN!−N1i∑lnni!
考虑极限 N → ∞ N\to \infty N→∞,保持比值 n i N \frac{n_i}{N} Nni固定,使用Stirling的估计
ln N ! ≃ N ln N − N \ln N!\simeq N\ln N-N lnN!≃NlnN−Np i = lim N → ∞ ( n i N ) p_i=\lim_{N\to \infty}(\frac{n_i}{N}) pi=N→∞lim(Nni)
得到
H = 1 N ln N ! − 1 N ∑ i ln n i ! = 1 N ( N ln N − N ) − 1 N ∑ i ( n i ln n i − n i ) H=\frac{1}{N}\ln N!-\frac{1}{N}\sum_i\ln n_i!=\frac{1}{N}(N\ln N-N)-\frac{1}{N}\sum_i(n_i\ln n_i-n_i) H=N1lnN!−N1i∑lnni!=N1(NlnN−N)−N1i∑(nilnni−ni)= ln N − 1 − ∑ i n i N ln n i + 1 N ∑ i n i = ln N − ∑ i n i N ln n i =\ln N-1-\sum_i\frac{n_i}{N}\ln n_i+\frac{1}{N}\sum_in_i=\ln N-\sum_i\frac{n_i}{N}\ln n_i =lnN−1−i∑Nnilnni+N1i∑ni=lnN−i∑Nnilnni
= ∑ i n i N ln N − ∑ i n i N ln n i = − lim N → ∞ ∑ i n i N ln n i N = − ∑ i p i ln p i =\sum_i\frac{n_i}{N}\ln N-\sum_i\frac{n_i}{N}\ln n_i=-\lim_{N\to \infty}\sum_i\frac{n_i}{N}\ln \frac{n_i}{N}=-\sum_ip_i\ln p_i =i∑NnilnN−i∑Nnilnni=−N→∞limi∑NnilnNni=−i∑pilnpi
微观状态(microstate):箱子中物体的具体分配方案
宏观状态(macrostate):整体的占领数的分布,表示为比值 n i N \frac{n_i}{N} Nni。乘数 W W W称为宏观状态的权重
把箱子表述成离散随机变量 X X X的状态 x i x_i xi,其中 p ( X = x i ) = p i p(X=x_i)=p_i p(X=xi)=pi。
- 那么随机变量的熵为
H [ p ] = − ∑ i p ( x i ) ln p ( x i ) H[p]=-\sum_ip(x_i)\ln p(x_i) H[p]=−i∑p(xi)lnp(xi)
-
熵的最大值:
使用拉格朗日乘数法最大化
H ~ = − ∑ i p ( x i ) ln p ( x i ) + λ ( ∑ i p ( x i ) − 1 ) \tilde H=-\sum_ip(x_i)\ln p(x_i)+\lambda(\sum_ip(x_i)-1) H~=−i∑p(xi)lnp(xi)+λ(i∑p(xi)−1)
当所有的 p ( x i ) p(x_i) p(xi)都相等,且 p ( x i ) = 1 M p(x_i)=\frac{1}{M} p(xi)=M1时,熵取得最大值。其中 M M M是状态 x i x_i xi的总数,此时 H = ln M H=\ln M H=lnM熵的二阶导数为
∂ 2 H ~ ∂ p ( x i ) ∂ p ( x i ) = − I i j 1 p i \frac{\partial ^2\tilde H}{\partial p(x_i)\partial p(x_i)}=-I_{ij}\frac{1}{p_i} ∂p(xi)∂p(xi)∂2H~=−Iijpi1
其中 I i j I_{ij} Iij是单位矩阵的元素 -
连续变量的概率分布 p ( x ) p(x) p(x)
把 x x x切分成宽度为 Δ \Delta Δ的箱子,假设 p ( x ) p(x) p(x)是连续的,均值定理表示,对于每个这样的箱子,一定存在一个值 x i x_i xi使得
H Δ = − ∑ i p ( x i ) Δ ln ( p ( x i ) Δ ) = − ∑ i p ( x i ) Δ ln p ( x i ) − ln Δ H_{\Delta}=-\sum_ip(x_i)\Delta\ln(p(x_i)\Delta)=-\sum_ip(x_i)\Delta\ln p(x_i)-\ln \Delta HΔ=−i∑p(xi)Δln(p(xi)Δ)=−i∑p(xi)Δlnp(xi)−lnΔ
忽略第二项 − ln Δ -\ln \Delta −lnΔ,考虑极限
lim Δ → 0 { − ∑ i p ( x i ) Δ ln p ( x i ) } = − ∫ p ( x ) ln p ( x ) d x \lim_{\Delta \to 0}\left\{-\sum_ip(x_i)\Delta\ln p(x_i)\right\}=-\int p(x)\ln p(x)dx Δ→0lim{−i∑p(xi)Δlnp(xi)}=−∫p(x)lnp(x)dx
称为微分熵(differential entropy)。可以看出,熵的离散形式与连续形式的差是 ln Δ \ln \Delta lnΔ,在极限下发散。这说明具体化一个连续变量需要大量的比特位。
多元连续变量的微分熵为
H [ x ] = − ∫ p ( x ) ln p ( x ) d x H[\boldsymbol x]=-\int p(\boldsymbol x)\ln p(\boldsymbol x)d\boldsymbol x H[x]=−∫p(x)lnp(x)dx
最大化微分熵时需遵循下面三个限制
∫ − ∞ ∞ p ( x ) d x = 1 \int_{-\infty}^{\infty}p(x)dx=1 ∫−∞∞p(x)dx=1∫ − ∞ ∞ x p ( x ) d x = μ \int_{-\infty}^{\infty}xp(x)dx=\mu ∫−∞∞xp(x)dx=μ
∫ − ∞ ∞ ( x − μ ) 2 p ( x ) d x = σ 2 \int_{-\infty}^{\infty}(x-\mu)^2p(x)dx=\sigma^2 ∫−∞∞(x−μ)2p(x)dx=σ2
使用拉格朗日乘数法求解最大化
− ∫ p ( x ) ln p ( x ) d x + λ 1 ( ∫ − ∞ ∞ p ( x ) d x − 1 ) + λ 2 ( ∫ − ∞ ∞ x p ( x ) d x − μ ) -\int p(x)\ln p(x)dx+\lambda_1(\int_{-\infty}^{\infty}p(x)dx-1)+\lambda_2(\int_{-\infty}^{\infty}xp(x)dx-\mu) −∫p(x)lnp(x)dx+λ1(∫−∞∞p(x)dx−1)+λ2(∫−∞∞xp(x)dx−μ)+ λ 3 ( ∫ − ∞ ∞ ( x − μ ) 2 p ( x ) d x − σ 2 ) +\lambda_3(\int_{-\infty}^{\infty}(x-\mu)^2p(x)dx-\sigma^2) +λ3(∫−∞∞(x−μ)2p(x)dx−σ2)
使用变分法令导数为零,有
p ( x ) = exp { − 1 + λ 1 + λ 2 x + λ 3 ( x − μ ) 2 } p(x)=\exp \left\{-1+\lambda_1+\lambda_2x+\lambda_3(x-\mu)^2\right\} p(x)=exp{−1+λ1+λ2x+λ3(x−μ)2}
代入限制方程中,结果为
p ( x ) = 1 ( 2 π σ 2 ) 1 2 exp { − ( x − μ ) 2 2 σ 2 } p(x)=\frac{1}{(2\pi\sigma^2)^{\frac{1}{2}}}\exp\left\{-\frac{(x-\mu)^2}{2\sigma^2}\right\} p(x)=(2πσ2)211exp{−2σ2(x−μ)2}
因此最大化微分熵的分布是高斯分布。求高斯分布的微分熵,得到
H [ x ] = 1 2 { 1 + ln ( 2 π σ 2 ) } H[x]=\frac{1}{2}\left\{1+\ln(2\pi \sigma ^2)\right\} H[x]=21{1+ln(2πσ2)}
熵随着分布宽度 σ 2 \sigma ^2 σ2的增加而增加。当 σ 2 < 1 2 π e \sigma ^2<\frac{1}{2\pi e} σ2<2πe1时, H [ x ] < 0 H[x]<0 H[x]<0 -
两个随机变量:
假设有一个联合概率分布 p ( x , y ) p(\boldsymbol x,\boldsymbol y) p(x,y)。如果 x \boldsymbol x xd的值已知,需要确定对应的 y \boldsymbol y y值所需的附加的信息为 − ln p ( y ∣ x ) -\ln p(\boldsymbol y|\boldsymbol x) −lnp(y∣x)。因此用来确定 y \boldsymbol y y值的平均附加信息为
H [ Y ∣ x ] = − ∫ ∫ p ( x , y ) ln p ( y ∣ x ) d y d x H[\boldsymbol Y|\boldsymbol x]=-\int\int p(\boldsymbol x,\boldsymbol y)\ln p(\boldsymbol y|\boldsymbol x)d\boldsymbol yd\boldsymbol x H[Y∣x]=−∫∫p(x,y)lnp(y∣x)dydx
称为给定 x \boldsymbol x x的情况下, y \boldsymbol y y的条件熵。条件熵满足
H [ x , y ] = H [ y ∣ x ] + H [ x ] H[\boldsymbol x,\boldsymbol y]=H[\boldsymbol y|\boldsymbol x]+H[\boldsymbol x] H[x,y]=H[y∣x]+H[x]
其中 H [ x ] H[\boldsymbol x] H[x]是边缘分布 p ( x ) p(\boldsymbol x) p(x)的微分熵。因此描述 x \boldsymbol x x和 y \boldsymbol y ys所需的信息是描述 x \boldsymbol x x自己所需的信息加上给定 x \boldsymbol x x的情况下具体化 y \boldsymbol y y所需的额外信息
1.6.1相对熵和互信息
将熵的思想关联到模式识别的问题中
-
相对熵(relative entropy):
两个分布之间不相似程度的度量。
考虑某个未知的分布 p ( x ) p(\boldsymbol x) p(x),假定使用一个近似的分布 q ( x ) q(\boldsymbol x) q(x)进行建模 。如果我们使用 q ( x ) q(\boldsymbol x) q(x)而不是真实分布 p ( x ) p(\boldsymbol x) p(x),在具体化 x \boldsymbol x x的值时,需要的平均的附加信息量为
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 KL(p||q)=-\int p(\boldsymbol x)\ln q(\boldsymbol x)d\boldsymbol x-(-\int p(\boldsymbol x)\ln p(\boldsymbol x)d\boldsymbol x)=-\int p(\boldsymbol x)\ln \left\{\frac{q(\boldsymbol x)}{p(\boldsymbol x)}\right\}d\boldsymbol x KL(p∣∣q)=−∫p(x)lnq(x)dx−(−∫p(x)lnp(x)dx)=−∫p(x)ln{p(x)q(x)}dx
称为分布 p ( x ) p(\boldsymbol x) p(x)和分布 q ( x ) q(\boldsymbol x) q(x)之间的相对熵,或KL散度。 K L ( p ∣ ∣ q ) ̸ ≡ K L ( q ∣ ∣ p ) KL(p||q)\not\equiv KL(q||p) KL(p∣∣q)̸≡KL(q∣∣p) -
K L ( p ∣ ∣ q ) ≥ 0 KL(p||q)\ge 0 KL(p∣∣q)≥0且当且仅当 p ( x ) = q ( x ) p(\boldsymbol x)=q(\boldsymbol x) p(x)=q(x)时等号成立
证明:
凸函数(convex function):函数的每条弦都位于函数图像或其上方
位于
x
=
a
x=a
x=a到
x
=
b
x=b
x=b之间的
x
x
x可以写成
λ
a
+
(
1
−
λ
)
b
\lambda a+(1-\lambda)b
λa+(1−λ)b的形式,其中
0
≤
λ
≤
1
0\leq \lambda \leq 1
0≤λ≤1。弦上的对应点写成
λ
f
(
a
)
+
(
1
−
λ
)
f
(
b
)
\lambda f(a)+(1-\lambda)f(b)
λf(a)+(1−λ)f(b),函数的对应值为
f
(
λ
a
+
(
1
−
λ
)
b
)
f(\lambda a+(1-\lambda)b)
f(λa+(1−λ)b)。凸函数的性质表示为
f
(
λ
a
+
(
1
−
λ
)
b
)
≤
λ
f
(
a
)
+
(
1
−
λ
)
f
(
b
)
f(\lambda a+(1-\lambda)b)\leq \lambda f(a)+(1-\lambda)f(b)
f(λa+(1−λ)b)≤λf(a)+(1−λ)f(b)
等价于二阶导数处处为正。等号只在
λ
=
0
\lambda=0
λ=0和
λ
=
1
\lambda=1
λ=1时取到则叫严格凸函数。
凸函数满足Jensen不等式:
f
(
∑
i
=
1
M
λ
i
x
i
)
≤
∑
i
=
1
M
λ
i
f
(
x
i
)
f(\sum_{i=1}^M\lambda _i x_i)\leq \sum_{i=1}^M\lambda _i f(x_i)
f(i=1∑Mλixi)≤i=1∑Mλif(xi)
对于任意点集{
x
i
x_i
xi},都有
λ
i
≥
0
\lambda _i\ge 0
λi≥0且
∑
i
λ
i
=
1
\sum_i\lambda _i=1
∑iλi=1。如果把
λ
i
\lambda _i
λi看成取值为{
x
i
x_i
xi}的离散变量
x
x
x的概率分布,则
f
(
E
[
x
]
)
≤
E
[
f
(
x
)
]
f(\mathbb E[x])\leq \mathbb E[f(x)]
f(E[x])≤E[f(x)]
连续变量,
f
(
∫
x
p
(
x
)
d
x
)
≤
∫
f
(
x
)
p
(
x
)
d
x
f(\int \boldsymbol x p(\boldsymbol x)d\boldsymbol x)\leq \int f(\boldsymbol x)p(\boldsymbol x)d\boldsymbol x
f(∫xp(x)dx)≤∫f(x)p(x)dx
代入,得
K
L
(
p
∣
∣
q
)
=
−
∫
p
(
x
)
ln
{
q
(
x
)
p
(
x
)
}
d
x
≥
−
ln
∫
q
(
x
)
d
x
=
0
KL(p||q)=-\int p(\boldsymbol x)\ln \left\{\frac{q(\boldsymbol x)}{p(\boldsymbol x)}\right\}d\boldsymbol x\ge -\ln \int q(\boldsymbol x)d\boldsymbol x=0
KL(p∣∣q)=−∫p(x)ln{p(x)q(x)}dx≥−ln∫q(x)dx=0
−
ln
x
-\ln x
−lnx是严格凸函数,
∫
q
(
x
)
d
x
=
1
\int q(\boldsymbol x)d\boldsymbol x=1
∫q(x)dx=1。因此只有
p
(
x
)
=
q
(
x
)
p(\boldsymbol x)=q(\boldsymbol x)
p(x)=q(x)时等号才成立。
建模时使用不同于真实分布的概率分布,一定会损失编码效率。
传输时增加的平均额外信息量至少或大于KL散度。
-
使用参数分布 q ( x ∣ θ ) q(\boldsymbol x|\boldsymbol \theta) q(x∣θ)来近似分布,
K L ( p ∣ ∣ q ) ≃ 1 N ∑ n = 1 N { − ln q ( x n ∣ θ ) + ln p ( x n ) } KL(p||q)\simeq \frac{1}{N}\sum_{n=1}{N}\left\{-\ln q(\boldsymbol x_n|\boldsymbol \theta)+\ln p(\boldsymbol x_n)\right\} KL(p∣∣q)≃N1n=1∑N{−lnq(xn∣θ)+lnp(xn)}
第一项是使用训练集估计的分布 q ( x ∣ θ ) q(\boldsymbol x|\boldsymbol \theta) q(x∣θ)下的 θ \boldsymbol \theta θ的负对数似然函数。因此最小化KL散度等价于最大化似然函数。 -
互信息(mutual information):
如果两个变量不是独立的,考察联合概率分布与边缘概率分布乘积之间的KL散度:
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 I[\boldsymbol x,\boldsymbol y]=KL(p(\boldsymbol x,\boldsymbol y)||p(\boldsymbol x)p(\boldsymbol y))=-\int \int p(\boldsymbol x,\boldsymbol y)\ln (\frac{p(\boldsymbol x)p(\boldsymbol y)}{p(\boldsymbol x,\boldsymbol y)})d\boldsymbol xd\boldsymbol y 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[\boldsymbol x,\boldsymbol y]\ge 0 I[x,y]≥0,当且仅当 x \boldsymbol x x和 y \boldsymbol y y独立时等号成立 -
互信息与条件熵之间的关系:
I [ x , y ] = H [ x ] − H [ x ∣ y ] = H [ y ] − H [ y ∣ x ] I[\boldsymbol x,\boldsymbol y]=H[\boldsymbol x]-H[\boldsymbol x|\boldsymbol y]=H[\boldsymbol y]-H[\boldsymbol y|\boldsymbol x] I[x,y]=H[x]−H[x∣y]=H[y]−H[y∣x]
因此可以把互信息看成由于知道 y \boldsymbol y y值而造成的 x \boldsymbol x x的不确定性的减小。从贝叶斯的观点看,把 p ( x ) p(\boldsymbol x) p(x)看成 x \boldsymbol x x的先验概率分布,把 p ( x ∣ y ) p(\boldsymbol x|\boldsymbol y) p(x∣y)看成观察到新数据 y \boldsymbol y y之后的后验概率分布,因此互信息表示由于知道 y \boldsymbol y y值而造成的 x \boldsymbol x x的不确定性的减小