专栏首页数据山谷机器学习|支持向量机(SVM)

机器学习|支持向量机(SVM)

01

基础的SVM

了解SVM之前,先让我们来思考一个问题,有下图所示的两类样本点,我们需要找到一条直线(一个平面)来把这两类样本点区分开,在图中可以看到有很多条直线都满足条件,但是哪条直线的分类效果更好呢?

此时该函数我们就可以称之为线性可分支持向量机。sign函数的图像表示如下:

这就是我们简单的线性SVM的思想,那么我们又如何通过间隔最大化来确定分离超平面呢?让我们再来看一下下面的间隔问题。

02

间隔问题

函数间隔

上图中是一个简单的圆与三角的分类问题,我们来讨论一下圆这个类,图中有框出的红、绿、蓝三种颜色的圆,他们都落在圆类的一侧,但是红球距离超平面的距离较远,如果我们把红圆预测为圆类,就比较确信我们的预测是正确的;同理,相对于蓝色的圆,我们就不是很确信;而对于绿色的圆,我们可以认为确信度在二者之间。

几何间隔

03

间隔最大化

在一种我们提到过间隔最大化得到的分类超平面经过sign函数后可以得到线性可分支持向量机,下面我们来说一下间隔最大化具体是怎么回事。

第二节中我们提到了确信度的问题,为了保证更高的确信度我们是不是应该尽量让每一个点到分类超平面的几何间隔都达到最大化,这样做的目的是对于新的数据点,我们不仅能将它分到正负类别中,同时离分类超平面很近的点我们也可以将它很好的分类,并且能够保证有很大的确信度,我们就可以说这个超平面对新数据有很好的预测能力。

此时我们便转化成了一个凸二次规划问题:

凸优化我们可以看做是一个凸函数去找最低点的问题(例如梯度下降法的过程)。

而二次规划是指目标函数为变量的二次函数和约束条件为变量的线性函数。

为了便于求解此类问题我们可以通过求解对偶问题得到原始问题的最优解,这样既可以简单的求解又可以引入后续对非线性分类问题的讨论(后面我们将会讨论对偶问题的求解)。

04

支持向量

05

对偶问题求解

上面我们提到了间隔最大化的求解问题,本节让我们继续来讨论间隔最大化章节中转化为对偶问题的求解。

首先需要明确一下对偶问题的由来,对偶问题是一种应用拉格朗日对偶性,通过求解对偶问题得到原始问题的最优解。

原始问题:

求极小

求极大

slater的条件规则如下:

06

引入松弛变量的SVM

上文中我们讲述的内容全都是在样本分类很均匀的情况下,而实际问题中这种状况经常是不存在的,那么有噪声点存在的时候应该怎么办呢?

07

损失函数

08

非线性SVM

核技巧

对于非线性支持向量机,我们需要用核技巧将线性支持向量机推广到非线性支持向量机,不仅是SVM其他的一些类似问题也可以用该方式来解答。

所谓核技巧其实就是使得在原空间内不可分的数据映射到更高维度的空间上,然后再使用线性的方法将他们分开的一种思想,用下图来表示一下:

可以看到图左的数据在二维空间内不能用一条直线将他们分开,我们将它映射到一个三维的空间内,此时就会存在一个平面(黄色的部分)将两类分离开来,对于这种思想我们就可以称之为核技巧。

核函数

常用的核函数

本文分享自微信公众号 - 数据山谷(BigDataValley),作者:二师兄

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 机器学习|AdaBoost

    对于分类问题而言,给定一个训练样本集,求比较粗糙的分类规则(弱分类器)要比求精确的分类规则(强分类器)容易的多,提升方法就是从弱学习算法出发,反复学习,得到一系...

    数据山谷
  • 机器学习|聚类(上)

    对于训练样本的标记信息是未知的情况下,我们的目标就会变成通过对无标记训练样本的学习来揭示数据的内在性质及规律,我们把这样的学习方法称之为“无监督学习”,而在此类...

    数据山谷
  • 机器学习|朴素贝叶斯

    数据山谷
  • latex math symbol

    pydata
  • salesforce 数据导入

    3.使用谷歌插件(这个我就不说了 , 毕竟现在很多人都访问不到谷歌的应用商店 , 因此我们就先学会第一种即可 , 后期小编会更上的 ?).

    Zero--周
  • 如何用Power BI获取数据?

    前面我们介绍了Power BI 是什么,今天介绍如何用Power BI 获取数据。

    猴子数据分析
  • 【基础篇】hexo博客搭建教程

    不要担心,本系列教程将会实现你白嫖的愿望,连服务器都不需要买,就算没有任何编程基础也可以学会的搭建博客教程

    huanhao
  • 【玩转腾讯云】十二. 在云端构建日志集中存储管理平台

    ②选择自定义配置——计费模式为“按量付费”——地域选择“北京”——可用区选择“随机可用区”——网络选择“默认”即可

    一只特立独行的兔先生
  • SAP Spartacus OccCmsComponentAdapter

    id:ElectronicsHomepageSplashBannerComponent

    Jerry Wang
  • SaltStack——配置管理(haproxy)

    1.balance roundrobin # 轮询,软负载均衡基本都具备这种算法 2.balance static-rr # 根据权重,建议使用 3.ba...

    江小白

扫码关注云+社区

领取腾讯云代金券