笔记(总结)-SVM(支持向量机)的理解-2

支持向量机SVM 在很久很久以前的情人节,大侠要去救他的爱人,但魔鬼他玩了一个游戏魔鬼早桌子上似乎有规律放了两种颜色的球,说:"你用一根棍开它们.要求:尽量在放更多球之后,仍然使用."让我们引入一个函数f(x),图像如下图所示.将x的每个值映射到其对应的输出.使得所有蓝点在Y轴的输出更大,而红点在Y轴的输出偏小.此时,我们可以使用一条水平线将数据完美类。此时,求解当a是什么值时,该值会变得很大,当求出a值,在求解w,b值.此时,就变成了极大极小值问题。 阅读详情

上一篇我们讨论了SVM的建模由来与推导过程,最终得出了SVM的对偶问题和解的形式,不过这都基于一个重要前提,即样本集是线性可分的。为了解决线性不可分情况下的分类问题,我们引入soft margin SVM,即软间隔SVM。


为了处理上述情况,我们不再要求样本集全部位于“楚河汉界”外,放宽限制,允许数据点进入“楚河汉界”甚至错分,引入松弛变量ξξ,如下所示:
这里写图片描述
此时对应的约束条件为:

wTx+b1ξ, yi=1wTx+b1+ξ, yi=1ξi0{wTx+b≥1−ξ, yi=1wTx+b≤−1+ξ, yi=−1ξi≥0

原问题转化为:

min12||w||2+Ciξimin12||w||2+C∑iξi

s.t. yi(wTxi+b)1ξi, ξi0s.t. yi(wTxi+b)≥1−ξi, ξi≥0

其中CC为惩罚因子,可以看到当C取很大时,优化目标函数会导致xiixii很小,尽量减小甚至避免越界和错分情况出现。当CC很小时,会一定程度上对越界和错分情况有所容忍。

将约束写成gi0的形式,构造拉格朗日函数:

f(w)=12||w||2f(w)=12||w||2

gi(w)=1ξiyi(wTxi+b),    hi(ξ)=ξigi(w)=1−ξi−yi(wTxi+b),    hi(ξ)=−ξi

L(w,α,β)=f(w)+iαigi(w)+iβihi(ξ)L(w,α,β)=f(w)+∑iαigi(w)+∑iβihi(ξ)

推导对偶问题的过程同上一篇。极值在偏导为0处取到,令:

Lw=0, Lb=0, Lξi=0∂L∂w=0, ∂L∂b=0, ∂L∂ξi=0

得到:

w=iαiyixi, iαiyi=0, C=αi+βiw=∑iαiyixi, ∑iαiyi=0, C=αi+βi

代回原函数,得到对偶问题:

maxW(α)=iαi12ijαiαjyiyjxTixjmaxW(α)=∑iαi−12∑i∑jαiαjyiyjxiTxj

s.t. iαiyi=0, 0αiCs.t. ∑iαiyi=0, 0≤αi≤C

此时对应的KKT条件为:

αi0βi0yi(wTx+b)1ξiξi0αi[1ξiyi(wTx+b)]=0 βi(ξi)=0{αi≥0βi≥0yi(wTx+b)≥1−ξiξi≥0αi[1−ξi−yi(wTx+b)]=0 βi(−ξi)=0

可以看到,最终需要求解的W(α)W(α)与之前形式是一致的,不同的只是约束条件的变化。根据KKT条件对αiαi进行讨论:

  • αi>0αi>0,有yi(wTx+b)1ξiyi(wTx+b)≥1−ξixixi为支持向量
  • αi<Cαi<C,有βi>0βi>0,推得ξi=0ξi=0xixi在边界上
  • αi=Cαi=C,有βi=0βi=0,此时ξiξi大小不确定。当ξi>1ξi>1时,该样本被错误分类;当0ξi10≤ξi≤1,该样本在“楚河汉界内部”,被正确分类。

此时我们便可利用Soft Margin SVM来处理线性不可分的问题。

简单点理解 SVM支持向量机 1、SVM简介 支持向量机(support vector machines, SVM)是一种二类模型,它的基本模型是定义在特征空间上的间隔最大的线性类器,间隔最大使它有别于感知机;SVM还包括核技巧,这使它成为实质上的非线性类器。SVM的的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。SVM的的学习算法就是求解凸二次规划的最优化算法。可能不好理解,那我们来举个例子吧 根据体重判断小鼠是否肥胖,首先得找到一个阈值,这个阈值怎么找呢?按从小到 阅读详情

相关推荐

支持向量机SVM

支持向量机一、优化目标1.1 支持向量机1.2 建立支持向量机二、大边界的直观理解2.1 代价函数2.2 间距2.3 决策边界2.4 C的设置三、大边界类3.1 内积3.2 支持向量机四、核函数4.1 对原有特征进行组合4.2 利用核函数计算新特征4.3 例4.4 选择地标4.5 支持向量机假设4.6 支持向量机参数Cσ的影响五、使用支持向量机5.1 步骤5.2 使用准则 一、优化目标 1.1 支持向量机 支持向量机(Support Vector Machine),简称SVM,在学习复杂的非线性方程时

weixin_45242264的博客 3423

SVM的个人理解

之前以为SVM很强大很神秘,自己了解了之后发现原理并不难,不过,“大师的功力在于将idea使用数学定义它,使用物理描述它”,这一点在看SVM的数学部的时候已经深刻的体会到了,最小二乘法、梯度下降法、拉格朗日乘子、对偶问题等等被搞的焦头烂额。在培乐园听了讲课之后才算比较清晰的了解了整个数学推导的来龙去脉。 1. 为什么一定要研究线性类? 首先说一下为什么对数据集一定要说线性可或线性不可

问道于盲 3599

支持向量机SVM算法原理

SVM 的英文叫 Support Vector Machine,中文名为支持向量机。它是常见的一种类方法,在机器学习中,SVM 是有监督的学习模型。 什么是有监督的学习模型呢?它指的是我们需要事先对数据打上类标签,这样机器就知道这个数据属于哪个类。同样无监督学习,就是数据没有被打上类标签,这可能是因为我们不具备先验的知识,或者打标签的成本很高。所以我们需要机器代我们部完成这个工作,比...

qiu_zhi_liao的博客 1750

机器学习支持向量机SVM原理与理解

引言 ——“举牌子:Support Vector Machines ” 一直在犹豫要不要写SVM,因为网上已经有很多详细的SVM原理的解释甚至详细推导,而这东西又庞大复杂,想了解的话直接可以参考。说实话,SVM确实到现在也不是说很懂,感觉最恐怖的是对偶问题后的KKT推导、Mercer定理以及最后的参数求解。随便拿出来一个都是及其晦涩的数学问题。无奈水平不行,只能囫囵吞枣。 之所以决定要敲一下...

SanFancsgo的博客 7977

CSAPP深入理解计算机系统笔记

csapp的学习从2019.3.18开始。从05.10-08.01这几个月一直工作,重心转去学了点件工程面向对象的东西,中断了这部的学习。从08.01重新继续这部的学习,但平时工作忙,只能挤出很少的时间。 前言: 如果是第一次看csapp这本书,建议先不要看,直接去看上交院的课程主页,按照上面的课件学习。推荐一个个人博客“不周山之读薄CSAPP”,也可以按这个博客学习。 这本书的必...

qq_41230365的博客 9752

SVM支持向量机详解

支持向量机(support vector machines, SVM)是二类算法,所谓二类即把具有多个特性(属性)的数据为两类,目前主流机器学习算法中,神经网络等其他机器学习模型已经能很好完成二类、多类,学习研究SVM理解SVM背后丰富算法知识,对以后研究其他算法大有裨益;在实现SVM过程中,会综合利用之前介绍的一维搜索、KKT条件、惩罚函数等相关知识。本篇首先通过详解SVM原理,后介绍如何利用python从零实现SVM算法。 为便于理解,假设样本有两个属性,可以把属性值别对应到二...

m2xgo的博客 2万+

支持向量机SVM通俗理解(python代码实现)

这是第三次来“复习”SVM了,第一次是使用SVM包,调用包并尝试调节参数。听闻了“流弊”SVM的算法。第二次学习理论,看了李航的《统计学习方法》以及网上的博客。看完后感觉,满满的公式。。。记不住啊。第三次,也就是这次通过python代码手动来实现SVM,才让我突然对SVM不有畏惧感。希望这里我能通过简单粗暴的文字,能让读者理解到底什么是SVM,这货的算法思想是怎么样的。看之前千万不要畏惧,说到底就...

程松 9万+

支持向量机SVM—实现多类问题的解决方案

支持向量机SVM—实现多类问题的解决方案前言一、支持向量机SVM如何应用在多类问题中?二、解决方案1.引入库2.读入数据3.读入数据4.读入数据总结 前言 众所周知,支持向量机SVM机器学习中典型的二值类算法。但现实生活中,有很多实际应用是没有办法用简单的二值类器去完成类的。因此,为了拓展支持向量机SVM的应用场景,必须考虑在多类情况下的算法实现。 一、支持向量机SVM如何应用在多类问题中? 原本应用在二值类上的SVM算法是否可以应用在多类问题上呢?答案是肯定的。 通过重新构造后。.

weixin_44822636的博客 1万+

支持向量机通俗导论(理解SVM的三层境界)

            支持向量机通俗导论(理解SVM的三层境界) 作者:July 。致谢:pluskid、白石、JerryLead。 说明:本文最初写于2012年6月,而后不断反反复复修改&优化,修改次数达上百次,最后修改于2016年11月。 声明:本文于2012年便早已附上所有参考链接,并注明是篇“学习笔记”,且写明具体参考...

深耕汽车电子:AUTOSAR、电机控制,助力数字汽车 4032

PyTorch支持向量机SVM)详解

支持向量机是一种二类算法,其目标是找到一个最优的超平面,将不同类别的数据点隔开。这个超平面被称为决策边界,支持向量机的任务是找到使决策边界最佳的超平面。适用于线性非线性类问题。在高维空间中表现出色,适用于处理具有大量特征的数据。通过选择支持向量(距离决策边界最近的数据点)来提高模型的鲁棒性。支持向量机的核心思想是最大化间隔(两个类别之间的距离),以确保决策边界尽可能远离数据点。这种距离通常称为间隔margin)。在下一节中,我们将深入探讨支持向量机的工作原理。

DeepViewInsight的博客 7495

深入浅出理解SVM支持向量机

SVM是啥? SVM(全称Support Vector Machine)中文名支持向量机, 这里的vector就是数学中那个向量SVM用到向量,然后它的功能就它的名字没什么关系了。 SVM用于解决类问题,何为类呢?顾名思义,就是把你拥有的数据成几类。 SVM是有监督学习,我们先给一部数据打上类别标签,让SVM模型使用这些打了类别标签的数据进行训练,训练后,给训练好的SVM模型新的无类别标签的数据,SVM模型就可以自动对这些新的数据类。 如图,有一些样本点,现在我们需要对两组..

MengHao的博客 6631

支持向量机SVM——简单实例应用

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考支持向量机(Support Vector Machine,SVM)是一种常见的监督学习算法,用于回归任务。SVM的目标是构建一个能够将不同类别的数据点尽可能正确地隔开的决策边界。核函数是支持向量机SVM)中的一种技术,用于将数据从原始特征空间映射到另一个高维特征空间。

fjstjsjg的博客 3333

MATLAB支持向量机SVM代码实现

本栏目(Machine learning)包括单参数的线性回归、多参数的线性回归、Octave Tutorial、Logistic Regression、Regularization、神经网络、机器学习系统设计、SVM(Support Vector Machines 支持向量机)、聚类、降维、异常检测、大规模机器学习等章节。所有内容均来自Standford公开课machine learning

wenyusuran的专栏 4万+

基于SVM支持向量机实现人脸识别

文章目录基于SVM支持向量机实现人脸识别SVM支持向量机的定义SVM支持向量机的原理作用如何计算SVM支持向量机的权值w偏置项b代码实现原理步骤代码实例演示: 基于SVM支持向量机实现人脸识别 本人本科大三,非985,211出身,这是我写的第一篇博客,其目的是对我这段时间学习SVM支持向量机PCA降维算法的一次总结。若有误之处,还请各位路过的大神积极指正。若要转载,请注明出处,谢谢! SVM支持向量机的定义 支持向量机(support vector machines,SVM)是一种十优秀的二类算法

小叶MW 的博客 3673

支持向量机(SVM)

综述支持向量机(Support Vector Machines), 是一种二类模型.也可以通过技巧,转化为多类模型.比如说libSVM中就使用了one-against-one的策略使得SVM能够扩展到多类.而libLiner则使用了one-against-rest的策略来扩展SVM. 支持向量机的基本模型: 定义在特征空间上的间隔最大化的线性类器(间隔最大化也使得SVM区别于感知机

小贝也沉默的博客 3255

SVM 支持向量机

目录 Linear Support Vector Machine线性支持向量机 通俗理解 函数间隔与几何间隔 最大间隔类器 Dual Support Vector Machine 对偶支持向量机 引入原因 具体推导 Kernel Support Vector Machine 核函数 常见核函数 Polynomial Kernel Gaussian Kernel ...

YM的博客 4928

SVM支持向量机

SVM是一种有监督的学习方法,即已知训练点的类别,求训练点与类别之间的对应关系。 从理论基础析到数学推导,详细介绍SVM算法的算法由来推导过程。

SJ1820161738的博客 2952

SVM支持向量机浅显理解

本人摸鱼式考过研,所以数学功底比较浅薄,此文章只作为学习记录,有理解不当之处,见谅!一、SVM的最终目标1.SVM也就是很出名的支持向量机。个人见解支持向量机可以为两个部,支持向量Ji。yes,支持向量故名思意就是一种向量,这些向量决定了类任务中,在数据空间里的那面墙所处的位置,这些向量也可以说是一些点。这面墙就是超平面,它将数据类两侧,一侧是正类,一侧是负类。(仅讨论二类)!然后就是最好理解的Ji。Ji就是机器,类器的意思。

weixin_47327329的博客 1323
上一篇: 笔记(总结)-SVM(支持向量机)的理解-1
下一篇: 笔记(总结)-SVM(支持向量机)的理解-3
ZSYGOOOD
博客等级 码龄12年 113粉丝 94原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值