逻辑回归还能这样解?关于Kernel Logistic Regression的详细解释
一个有情怀的公众号
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”官方微信公众号已经上线!
长按二维码
扫描关注
逻辑回归还能这样解?关于Kernel Logistic Regression的详细解释相关推荐
- 吴恩达机器学习 逻辑回归 作业3(手写数字分类) Python实现 代码详细解释
整个项目的github:https://github.com/RobinLuoNanjing/MachineLearning_Ng_Python 里面可以下载进行代码实现的数据集 题目介绍: In t ...
- 逻辑回归梯度下降法详解
引言 逻辑回归常用于预测疾病发生的概率,例如因变量是是否恶性肿瘤,自变量是肿瘤的大小.位置.硬度.患者性别.年龄.职业等等(很多文章里举了这个例子,但现代医学发达,可以通过病理检查,即获取标本放到显微 ...
- 台湾大学林轩田机器学习技法课程学习笔记5 -- Kernel Logistic Regression
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Soft-Margin SVM,即如果允许有分类错误的点存在,那么在原来的Hard-Margin SVM中添加新的惩罚因子C, ...
- 林轩田机器学习技法第五讲-Kernel Logistic Regression
上一讲学习了Soft-Margin Support Vector Machine,至此基本的支持向量机就介绍完了.那么其中涉及的思想能否和其他的算法结合起来呢?这讲就看一下如何将核技巧和之前学习的Lo ...
- 【机器学习算法笔记系列】逻辑回归(LR)算法详解和实战
逻辑回归(LR)算法概述 逻辑回归(Logistic Regression)是用于处理因变量为分类变量的回归问题,常见的是二分类或二项分布问题,也可以处理多分类问题,它实际上是属于一种分类方法. 逻辑 ...
- Spark Graphx Pregel(pregel参数详解,pregel调用实现过程的详细解释)
Spark Graphx Pregel 一.Pregel概述 1.什么是pregel? 2.pregel应用场景 二.Pregel源码及参数解释 1.源码 2.参数详细解释 (1)initialMsg ...
- mllib逻辑回归 spark_Spark架构详解——分布式流计算内存批处理迭代运算框架
#Spark# #大数据# #Hadoop# #streaming# #分布式计算# Spark:基于内存的高速集群计算框架.对mapreduce进行优化,在内存中进行迭代运算.可以使用Java,Py ...
- Lesson 4.1-4.2 逻辑回归模型构建与多分类学习方法逻辑回归参数估计
Lesson 4.1 逻辑回归模型构建与多分类学习方法 首先我们来讨论关于逻辑回归的基本原理,当然,在此过程中,我们也将进一步补充机器学习数学理论基础. 逻辑回归的基本原理,从整体上来划分可以分为两个 ...
- 收藏!!如何 Get 机器学习必备的算法技能? | 逻辑回归
本文是吴恩达老师的机器学习课程[1]的笔记和代码复现部分(逻辑回归). 作者:黄海广[2] 备注:笔记和作业(含数据.原始作业文件).视频都在github[3]中下载. 我将陆续将课程笔记和课程代码发 ...
最新文章
- CQRS学习——最小单元的Cqrs(CommandEvent)[其一]
- apache laravel主页500_PS强大笔刷,插画师完美Hold住各种效果!(附500个笔刷)
- 惊天大谎:让穷人都能上网是Facebook的殖民阴谋?
- SpringBoot下的工作流Activiti开发
- 关于 ORA-01033: ORACLE initialization or shutdown in progress
- Docker最全教程——Redis容器化以及排行榜实战(十三)
- tokumx经营报表
- 操作系统上机题目(多进程2)
- 两种方法解决tomcat的 Failed to initialize end point associated with ProtocolHandler [http-apr-8080]...
- OpenCV--fstream格式化读取坐标数据存为vector
- 经典算法——斐波那契数列
- nodejs使用supervisor插件调试效率
- Python3安装tkinter
- 考查频率最高的吉林八景
- Android仿网易头条评论,仿网易/今日头条滑动视图
- java中负数_Java中负数以及类型转换问题
- BlueCoat SG CPU高问题
- c语言案例六 速算24,参阅:C语言速算24数据结构课程设计最终版
- 考题篇(5.2) 19. 数据防泄漏 ❀ FortiGate ❀ Fortinet 网络安全专家 NSE 4
- 华为交换机 STP MSTP BPDU保护 边缘端口 BPDU过滤 根保护 环路保护 TC保护