林轩田机器学习技法(Machine Learning Techniques)笔记(五)

突然有别的事,感觉进度慢了 O~o

Kernel Logistic Regression


P18 5.1
把Logistic Regression和Kernel结合起来。
对比hard和soft:
在这里插入图片描述
我们可以把 ζ 再化一化,一个点有误差的时候,0< ζ < 1,没有误差的时候 ζ = 0,那么可以用一个max函数来概括 :
在这里插入图片描述
整理一下,发现跟之前那个regularization很像(不记得啥是regularization的戳此),但为什么不能直接代呢,因为发现他没有条件,所以也不是QP问题,因此dual啊kernel啊又用不了,然后max函数也很难弄:
在这里插入图片描述
总结一下svm和regularization之间的区别和联系。看出margin其实也是一种regularization
在这里插入图片描述
而两种SVM的C也和regularization的λ有关。
在这里插入图片描述
因此我们会考虑把SVM和其他之前的模型联系起来。


P19 5.2
参照err0/1,也可以画出errSVM的图形,可以看出他把err0/1完全包住,即是err0/1的上限,根据之前logistic regression,找到一个上限函数的话,可以直接弄这个上限函数,来把原来的函数间接地做好。另外errSVM还是个凸的上限,称为:convex upper bound,errSVM也叫hinge error measure
在这里插入图片描述
对比之前的errSCE,发现两者很像,所以可以替代
在这里插入图片描述
对比三者,我们发现解了个logistic regularization问题,其实差不多是得到了SVM的解。
在这里插入图片描述
那么,解了SVM,是不是也得到了某个LogReg的解呢?


P20 5.3
怎么融合LogReg和SVM?下面两种方法都太偏向某一类型,丧失了另一边的优势。
在这里插入图片描述
我们可以设置系数A和常数B(用来平移一下边界)来融合两者,一般来说A>0,因为WSVM通常做得很好,而不需要与它背道而驰,b ≈ 0 因为bSVM一般也不错:
在这里插入图片描述
整理一下,这样就得到了新的LogReg,我们把之前LogReg的φ此时用φSVM替代,这时只有变量A和B需要调整,一共就两个步骤:
在这里插入图片描述
这是Platt现提出的模型,大致步骤如下:
在这里插入图片描述
kernel SVM解的是LogReg在z空间里面近似最优解,下一讲讲的是找到LogReg在z空间里准确的最好的解!
在这里插入图片描述


P21 5.4

这一节有点难懂,因为糅合了之前很多东西,自己有的是忘了或者还不理解通透,所以又要回看红色石头基石的笔记,不过翻看几次,感觉又熟悉了写,尽量总结,然后配合大牛笔记食用 hhh

先理一理之前SVM怎么做的。因为SVM是个二次规划,有对偶,对偶完之后用QP,然后QP发现可以用kernel降低复杂度,从O(d~)变O(d)。但是LogReg却不是二次规划(二次式)。
想想之前怎么用kernel的,如果w可以变成z的线性组合,可能wTz就会有zTz(z的内积),然后就可以用kernel来算:
在这里插入图片描述
参考下列不同算法,w的表现形式,都是线性的z:
在这里插入图片描述
数学上有个表示定理(representer theorem):
在这里插入图片描述
最优的 w ∗ w_* w是个z的线性组合,这样就符合了。
简单证明:设 w ∗ = w_* = w= w// + w(//和⊥是针对于zn平面的),而且w = 0。
如果最优的 w ∗ w_* w中, w ! = 0的话:
式子后面的 1 N ∑ n = 1 N e r r ( y n , w T z n ) \frac{1}{N} \sum^N_{n=1}err(y_n,w^Tz_n) N1n=1Nerr(yn,wTzn),因为平行的乘上zn还是zn,垂直的乘上zn则是0,所以不管怎样的err,式子后面的项都是一样的
式子前面的wTw,w// * w=0。如果 w ! = 0 的话,式子永远会大于w // * w// ,与之前说这个是W*是最优的矛盾了。(反证法)
在这里插入图片描述
这样,我们的w可以用线性表示,则表示LogReg也可以用kernel了,err函数是sigmoid函数,做一些化简得到Kernel Logistic Regression(本章所谓的KLR):
在这里插入图片描述
简单总结:KLR是利用表示定理(representer theorem),使得可以用kernel来换掉zTz,然后只剩下一个β变量,而且这个β是没有限制,之后就用各种GD/SGD求解出最优的β就可以了。

然后KLR关于w的转换可以用另一种角度来看:
在这里插入图片描述
(想了解的话还是看视频吧。。)
在这里插入图片描述
问这个KLR线性模型是多少维度的。
因为已经转换成只用研究 β n β_n βn变量了,所以就是N维。


总结:(第五章终于完结啦!!!!!最后一节看得好辛苦)
在这里插入图片描述
下一节讲用kernel做一般的regression~

猜你喜欢

转载自blog.csdn.net/Only_Wolfy/article/details/89602875