查看原文
其他

红色石头 2018-05-28


AI有道

一个有情怀的公众号




1

Soft-Margin SVM as Regularized Model

先复习一下我们已经介绍过的内容,我们最早开始讲了Hard-Margin Primal的数学表达式,然后推导了Hard-Margin Dual形式。后来,为了允许有错误点的存在(或者noise),也为了避免模型过于复杂化,造成过拟合,我们建立了Soft-Margin Primal的数学表达式,并引入了新的参数C作为权衡因子,然后也推导了其Soft-Margin Dual形式。因为Soft-Margin Dual SVM更加灵活、便于调整参数,所以在实际应用中,使用Soft-Margin Dual SVM来解决分类问题的情况更多一些。

Soft-Margin Dual SVM有两个应用非常广泛的工具包,分别是Libsvm和Liblinear。 Libsvm和Liblinear都是国立台湾大学的Chih-Jen Lin博士开发的,Chih-Jen Lin的个人网站为:https://www.csie.ntu.edu.tw/~cjlin/index.html


下面我们再来回顾一下Soft-Margin SVM的主要内容。我们的出发点是用ξn来表示margin violation,即犯错值的大小,没有犯错对应的ξn=0。然后将有条件问题转化为对偶dual形式,使用QP来得到最佳化的解。

经过这种转换之后,表征犯错误值大小的变量ξn就被消去了,转而由一个max操作代替。

为什么要将把Soft-Margin SVM转换为这种unconstrained form呢?我们再来看一下转换后的形式,其中包含两项,第一项是w的内积,第二项关于y和w,b,z的表达式,似乎有点像一种错误估计err^,则类似这样的形式:

看到这样的形式我们应该很熟悉,因为之前介绍的L2 Regularization中最优化问题的表达式跟这个是类似的:

这里提一下,既然unconstrained form SVM与L2 Regularization的形式是一致的,而且L2 Regularization的解法我们之前也介绍过,那么为什么不直接利用这种方法来解决unconstrained form SVM的问题呢?有两个原因。一个是这种无条件的最优化问题无法通过QP解决,即对偶推导和kernel都无法使用;另一个是这种形式中包含的max()项可能造成函数并不是处处可导,这种情况难以用微分方法解决。

而对于Soft-Margin SVM来说,条件和最优化问题结合起来,整体形式写成:

通过对比,我们发现L2 Regularization和Soft-Margin SVM的形式是相同的,两个式子分别包含了参数λ和C。Soft-Margin SVM中的large margin对应着L2 Regularization中的short w,也就是都让hyperplanes更简单一些。我们使用特别的err^来代表可以容忍犯错误的程度,即soft margin。L2 Regularization中的λλ和Soft-Margin SVM中的C也是相互对应的,λ越大,w会越小,Regularization的程度就越大;C越小,Ein^会越大,相应的margin就越大。所以说增大C,或者减小λ,效果是一致的,Large-Margin等同于Regularization,都起到了防止过拟合的作用。

建立了Regularization和Soft-Margin SVM的关系,接下来我们将尝试看看是否能把SVM作为一个regularized的模型进行扩展,来解决其它一些问题。

2

SVM versus Logistic Regression

上一小节,我们已经把Soft-Margin SVM转换成无条件的形式:

至此,可以看出,求解regularized logistic regression的问题等同于求解soft-margin SVM的问题。反过来,如果我们求解了一个soft-margin SVM的问题,那这个解能否直接为regularized logistic regression所用?来预测结果是正类的几率是多少,就像regularized logistic regression做的一样。我们下一小节将来解答这个问题。

3

SVM for Soft Binary Classification

接下来,我们探讨如何将SVM的结果应用在Soft Binary Classification中,得到是正类的概率值。

这两种方法都没有融合SVM和logistic regression各自的优势,下面构造一个模型,融合了二者的优势。构造的模型g(x)表达式为:

那么,新的logistic regression表达式为:

这种soft binary classifier方法得到的结果跟直接使用SVM classifier得到的结果可能不一样,这是因为我们引入了系数A和B。一般来说,soft binary classifier效果更好。至于logistic regression的解法,可以选择GD、SGD等等。

4

Kernel Logistic Regression

上一小节我们介绍的是通过kernel SVM在z空间中求得logistic regression的近似解。如果我们希望直接在z空间中直接求解logistic regression,通过引入kernel,来解决最优化问题,又该怎么做呢?SVM中使用kernel,转化为QP问题,进行求解,但是logistic regression却不是个QP问题,看似好像没有办法利用kernel来解决。

我们之前介绍过SVM、PLA包扩logistic regression都可以表示成z的线性组合,这也提供了一种可能,就是将kernel应用到这些问题中去,简化z空间的计算难度。

经过证明和分析,我们得到了结论是任何L2-regularized linear model都可以使用kernel来解决。

上式中,所有的w项都换成βn来表示了,变成了没有条件限制的最优化问题。我们把这种问题称为kernel logistic regression,即引入kernel,将求w的问题转换为求βn的问题。


从另外一个角度来看Kernel Logistic Regression(KLR):

值得一提的是,KLR中的βn与SVM中的αn是有区别的。SVM中的αn大部分为零,SV的个数通常是比较少的;而KLR中的βn通常都是非零值。

往期回顾

【1】线性支持向量机(LSVM)

【2】对偶支持向量机(DSVM)

【3】核支持向量机(KSVM)

【4】Soft-Margin支持向量机(SSVM)

【5】干货 | 吴恩达deeplearning.ai专项课程历史文章汇总

【6】简单的梯度下降算法,你真的懂了吗?

【7】重磅 | 吴恩达新书《Machine Learning Yearning》最新版分享

【8】力荐 | 台大林轩田《机器学习基石》资源汇总

【9】重磅 | “吴恩达deeplearningai”官方微信公众号已经上线!



长按二维码

扫描关注

喜欢就点个赞吧!
点击 | 阅读原文 | 获取更多干货内容

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存