Andrew Ng机器学习入门学习笔记(六)之支持向量机(SVM)

本文深入探讨支持向量机(SVM),从优化目标出发,揭示其为何被称为大间距分类器。解释SVM如何通过最大化间隔来构建决策边界,以及核函数在构造非线性分类器中的作用。同时,介绍了参数C和σ2对模型的影响,并提供了SVM在实际应用中的选择和使用建议。
摘要由CSDN通过智能技术生成

一.支持向量机的引入

支持向量机(SVM)是一种极受欢迎的监督学习算法,为了引入支持向量机,我们首先从另一个角度看逻辑回归。

1.从单个样本代价考虑

假设函数 hθ(x)=11+eθTx 。由于S型函数有如下图的特性,

这里写图片描述

则,如果 y=1 ,那我们希望 hθ(x)1 ,即 θTx>>0 ;如果 y=0 ,那我们希望 hθ(x)0 ,即 θTx<<0

对于逻辑回归,对于单个样本 (x,y) ,其代价为

(yloghθ(x)+(1y)log(1hθ(x)))=ylog11+eθTx(1y)log(111+eθTx)

①如果 y=1 ,上述单个样本代价函数中只有第一项起作用,第二项为 0

z=θTx ,此时代价随 z 的变化曲线如下图所示

这里写图片描述

结合此图也可以看出对于正样本(即, y=1 ),为了使代价 log11+eθTx 最小,我们将设置 θTx 比较大,这时代价接近于 0

在支持向量机中这种情况可以用两条线段作为新的代价函数 cost1(z) ,如下图桃红色部分

这里写图片描述

②如果 y=0 ,上述单个样本代价函数中只有第二项起作用,第一项为 0

此时代价随 z 的变化曲线如下图所示,

这里写图片描述

结合此图也可以看出对于负样本(即, y=0 ),为了使代价 log(111+eθTx) 最小,我们将设置 θTx 比较大,这时代价接近于 0

在支持向量机中可以用两条线段作为新的代价函数 cost0(z) ,如下图桃红色部分

这里写图片描述

2.从优化目标考虑

对于逻辑回归,优化目标是

minθJ(θ)=minθ[1mi=1my(i)(loghθ(x(i)))+(1y(i))(log(1hθ(x(i))))+λ2mj=1nθ2j]

支持向量机就是要将其中的 (loghθ(x(i))) 换成前面 y=1 时新的单个样本代价 cost1(θTx(i)) ,将 (log(1hθ(x(i)))) 换成前面 y=0 时新的单个样本代价 cost0(θTx(i)) ,即
minθJ(θ)=minθ[1mi=1my(i)cost1(θTx(i))+(1y(i))cost0(θTx(i))+λ2mj=1nθ2j]

又由于无论是否有 1m 都不会影响最小化的结果,故可以忽略 1m

同时正则化逻辑回归总的代价函数包括两项,即 A+λB (通过 λ 控制 A,B 间的平衡),SVM则通过另一种方式控制 A,B 间的平衡,即 CA+B

综上,SVM的优化目标为

minθ[Ci=1my(i)cost1(θTx(i))+(1y(i))cost0(θTx(i))+12j=1nθ2j]

二.SVM的决策边界

1.SVM优化目标进一步研究

为了最小化代价函数, y=1 时,我们希望 θTx1 ,而不仅仅像逻辑回归那样只要 θTx0 ,就可以预测 hθ(x)=1
同理, y=0 时,我们希望 θTx1 ,而不仅仅像逻辑回归那样只要 θTx<0 ,就可以预测 hθ(x)=0

可以看出SVM相比逻辑回归而言要求更高,相当于多了一个安全的间距因子。故人们也会将SVM看作是大间距分类器。

C 为一个很大的值时,为了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值