机器学习故事汇-搞定支持向量机(SVM)

用人话讲明白支持向量机SVM(下) 文章目录4.求解超平面4.1几何间隔4.2凸二次规划4.3拉格朗日乘数法 4.求解超平面 上篇仅介绍了SVM的基本概念,本篇着重讲解SVM中的最佳线性分类器(最大边界超平面)是如何求得的。 4.1几何间隔 上一小节给出二维问题下最佳线性分割的标准,就是分割线到两类边界点的距离最“宽”,那么这个“宽度”怎么量化和求解呢? 我们知道,点(x0,y0)(x_{0} ,y_{0})(x0​,y0​)... 阅读详情

一听到支持向量机这个名字,给大家的感觉应该是这个样子滴,感觉好像很高端一个事情,但是又不知道它到底在什么。咱们今天的目标就是用最通俗的语言搞定它!

这里写图片描述

首先我们来看一下咱们的支持向量机是要打算干一个什么大事情!其实我第一次听到这个名字的时候最想搞清楚的就是它为啥起了个这么个怪名字(看完你就懂啦)!对于一个分类任务而言,最主要的目标就是能分得开,但是对于上图当中的两类数据点来说,我可以找到三条线把它们都完全分得开,其实可以找到无数条的!那么问题也随之而来了,到底选谁呀?第二点,如果数据本身就很复杂,我们的这个线性分类还够用吗?第三点,这么强大的一个算法,它的计算复杂度咋样呀?这些就是我们现在面临的问题,准备逐一攻克吧!

这里写图片描述

这里放上两张图,看起来有啥区别呢?左边的决策的区域感觉小一些,右边的大一些!但是他们俩是不是都完成了一个任务呀,完全把数据点切分开了!这个事咱可以这么唠,左右两边现在不是数据点了而是交战双方的雷区,想想战狼2最后是不是从两个交战区域冲出来了!

这里写图片描述 
两边都是雷区,我们现在要开辟出来一条隔离带,既不能碰到任何一个雷,还得让我们的大部分安全通过,那这条隔离带你说左边的好还是右边的好呢?必然是右边的吧,因为更胖一些,这样我们的部分更安全,说白了我们要的决策边界应该泛化能力更强一些的!

这里写图片描述

既然说到雷了,最起码的一个要求就是不能碰到它呀!那么我们来想,你要是碰到雷应该先碰哪个呀?离你隔离带最近的那个吧,那这里我们就得说说距离这个问题了,它决定了雷是你咱们隔离带多远的!

假设我们的隔离带就是这个平面,有一个雷X,那么现在咱们来算一下这个雷到我平面的距离有多远!直接算感觉好像有点难,咱们来转换一下,这里假定平面上有两个点X’和X”,如果我知道X到X’的距离,然后把这个距离投影到我的垂线方向,这样不就间接的计算出雷X到平面的距离了嘛。平面的垂线方向又恰好是它的法向量,只需求出它的单位向量就可以啦!问题迎刃而解,这样就有了一个雷到隔离带的距离了!

这里写图片描述

接下来对我的数据集进行如下定义,支持向量机是一个经典的二分类问题,在这里我们认为如果说一个点就是一个正例,那么对应的标签值就是+1,如果一个点是负例,那么对应的标签值就是-1。对应于我的决策方程,就可以做这样的定义啦,如果预测值Y(x)>0我就说它是一个正例,如果 Y(x)<0我就说它是一个负例。两个式子看起来有点多,整合一下吧,既然>0的时候标签值为+1,<0的时候标签值为-1。那么它们的乘积就必然是恒大于0的啦!

这里写图片描述

下面咱们来看一下我们要优化的目标是啥呢?我现在是不是要找最好的一个隔离带(也就是决策方程,说白了就是w和b)!这个隔离带要能够尽可能的安全,所以就要使得离它最近的那个雷(先会碰到最近的)越远越好呀!只要大家能理解这句话,支持向量机也就差不多有个意思了!在看点到决策边界的距离,原始的式子中有个绝对值,现在我们展开是不是也可以呀,因为y*y(x)恒正嘛!

这里写图片描述

来看我们要优化的目标,这个一个求最小,完了又求最大,这个啥意思啊?想想咱们的隔离带咋说的,是不是先求最近的雷,然后让这个雷滚的越远越好呀!这就是我们最小和最大是啥意思!但是现在这个式子看起来有点复杂呀,能不能简化一下呀,直接我们认为y(x)恒大于0,现在咱们把这个条件放的宽松一些,总可以通过放缩变换让y(x)>=1嘛,这样问题就简单了!既然要求y*y(x)的最小值,现在是不是最小值就是1呀,这样这个式子不久能化简掉了嘛!

这里写图片描述

下面咱们来看,只剩下求解一个最大值啦!但是我们的常规套路是不是把一个最大值问题转换成一个最小值问题呀,直接求它倒数的最小值不久完了嘛!那这个带有约束条件的极值问题该怎么求呢?自然想到了一个神器:拉格朗日乘子法。这个概念如果没接触咱们就这么唠,现在我的目标是找到最合适的W和B但是这样还带约束的条件看起来比较难,所以我们想把这样一个问题转换成一个求解容易些的中间值问题,这个中间值能够和W还有B扯上关系,这样求出来了中间值就能找出来W和B了,差不多就是这个意思!

这里写图片描述

这个式子就是我们标准的拉格朗日乘子法嘛,感兴趣可以翻翻咱们的高数书来回顾下,估计你们也不感兴趣,那就认为科学及推导出来的东西是对的就好啦!

这里写图片描述

这里我们利用了对偶条件,啥意思呢?看起来就是最大最小调换了一下,其实这是一个证明,可以参考下拉格朗日KKT条件,这个说起来就太恶心人了,感兴趣看看KKT这三个科学家干了一件什么事吧! 
接下来我就要先求解什么样的w和b能够使得当前的L式子的值最小吧!这个我们自然想到了直接求偏导嘛!分别对w和b求偏导,然后得到了上述式子。 
这里写图片描述
将得到的解带回到原式当中,相当于把w和b就约分掉了,那么我们现在要求解的就是什么样的a值,能够使得这个式子最大吧! 
这里写图片描述
对要求的极大值式子同样加上了相反数变换成了求极小值的问题,到这里已经接近我们最终的答案啦! 
这里写图片描述
来看一个小例子吧,这个只是举例来说SVM怎么求解,真正的求解方式参考SMO算法吧!这里我们有三个数据点,2个正例,1个负例,通过它们要得到最好的决策方程!在约束条件中,就要把之前所考虑的条件都带上啦,拉格朗日乘子法也有自身的约束条件就是所有的a值必须都大于0. 
这里写图片描述
对于这样的式子,将我们的数据全部带入就好了,注意一点,这个x之间求的是内积! 
这里写图片描述 
在求极值的过程中,我们直接对a1和a2求偏导得到了结果,但是发现结果却不满足我们的约束条件,这怎么办呢?既然极值点不满足,我们只能在边界上来寻找了! 
这里写图片描述




宁波整容医院http://www.lyxcl.org/

SVM支持向量机方法——故事篇 一、什么是SVM? Mark一个我从百度找来的一个故事:刘强西就爱人           很久以前的情人节,魔鬼抢走了旅店老板刘强西的爱人,刘强西便发誓要救他的爱人。           来到魔鬼的城堡前,魔鬼和他玩了一个游戏,只要他通过了就放走他的爱人。          魔鬼桌子上放了两种颜色的球,说:“你能用一根棍分开它们吗?” 要求:即便再放更多的球之后,仍然能将它们分开。 阅读详情

相关推荐

用人话讲明白支持向量机SVM(上)

文章目录1.什么是SVM2.线性分类器的含义3.怎么找线性分类器 1.什么是SVM SVM支持向量机,号称机器学习的拦路虎。江湖传言,遇到了他,机器学习就会从入门到放弃。另一方面也就是说,只要搞定SVM,后面的算法模型学起来都是小意思。 那我们就先打虎,再盘后面的小猫咪。 由于SVM较复杂,我分两篇来进行阐述,本篇仅介绍SVM的基本概念。 先看下官方定义: 支持向量机方法是建立在统计学习理论的...

化简可得 645

小白都能学懂的支持向量机SVM (Support Vector Machines)

前言 其实在支持向量机里面,涉及到很多凸优化和矩阵分析的知识,对于大部分同学来说并未深入接触过这两门课,所以总是学不懂支持向量机,一学到公式就蒙圈了,例如我本人。但是很幸运让我听到了一位清华大学老师讲的课,他在课的开头明确说明了支持向量机里面有几条重要公式,记住就行,记住就能懂得它的原理,重点是如何去使用它。所以下面讲解中,一些简单的公式我会进行推导讲解,复杂的我会标记直接记住就行,有兴趣的同学可以自行推导一遍。 1.SVM的核心思想 SVM的核心思想就是将输入空间(Input Space)向一个高维度的空

lukas_ten的博客 739

【电商系统设计】基于SpringBoot的购物车结算下单库存方案:高并发防超卖与数据一致性实现

内容概要:本文围绕基于SpringBoot的电商系统中购物车、结算、下单与库存管理四大核心模块,提供了一套完整的生产级设计方案与落地实施步骤。方案涵盖从业务链路梳理到技术选型(如Redis、RabbitMQ、MySQL、MyBatis-Plus),再到数据库表设计、缓存策略、分布式锁、乐观锁、事务控制、幂等性保障等关键技术点,重点解决了高并发场景下的库存超卖、订单重复提交、数据一致性等典型难题。通过防重Token、延时消息、库存预扣与回滚机制,确保系统稳定性与可靠性,并提供了从环境搭建到压测上线的七步落地路径。; 适合人群:具备Java开发基础,熟悉SpringBoot、MySQL、Redis、RabbitMQ的中高级研发人员,尤其适合从事电商平台开发或高并发系统设计的工程师;工作年限建议1-5年。; 使用场景及目标:①构建高性能、高可用的电商购物车与订单系统;②掌握生产环境中如何防止库存超卖、实现订单幂等、保障事务一致性;③学习缓存、消息队列、分布式锁在实际业务中的综合应用;④快速将方案应用于秒杀、促销等高并发场景。; 阅读建议:建议结合SpringBoot项目实战,边读边实现各模块功能,重点关注下单流程的事务控制、库存状态流转与异常补偿机制,同时进行压测验证系统健壮性。

机器学习(六)支持向量机svm初级篇

为了理解svm算法,我这边以2位空间的点数据集分类为例,在二维空间中,直线的一般公式为:Ax+By+c=0;然后我们希望通过已有的数据点,求出直线的A,B,C三个参数,这就是SVM算法的目的。 (1)这里我们为了方便,我把直线的一般公式写成: 写成矩阵形式: 简化为: 先回忆一下点P(x1,x2)位于直线的上方和下方的计算公式,判断方法如下: 如果,则P点位于直线的下方;

hjimce的专栏 2885

从你的全世界切过(胡说八道支持向量机SVM小故事)

背景 据说很久很久以前, 澳门有一家"胡说八道大赌场", 专门提供各种奇奇怪怪的玩法. 其中有一个赌博叫"从你的全世界切过"(连名字也这么奇怪). 玩法是在一张桌布上黏附着许多小蓝球和小红球 玩家会得到一把很长很锋利的切片 玩家在桌布上切一刀后, 指定切出来的这条线的一边是小蓝球, 一边是小红球. 确定选择后,"从你的全世界切过"游戏机便会掉落更多的小球黏附在桌布上. 如果小球黏附的...

dianjun9551的博客 217

产业园区如何通过数智平台提升科技创新服务能力?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

高校技术转移办公室如何优化科研资源转化路径?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

sam l part1 666niubi

sam l part1 666niubi

数据库表结构可视化工具

数据库表结构可视化工具是一个基于Java和JavaFX开发的桌面应用程序,用于解析和可视化MySQL数据库的表结构,生成ER图,并支持数据字典导出。

高校科研管理人员如何优化技术成果转化流程?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

Spark-x2.5 open model series.

Spark-x2.5 open model series. Pushing the Limits of Agentic Capabilities in On-Device Models

政府科技管理部门如何提升科技成果转化效率?.docx

政府科技管理部门如何提升科技成果转化效率?

产业园区如何快速搭建科技服务平台?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

GD25Q16-ALP1389QD-D23-6LVDS-按键板是,ALP1389VQ-HX126-KEY

GD25Q16-ALP1389QD-D23-6LVDS-按键板是,ALP1389VQ-HX126-KEY

光纤种子激光器:MOPA与相干应用推动高稳定种子源需求.docx

光纤种子激光器:MOPA与相干应用推动高稳定种子源需求

上一篇: Google自动编程框架AutoML入门指南
下一篇: Java的字符类String、StringBuffer与StringBuilder异同对比分析
whisky__f
博客等级 码龄9年 18粉丝 145原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值