coursera机器学习技法笔记(5-6)——将核方法应用于回归

5 Kernel Logistic Regression

5.1 Soft-Margin SVM as Regularize Model

  本节主要从正则化模型的观点来讲解Soft-SVM。首先看一下Soft-SVM的模型:

minw,b,ε12wTw+CNn=1εn
s.t.ynwTxn+b1εn
εn0

  由于 ε 代表了每个样本接近超平面的距离,即:
εn=max(1yn(wTxn+b),0)

因此该模型也可以看做是损失函数 Nn=1ε 与正则化项 12wTw 的最小化优化问题,而 C 则代表了正则化系数,C越大,正则化强度越高。

5.2 SVM versus Logistic Regression

  本节从损失函数上限的角度来阐述了Soft-SVM和Logistic回归的关系,SVM的损失曲线是过 (0,1) (1,0) 的直线,在 (1,0) 之后是 y=0 的直线,而修正后的logistic回归的损失曲线是 err=log2(1+exp(ys)) ,其中, s=wTx+b 。本部分内容可参考”机器学习基石”11.1节,该节探讨了将回归用于分类的理论基础。
  可以看到的是,当 ys 趋向于正无穷时,两种损失函数都趋近于0,当 ys 趋于负无穷时,两者都趋向于 ys
  相比较而言,在损失函数方面,PLA算法是希望直接优化0/1错误函数,SVM通过二次规划来逼近0/1错误,logistic回归则通过梯度下降来进行优化;在算法的质量保证方面,SVM通过最大边际来从理论上保证降低VC维,而logistic回归则利用正则化来限制VC维。它们的缺点都在于其损失函数都只是降低0/1损失函数的上限,而这个上限在 ys 趋向负无穷时与0/1损失相差比较大。

5.3 SVM for Soft Binary Classification

  由于SVM和对数回归的相似性,因此希望使用核方法使得对数回归能在Z空间内运行。这里先介绍了一个近似的方法,叫probabilistic SVM。即先利用kernel SVM在Z空间得出分数 wTx+b ,然后把这个分数作为一个新特征用于训练对数回归。

5.4 Kernel Logistic Regression

5.4.1 用加权样本表示最优解
  先进行一项证明,所有的带二次正则化的线性模型都可以将所需求解的权重 w 表示为样本的加权组合。证明如下:
将最优解w分解为与样本的加权线性组合平行的向量 w|| 以及与之垂直的向量 w ,则:

wTx=(w||+w)x=w||x

其中, w x 垂直,故内积为0。并且由
|wTw|=|wT||w||+wTw|>|wT||w|||

  可知,在不改变损失函数的情况下,存在比 w 更好的解 w|| ,与题设相悖,故所有线性模型的解都能用样本加权表示。
5.4.2 线性模型的对偶问题以及核函数的运用
  由此,我们可以令 w=ni=1βixi ,并将其代入logistic回归的优化目标中:
argmaxβ(L)=mn=1ln(1+exp(ynni=1βizTizn))+λni=1mj=1βiβjzTizj

可以看到,原优化问题被转换成了以优化β为目标的对偶问题,并出现了可以使用核函数进行计算的内积计算 zTizj
  同样这个模型还有另一种解释,即将核函数 K(xi,xj)=zTizj 看做是样本,求其线性组合的权重 β 。(该解释即Andrew NG在coursera中机器学习课程的解释)。

6 Support Vector Regression

6.1 Kernel Ridge Regression

  本节主要将核方法推广到线性模型中:

L(z)=λNwTw+1NNn=1(ynwTzn)2

w=Nn=1βnzn 代入该公示,再加上核函数 K(xi,xj)=zTizj ,并向量化,使之成为对偶问题:
L(β)=λNβTKβ+1N|YβTK|2

β 求导之后可以求解析解或用其他方法求解:
L(β)=2NKT((λI+K)βY)

6.2 Support Vector Regression Primal

  使用了上节的核方法来进行回归后发现所使用到的”支持向量”非常多,这是因为求解 β 的时候得到的解不是稀疏解。而得到非稀疏解所导致的问题是用β来表达 w 时非常复杂,不利于新来样本的预测。因此希望通过修改损失函数达到控制支持向量的目的。
  将原目标转变为以下目标:

L(z)=12wTw+CNn=1max(0,|ynwTxnb|ϵ)

其中, ϵ 为支持向量到超平面的距离。也就是说,当点与超平面的距离小于ϵ时,不产生损失,而超过之后产生线性损失。这与原来的线性回归的区别在于线性回归更受异常点影响。并且可以注意到的是在 ϵ 距离以内的点最后都不会在w的加权中出现。
  模仿SVM的求解方法,设置距离损失度量 δ
L(z)=12wTw+CNn=1δn

|ynwTxnb|<ϵ+δn

然后令 δn=δn+δn ,再把绝对值展开:
L(z)=12wTw+CNn=1(δn+δn)
ϵδn<ynwTxnb<ϵ+δn
δn>0,δn>0

6.3 Support Vector Regression

  接上节,加入拉格朗日乘子,可以将以上目标转换为对偶问题,流程相同,以下给出部分结果:

w=Nn=1(αnαn)zn
Nn=1(αnαn)=0
αn(ϵ+δnyn+wTxn+b)=0
αn(ϵ+δn+ynwTxnb)=0

并且最后的带核函数的对偶问题是:
min12Nn=1Nm=1(αnαn)(αmαm)kn,m+Nn=1((ϵyn)αn+(ϵ+yn)αn)
s.t.Nn=1(αnαn)=0
0αnC,0αnC

由以上推导可知,当 |ynwTxnb|<ϵ 时, δn=0,δn=0 ,故而 αn=0,αn=0 ,因此 αnαn=0 ,该点失去对 w <script type="math/tex" id="MathJax-Element-2972">w</script>的贡献。

6.4 Summery of Kernel Models

  本节对此前(包括机器学习基石)所接触到的线性模型都做了一次小结:
  (1)无核
  PLA/Pocket:使用0/1损失函数,并用特殊方法求解。
  Linear SVR:使用TUBE损失函数,并用二次规划求解。
  Soft-SVM:使用SVM损失函数,并用二次规划求解。
  Linear regression:使用二次损失函数,并求解析解。
  Logistic regression:使用对数损失函数,并用梯度下降/随机梯度下降求解。
  相比较而言,前面两个不常用,因为效果差。
  (2)有核
  Kernel linear regression:线性回归加核函数,可求解析解。
  Kernel logistic regression:由logistic regression加核函数而来,用二次规划求解。
  Soft-SVM对偶问题:由SVM加核函数求对偶问题而来,用二次规划求解。
  Kernel Linear SVR:由Linear加核函数求对偶问题而来,用二次规划求解。
  Probabilistic SVM:先运行SVM再放入logistic回归中。
  相比较而言,前面两者不经常用,因为加入核函数后导致所有样本均对最后的w有贡献,使得预测新样本代价太大,因而应转换为对偶问题求解。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值