四: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的一个更准确的估计。当然如果计算条件允许,我们可以不对后验分布采取任何近似,直接对参数 θ⃗ 进行边际化。