[关闭]
@Hederahelix 2015-05-27T11:53:07.000000Z 字数 6990 阅读 2241

第四章 Linear Models for Classification

PRML 机器学习


此处输入图片的描述

章节细讲


重点讲了解决分类问题的三种不同方法,最简单的是判别函数, 它直接将 inference 和 decision 两个阶段合在一起,建立判别函数,判别函数就是输入x然后输出就是类的编号。剩下的两种分类方法都是将 inference 和 decision 分开,不同的是生成模型不直接对p(Ck|x)建模,而是通过对p(x|Ck)p(Ck)建模,然后使用贝叶斯公式获得p(Ck|x)。而对应的判别模型,则直接对p(Ck|x)建模,相比生成模型,判别模型的参数通常更少。
当在线性模型外面套一个激活函数(通常是非线性函数)就称为广义线性模型,广义线性模型的分割面是超平面。

4.1. Discriminant Functions
4.1.3 Least squares for classification
如同regression中的 sum-of-squares error方法,有解析解,但是由于least squares是假设似然函数的条件概率是服从高斯分布,而这和分类问题的目标相差甚远,所以效果很差,一般不会使用。
4.1.4 Fisher’s linear discriminant
Fisher一般是作为有监督的降维使用。输入数据 x 是一个D维向量,但是y=wTx却是一个只有一维的scalar,这个过程可以看作是D维的一个向量投影到1维空间上。Fisher判别的思想是,把分类看作选择一个1维空间,并把原D维数据投影到该空间的过程;选择1维空间的准则是Fisher criterion,包含两方面的要求:一方面要求投影到1维空间后,不同类的数据是分开的(投影后各个类的均值之差大1N1nC1wTxn1N2nC2wTxn);而另一方面要求同一类的数据能够尽可能聚集在一块(投影后方差小s2k=nCk(wTxnmk)2)。Fisher criterion是这两方面要求的量化(两者相除)。求解Fisher criterion最大化后,得到参数w,即确定了decision hyperplane的(法)方向;剩下只需要再在1维上确定一个阈值y0,表明该超平面的位置即可。
4.1.7 The perceptron algorithm
感知机也是Generalized Linear Model y=f(wTx+w0),其中激活函数是阶跃函数,而损失函数是perceptron criterion。首先修改一下类的标号方式:把第1类记tC1为+1,第2类记tC2为-1。对于一个数据xn如果属于第1类,则有wTxn>0;如果属于第2类,则有wTxn<0;因此正确分类的数据xn总是有wTxntn>0。而对于每个误分类的数据xnwTxntn<0,我们的目标是最小化误分类的wTxntn。perceptron criterion,就是把所有误分类的这个目标相加,得到Ep(w)=nMwTxntn,其中M是全部误分类数据点的集合。最小化这个目标函数没有closed解,可以用stochastic gradient descent算法解。

w(τ+1)=w(τ)+ηϕntn

4.2. Probabilistic Generative Models
需要建模input的分布,即得到class-conditional distribution,用贝叶斯定理转化成后验概率后,就是和Discriminant model一样进行决策了

p(C1|x)=p(x|C1)p(C1)p(x|C1)p(C1)+p(x|C2)p(C2)=11+exp(a)=σ(a)(1)

其中
a=lnp(x|C1)p(C1)p(x|C2)p(C2)(2)

对于指数族分布,a是关于x的线性函数。
4.2.1 Continuous inputs
假设input的class-conditional distribution的分布形式为Gaussian,而且进一步假设每个类别的class-conditional distribution具有相同的covariance matrix Σ,不同的仅仅是各自的均值向量μ
p(x|Ck)=1(2π)D/21|Σ|1/2exp{12(xμk)TΣ1(xμk)}

则通过(1)式和(2)式可以得到
p(C1|x)=σ(lnp(x|C1)p(C1)p(x|C2)p(C2))=σ(wTx+w0)(3)

其中:
w=Σ1(μ1μ2)w0=12μT1Σ1μ1+12μT2Σ1μ2+lnp(C1)p(C2)

可以看出a是关于x的线性函数,得到的后验概率刚好是一个GLM模型(Logistic)。
此处输入图片的描述
上图说明当条件分布共享Σ时(绿色和红色),生成模型的决策面是超平面。
4.2.3 Discrete features
假设input的class-conditional distribution的分布形式为二项分布,而且进一步假设每个特征是条件独立的。
p(x|Ck)=i=1Dμxiki(1μki)1xi

则通过(1)式和(2)式可以得到
p(C1|x)=σ(lnp(x|C1)p(C1)p(x|C2)p(C2))=σ(wTx+w0)(4)

其中:
ak(x)=i=1Dxilnμki+(1xi)ln(1μki)+lnp(Ck)

可以看出a是关于x的线性函数。
4.2.4 Exponential family
通过(3)式和(4)式可以看出,对于高斯分布和二项分布来说,后验概率都可以看成激活函数是sigmod函数的广义线性模型,即p(Ck|x)=σ(wTx+w0),。其实,这是指数族分布的特性,即当条件概率是指数族分布时候(有少许限制,例如高斯分布有共同的Σ),后验概率都可以看成激活函数是sigmod函数的广义线性模型。

4.3. Probabilistic Discriminative Models
对于二分类问题来说,我们从4.2.4看到对于很多的条件概率来说,后验概率都是σ(wTx+w0)。对于生成模型我们需要对p(x|Ck)p(Ck)建模,然后再使用贝叶斯公式求出后验概率,即隐式确定σ(wTx+w0)ww0的值。因此,我们可以跳过条件概率和先验而直接对后验概率建模求出ww0的值,即判别模型。相比于生成模型的参数是维度的平方级,而判别模型的参数则仅仅是维度的线性函数。
4.3.3 Iterative reweighted least squares
logstic回归的后验概率:

p(Cx|x)=σ(wTx)

则似然函数是:
p(D|w)=n=1Nσtn(1σ)1tn

损失函数是求出最小化cross-entropy error function:
E(w)=ln p(t|w)=n=1N{tnlnσ+(1tn)ln(1σ)}

另外,如果激活函数是probit function,那么就得到probit regression。probit function就是标准正态分布的累计函数。

最小化E(w)应求出其梯度,并令梯度为0,注意到方程E(w)=0不存在closed-form solution,因为这个方程含有多个非线性的logistic function的求和。
IRLS其实就是牛顿迭代法,用于解如下方程:

E(w)=0

因此会涉及到Hessian矩阵,求解该方程的迭代公式为:
w(new)=w(old)H1E(w)

4.3.6 Canonical link functions
对于指数族分布的对数似然函数对参数w求导,都得到(yntn)ϕn的形式:
E(w)=1sn=1N{yntn}ϕn

4.4. The Laplace Approximation
Laplace Approximation即找一个高斯分布q(z),来近似一个复杂的分布p(z)=1Zf(z),其中Z是一个对f(z)的归一化因子。
找q(z)的方法是:首先找到f(z)的一个驻点x0,然后在这点处将ln f(z)泰勒展开:

ln f(z)ln f(z0)12A(zz0)2

其中,A=d2dz2ln f(z)|z=z0,因此:
f(z)f(z0)exp{12A(zz0)2}

因为指数部分是z的平方函数,所以可以使用高斯分布近似:
q(z)(A2π)12exp{12(zz0)TA(zz0)}=N(z0,A1)

因此,得到用来近似原复杂分布p(z)的高斯分布q(z)
此处输入图片的描述
左图中黄色区域是目标分布,红色曲线是近似高斯分布。右图可以看出可以看出两个分布都在同一点取得众数。
4.4.1 Model comparison and BIC
通过对f(z)做Laplace Approximation我们可以得:
Z=f(z)dzf(z0)exp{12(zz0)TA(zz0)}dz=f(z0)(2π)M/2|A|1/2

考虑模型的model evidence:
p(D|Mi)=p(D|Mi,θ)p(θ|Mi)dθ

假设f(θ)=p(D|Mi,θ)p(θ|Mi),因此Z=p(D|Mi),得:
lnp(D|Mi)lnp(D|Mi,θMAP)+lnp(θMAP)+M2ln(2π)12|A|

4.5. Bayesian Logistic Regression
以2类的情况考虑。对于一个新的feature vector ,现在要计算它的predictive distribution,也就是:p(C1|ϕ,t)=p(C1|ϕ,w)p(w|t)dw=σ(wTx)p(w|t)dw,涉及到Bayesian方法的典型问题,即marginalize over parameter space;以及在logistic变换下变得很复杂的后验概率p(w|t)。

现在首先要为复杂的p(w|t)找一个Laplace approximation近似的 q(w)。按照Laplace approximation的方法,得先找到p(w|t)的:stationary point,即mMAP,以及lnp(w|t)的Hessian matrix。如果假设了先验概率p(w)=N(w|m0,S0),那么对最大化lnp(w|t)可以求得参数mMAP,两次求导得到Hessian matrix SN,从而近似的高斯分布是q(w)=N(w|mMAP,SN)。用q(w)替换p(w|t),完成剩下的marginalization的工作,这里就是计算logistic函数与Gaussian分布的卷积。计算出最终的predictive distribution。

全章概况


此处输入图片的描述
本章依旧分为频率派和贝叶斯派两个视角对各个知识点进行对比。首先作者介绍了广义线性模型和多分类的情况,然后介绍了分类问题的三种解决方法,判别函数、生成模型、判别模型。其中生成模型和判别模型都是分为 inference 和 decision 两个阶段,而判别函数将两个阶段合并在一起,给定特征直接输出类标号。让生产模型的条件概率是指数族分布时,后验概率其实就是logstic函数。因此避开对先验概率和条件概率建模,直接显式求后验概率的参数就是判别模型。当然除了将后验概率定义为logstic函数以外,还可以假设后验概率的分布是probit函数,即标准正态分布的累计函数,形状类似于logstic函数。最后作者介绍了贝叶斯方法中常用的近似手段,Laplace Approximation。因为分类问题中,参数的后验概率p(w|x)和预测分布p(t|w,x)都不再是高斯分布,因此做marginal时就不再有解析解,因此作者提到需要对后验概率p(w|x)做高斯近似,然后再计算logistic函数与Gaussian分布的卷积,值得一提的是,最后用probit近似了logstic函数,而求出最终的预测分布。

参考资料


  1. PRML, chapter 4
  2. Notes on Pattern Recognition and Machine Learning (Jian Xiao)
  3. Pattern Recognition And Machine Learning 读书会, chapter 4
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注