前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >3分钟理解 支持向量机中最出神的第一笔

3分钟理解 支持向量机中最出神的第一笔

作者头像
double
发布于 2018-07-25 10:20:10
发布于 2018-07-25 10:20:10
32701
代码可运行
举报
文章被收录于专栏:算法channel算法channel
运行总次数:1
代码可运行

之前推送过SVM,今天,又有了更容易理解SVM的目标函数和约束怎么得来的思路,因此,记录下来,与大家一起分享。

01

设 g(x) = wx+b,则样本点到g(x)的距离为:

|g(x)| / ||w||

SVM 建立决策边界时,只关心距离决策边界最近的那两个样本点,然后取距离它们都最远的决策边,转化为数学公式为:

max(min(|g(x)| / ||w||))

将它化简为:

max( 1/||w||)

s.t. yi*g(xi) >=1

02

怎么想出来的?

如果设 |g(x)| >= 1 ,则 min( |g(x)| / ||w|| ) = 1 / ||w|| , 进一步地,max(min(|g(x)| / ||w||)) ,可以化简为:

max ( 1 / ||w|| )

那么, |g(x)| >= 1 ,如何化简为 yi * g(xi) >= 1 呢? 注意到 yi 是 第 i 个样本的标签值,要么为 1, 要么为 -1. 当 g(x) >= 0,代表为正例,即 yi = 1,当 g(x) < 0,代表负例,即 yi = -1,因此,|g(x)| = yi * g(x) >= 1.

OK. 接下来便是求解如下最优化目标和约束的优化问题:

max( 1/||w||)

s.t. yi*g(xi) >=1

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
BAT面试题1:请简要介绍下SVM
接下来,每天推送1道BAT的面试题,一般问到的这些知识点都是很重要的,所以知道的呢就再复习一下,不知道的赶紧弥补。日积月累,你会在不知不觉中就已入机器学习的大门,并且越走越深。同时,此方法不光帮你学知识,还能帮你顺利拿到OFFER.
double
2018/10/23
2.3K0
BAT面试题1:请简要介绍下SVM
【ML】支持向量机(SVM)从入门到放弃再到掌握
朋友,你通过各种不同的途经初次接触支持向量机(SVM)的时候,是不是会觉得这个东西耳熟能详,感觉大家都会,却唯独自己很难理解? 每一次你的老板或者同仁让你讲解SVM的时候,你觉得你看过这么多资料,使用过这么多次,讲解应该没有问题,但偏偏在分享的时候结结巴巴,漏洞百出? 每一次机器学习相关的面试在问到支持向量机(SVM)的时候,尽管你觉得你都准备好了,可是一次又一次败下阵来,以至于觉得问那些问题的人(是不是脑子有…)是那么的厉害,每一次都能精准发觉到你的不足和漏洞,让你怀疑你掌握的是假的SVM,然后让你怀疑人生? 那还等什么,快来看看这篇文章吧,原价998,现在只要。。。(不好意思,扯偏了。)
全栈程序员站长
2022/09/06
5610
【ML】支持向量机(SVM)从入门到放弃再到掌握
一文读懂支持向量机SVM(附实现代码、公式)
支持向量机(SVM),一个神秘而众知的名字,在其出来就受到了莫大的追捧,号称最优秀的分类算法之一,以其简单的理论构造了复杂的算法,又以其简单的用法实现了复杂的问题,不得不说确实完美。
数据派THU
2018/07/30
6.5K1
一文读懂支持向量机SVM(附实现代码、公式)
支持向量机原理篇之手撕线性SVM
Python版本: Python3.x 运行平台: Windows IDE: Sublime text3 一、前言 说来惭愧,断更快半个月了,本打算是一周一篇的。感觉SVM瞬间难了不少,推导耗费了很多时间,同时身边的事情也不少,忙了许久。本篇文章参考了诸多大牛的文章写成的,对于什么是SVM做出了生动的阐述,同时也进行了线性SVM的理论推导,以及最后的编程实践,公式较多,还需静下心来一点一点推导。 本文出现的所有代码,均可在我的github上下载,欢迎Follow、Star:https://githu
机器学习算法工程师
2018/03/06
2K0
支持向量机原理篇之手撕线性SVM
【机器学习实战】第6章 支持向量机
本文介绍了基于支持向量机(SVM)的图像分类算法,该算法可以自动提取图像特征,并通过对提取的特征进行分类,从而实现图像识别的功能。在具体实现中,可以使用不同的核函数来对图像特征进行处理,以达到更好的分类效果。同时,本文还介绍了如何使用Python的Scikit-learn库来实现该算法,并给出了详细的代码示例。通过在多个图像集上的测试,该算法能够实现较高的识别准确率,具有较好的应用前景。
片刻
2017/12/29
1.1K0
【机器学习实战】第6章 支持向量机
机器学习|支持向量机参数求解
01 — 支持向量机 支持向量机的简称为SVM,能在已知样本点很少情况下,获得很好的分类效果。 02 — SVM分类两个点 已知两个样本点,如果用SVM模型,决策边界就是线g,它的斜率为已知两个样本点
double
2018/04/02
5900
机器学习|支持向量机参数求解
机器学习算法|支持向量机(Support Vector Machine,SVM)
机器学习(MachineLearning),作为计算机科学的子领域,是人工智能领域的重要分支和实现方式。
阿巴阿巴-
2025/03/03
1K0
支持向量回归(Support Vector Regression)
回归的目的是得到一个能够尽量拟合训练集样本的模型 f ( x ) f(\mathbf{x}) f(x),通常用的方法是构建一个样本标签与模型预测值的损失函数,使损失函数最小化从而确定模型 f ( x ) f(\mathbf{x}) f(x)。
全栈程序员站长
2022/09/06
1.3K0
支持向量回归(Support Vector Regression)
【机器学习与实现】支持向量机SVM
图中深蓝色线便是决策边界,也称分离超平面;两条虚线之间宽度叫做间隔 (margin)。支持向量机的优化目标为——间隔最大化。
Francek Chen
2025/01/23
2300
【机器学习与实现】支持向量机SVM
Python3《机器学习实战》学习笔记(八):支持向量机原理篇之手撕线性SVM
版权声明:本文为博主原创文章,未经博主允许不得转载。个人网站:http://cuijiahua.com。 https://blog.csdn.net/c406495762/article/details/78072313
Jack_Cui
2019/05/25
6740
Python3《机器学习实战》学习笔记(八):支持向量机原理篇之手撕线性SVM
支持向量机(SVM) (2)
在上一次的介绍中,我们稍微了解到了关于support vector machine 的一些入门知识。今天,我们将真正进入支持向量机的算法之中,大体的框架如下: 1、最大间隔分类器 2、线性可分的情况(详细) 3、原始问题到对偶问题的转化 4、序列最小最优化算法 1、最大间隔分类器 函数间隔和几何间隔相差一个∥w∥ 的缩放因子(感觉忘记的可以看一下上一篇文章)。按照前面的分析,对一个数据点进行分类,当它的间隔越大的候,分类正确的把握越大。对于一个包含n 个点的数据集,我们可以很自然地定义它的间
昱良
2018/04/04
8650
支持向量机(SVM) (2)
我是这样理解--SVM,不需要繁杂公式的那种!(附代码)
支持向量机(Support Vector Machine,SVM)是众多监督学习方法中十分出色的一种,几乎所有讲述经典机器学习方法的教材都会介绍。关于SVM,流传着一个关于天使与魔鬼的故事。
mantch
2019/07/30
1.1K0
我是这样理解--SVM,不需要繁杂公式的那种!(附代码)
支持向量机(Support Vector Machines,SVM)
线性可分SVM学习方法,对线性不可分训练数据是不适用的,怎么将它扩展到线性不可分,需要修改硬间隔最大化,使其成为软间隔最大化。
Michael阿明
2020/07/13
1.9K1
支持向量机(Support Vector Machines,SVM)
支持向量机(SVM)学习笔记
简单点讲,SVM 就是一种二类分类模型,他的基本模型是的定义在特征空间上的间隔最大的线性分类器,SVM 的学习策略就是间隔最大化。
EmoryHuang
2022/10/31
5630
支持向量机(SVM)学习笔记
机器学习笔记(九)——手撕支持向量机SVM之间隔、对偶、KKT条件详细推导
支持向量机(SVM)是一种有监督的分类算法,并且它绝大部分处理的也是二分类问题,先通过一系列图片了解几个关于SVM的概念。
奶糖猫
2020/07/24
1.9K0
机器学习笔记(九)——手撕支持向量机SVM之间隔、对偶、KKT条件详细推导
支持向量机及Python代码实现
做机器学习的一定对支持向量机(support vector machine-SVM)颇为熟悉,因为在深度学习出现之前,SVM一直霸占着机器学习老大哥的位子。他的理论很优美,各种变种改进版本也很多,比如
机器学习AI算法工程
2018/03/12
1.5K0
支持向量机及Python代码实现
SVM-支持向量机算法概述
支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中[10]。 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力[14](或称泛化能力)。
bear_fish
2018/09/20
8260
SVM-支持向量机算法概述
python实现支持向量机之线性支持向量机定义(理论一)
支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;SVM还包括核技巧,这使它成为实质上的非线性分类器。SVM的的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。SVM的的学习算法就是求解凸二次规划的最优化算法。
西西嘛呦
2020/08/26
8380
python实现支持向量机之线性支持向量机定义(理论一)
支持向量机SVM介绍|机器学习
(一)SVM的八股简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力[14](或称泛化能力)。 以
陆勤_数据人网
2018/02/28
1.4K0
支持向量机SVM介绍|机器学习
支持向量机原理(五)线性支持回归
    在前四篇里面我们讲到了SVM的线性分类和非线性分类,以及在分类时用到的算法。这些都关注与SVM的分类问题。实际上SVM也可以用于回归模型,本篇就对如何将SVM用于回归模型做一个总结。重点关注SVM分类和SVM回归的相同点与不同点。
刘建平Pinard
2018/08/14
5600
支持向量机原理(五)线性支持回归
推荐阅读
相关推荐
BAT面试题1:请简要介绍下SVM
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验