四:Probabilistic Discriminative Models
1:Logistic Regression for Two Classes:
令p(C1|ϕ⃗ (x⃗ ))=y(ϕ⃗ (x⃗ ))=σ(w⃗ Tϕ⃗ (x⃗ )),则p(C2|ϕ⃗ (x⃗ ))=1−p(C1|ϕ⃗ (x⃗ )),表示的意思是假设我们有一个输入矢量x⃗ ,我们先把它转换成feature vector ϕ⃗ (x⃗ ),然后再带入上述公式,得出该输入矢量分别被划入类C1和类C2的概率,最后根据decision rule决定该输入矢量到底该被分到哪一个类中,但我们首先应该要获得关于参数w⃗ 的相关信息,即inference stage。在inference stage,我们有两种方法能够获得关于参数w⃗ 的信息,即最大似然法(包括了正则化项的添加),另外一个是贝叶斯方法。
1):Maximum Likelihood Method:
(1):求误差函数,也就是似然函数的负对数:
对于一个数据集(ϕ⃗ (x⃗ n),tn),tn∈{0,1},其似然函数写成p(t⃗ |w⃗ )=∏Nn=1ytnn{1−yn}。我们最小化该似然函数的负对数,也就是我们说的cross-entropy error function:E(w⃗ )=−lnp(t⃗ |w⃗ )=−∑Nn=1{tnlnyn+(1−tn)ln(1−yn)}
将该误差函数对参数w⃗ 进行二阶求导,得到其Hessian矩阵,我们能证明该矩阵是正定(positive definite)矩阵,因此该误差函数关于参数w⃗ 是convex 函数,因此参数w⃗ 有一个唯一的值使得该误差函数最小。接下来就是最小化误差函数,从而获取对应的w⃗ 参数值
(2):误差函数最小化:
上面我们说到该误差函数有一个唯一的最小值,因此接下来我们可以采用Newton-Raphson iterative optimization scheme w⃗ (new)=w⃗ (old)−H−1▽E(w⃗ )去极小化误差函数E(w⃗ ),H就是我们上面说的Hessian矩阵。进行一系列推到,我们能够得到下式:
我们先对参数w⃗ 赋初值,把其带入上述公式中的w⃗ (old)中,得到w⃗ (new),在下一轮迭代中,把这个w⃗ (new)当做w⃗ (old),又得到对应的w⃗ (new),就这样一直迭代,直到w⃗ 的值几乎不改变为止,这样我们就得到了使得误差函数最小的参数w⃗ 的值。
但是正如本书中反复提到的,极大似然法会带来过度拟合(over-fitting)问题,也就是对训练集中的目标值能够预测的非常好但是不能够泛化(low bias and high variance)。在分类问题中,过度拟合表现的就是如果训练集是linearly separable,极大似然解会找到一组参数值w⃗ 使得w⃗ Tϕ⃗ (x⃗ )=0从而将这两个类分开,但是参数值w⃗ 的幅度会非常大,使得训练集中数据点的w⃗ Tϕ⃗ (x⃗ n)要么趋于正无穷要么趋于负无穷使得yn=tn,从而使得误差函数最小化,这样虽然使得得训练集中数据点对应的后验概率p(Ck|x⃗ n)=1,但该模型不能泛化。
解决过度拟合问题有三种方法,第一种是主动降低模型复杂度,第二种就是在极大似然函数负对数后面添加正则化项(以达到间接降低模型复杂度的目的),第三种就是使用贝叶斯方法(假设参数w⃗ 是变量)
2):Bayesian Method:
现在我们讨论贝叶斯方法,但是exact bayesian inference for logistic regression is intractable,具体表现在参数w⃗ 的后验概率的归一化因子没有解析解,还有就是预测分布也没有解析解。因此我们在这里采取Laplace approximation(用高斯分布来近似概率密度分布),用关于参数w⃗ 的高斯分布来代替参数w⃗ 真实的后验分布。
(1):参数w⃗ 的后验分布:
既然我们对参数w⃗ 的后验分布采取高斯近似,因此自然的我们选用高斯分布作为参数w⃗ 的先验分布,即p(w⃗ )=N(w⃗ |m⃗ 0,S0)。参数w⃗ 的后验分布p(w⃗ |t⃗ )∝p(w⃗ )p(t⃗ |w⃗ )。正如我们上面所说的,求取该后验分布归一化因子是解析不可解的,因此用高斯分布来近似,近似后的结果为
(2):求取预测分布:
极大似然法是对w⃗ 做点估计,因此对于极大似然法来说重要的是求取w⃗ 的值。但是对于贝叶斯方法,参数w⃗ 的值并不重要,重要的是要对参数w⃗ 进行边际化求得预测分布,式子如下:
2:Multiclass Logistic Regression:
我们假定
如果采取极大似然法,我们也需要求其似然函数,如下式所示:
等价地,我们需要极小化似然函数的负对数,也就是我们说的误差函数,如下式所示
该误差函数对应的Hessian矩阵也是正定的,因此该误差函数有一个极小值,因此我们也可以用Newton-Raphson update去获得对应的参数值w⃗ 1,...,w⃗ K
3:Probit Regression:
在Generative Model推导中,如果类条件密度满足一定的分布,推导出来的后验概率分布为logistic或者是softmanx函数,这也是我们为什么在上面discriminative model讨论中直接假设后验分布为logistic或者是softmax函数的原因。但并不是所有类条件密度分布都能够导致上述简单的后验概率分布(比如类条件密度为高斯分布的混合),因此这说明我们可以在discriminative model中假设后验概率分布为其他类型的分布,一种就是假设其为inverse probit函数,显示如下:
五:The Laplace Approximtion:
1:Laplace近似的目标就是对一个特定的概率密度分布找到其高斯近似。现在假设M维矢量z⃗ 满足p(z⃗ )=f(z⃗ )/Z,Z为归一化因子,其对应的高斯分布近似如下:
z⃗ 0是p(z⃗ )的局部最大值点,即▽p(z⃗ )z⃗ =z⃗ 0=▽f(z⃗ )z⃗ =z⃗ 0=0,另外需注意的是矩阵A应要为正定矩阵,这确保了z⃗ 0是局部最大值。
2:Model Comparison and BIC
(1):我们对p(z⃗ )作了高斯分布假设,因此我们也能获得归一化因子Z的近似,其近似结果为:
(2):我们在第三章提到过从贝叶斯观点出发的用于模型比较的model evidence p(D)。其计算公式为p(D)=∫p(D|θ⃗ )p(θ)dθ。我们知道p(θ⃗ |D)={p(D|θ)p(θ)}/p(D),我们对后验分布p(θ⃗ |D)作高斯近似,我们可以鉴定出p(D)=Z,f(θ)=p(D|θ⃗ )p(θ),因此我们应用上述的对归一化因子Z的近似公式,可以得出下式:
上式左边第一项代表了使用最优化参数算出来的似然函数对数,后面三项的和称为”Occam factor”,对模型复杂度起惩罚作用,这样model evidence p(D)就起到了模型拟合好坏以及模型复杂度之间的一个权衡
(3):如果我们假定关于参数w⃗ 的先验分布无限宽并且Hessian矩阵满秩,然后我们能够得出上式的一种近似,表达形式如下:
我们称其为Bayesian Infromation Criterion(BIC)
(4):BIC 和 AIC 都是用来评价模型的好坏,其优点是容易计算,但缺点是只能用于简单模型,应用性不高 。代替的是,我们可以对后验分布采取Laplace近似来获取model evidence的一个更准确的估计。当然如果计算条件允许,我们可以不对后验分布采取任何近似,直接对参数θ⃗ 进行边际化。