想了解机器学习的看过来,一招教你变大神!

作者: AI研究所 2019-01-24 10:18:25

 作为模式识别或者机器学习的爱好者,同学们一定听说过支持向量机这个概念,这可是一个,在机器学习中避不开的重要问题。

其实关于这个知识点,有一则很通俗有趣的传说:

很久以前,一个村庄里住着一位退隐的大侠,相传大侠的剑法非常高明。

在一个月黑风高的夜晚,魔鬼抓走了大侠的妻子。大侠取出尘封多年的剑,来到魔鬼的城堡要救他的妻子。但是魔鬼却提出要求,要和他玩一个游戏。

魔鬼在桌子上放了两种颜色的球,说:“用你手中的剑分开它们,要求是尽量在放更多球之后,仍然适用。”

大侠拔出利剑一挥,桌上出现一道裂痕,准确地分开了两种球。

想了解机器学习的看过来,一招教你变大神!

然后魔鬼又在桌上放了更多的球,大侠如法炮制,手起刀落,虽然有一个球没有准确划分,但依然干得漂亮。

大侠发现,剑痕的最佳位置,就是让剑痕离两边的球都有尽可能大的间隙。

想了解机器学习的看过来,一招教你变大神!

有了这样的思想,现在即使魔鬼放了再多的球,就仍然能够很好地划出分界线。

当然,魔鬼不会善罢甘休,于是把一堆球随手一扔:把它们分开。

想了解机器学习的看过来,一招教你变大神!

大侠看到这样摆放的球,也是有点懵逼的。就在魔鬼开启嘲讽模式时,大侠想到了新的办法。

他左手在桌上一拍,球飞到空中。然后,凌空腾起,用手中的剑划出一道光波,恰好穿过两种球的中间。

想了解机器学习的看过来,一招教你变大神!

从魔鬼的角度看这些球,它们看起来像是被一条曲线分开了。

想了解机器学习的看过来,一招教你变大神!

大侠救回了妻子,然后故事在村里传开了,并被杜撰成了美丽的故事。也就成了现在的支持向量机传说。

听完这个故事,是不是对支持向量机有了一些更加感性的认知?

今天,班主任就来给大家详细讲一讲线性支持向量机问题。

支持向量机SVM

支持向量机(Support Vector Machine,以下简称SVM)主要用于解决模式识别领域中的数据分类问题,它属于有监督学习算法的一种。

SVM要解决的问题可以用一个经典的二分类问题加以描述,也就是我们在开头讲的那则传说。如图a所示,在二维坐标中有一堆红色的球和蓝色的球,能否用一条直线将它们分开呢?显然是可以的,而且满足这一条件的直线也显然不止一条。

想了解机器学习的看过来,一招教你变大神!

这类问题在模式识别领域称为线性可分问题。

支持向量

图b和c分别给出了两种不同的分类方案,其中黑色实线为分界线,称为“决策面”

想了解机器学习的看过来,一招教你变大神!

不同的分类器(比如说决策树、神经网络,逻辑回归)会给出不同的分类边界,而它们都是在找一个“最好的”的决策边界SVM的意义也是如此。

以图(b)为例,虚线的位置由决策面的方向距离决策面最近的几个样本的位置决定。两条虚线之间的垂直距离,就是这个决策面对应的分类间隔。

显然,每一个可能把数据集正确分开的方向都有一个最优决策面。而不同方向最优决策面,它们的分类间隔通常是不同的。那个具有“最大间隔”的决策面就是SVM要寻找的最优解。而这个最优解对应的两侧虚线所穿过的样本点,就是SVM中的支持样本点,称为支持向量

回到图(b)中的数据,A决策面就是SVM寻找的最优解,而相应的三个位于虚线上的样本点,在坐标系中对应的向量就叫做支持向量。

想了解机器学习的看过来,一招教你变大神!

最佳决策边界

那么如何判断一个决策边界好呢?让我们来看一下SVM的关键假设:决策边界两边最近的样本到决策边界的间隔最大,此时的决策边界为最佳决策边界。

间隔

以上举例为二维平面中的例子。而在样本空间中,划分超平面可通过如下线性方程来描述:

想了解机器学习的看过来,一招教你变大神!

其中w为法向量,决定了超平面的方向;b为位移量,决定了超平面与原点的距离。而对于训练样本(xi,yi),则满足以下公式:

想了解机器学习的看过来,一招教你变大神!

公式(2)称为最大间隔假设,yi=+1 表示样本为正样本,yi=−1 表示样本为负样本。

再经过一系列的变形,可以求出间隔的最终表达式

想了解机器学习的看过来,一招教你变大神!

间隔最大化

SVM的思想是使得间隔最大化,也就是:

想了解机器学习的看过来,一招教你变大神!

显然,最大化 2||w|| 相当于最小化 ||w||,公式(6)可以转化成:

想了解机器学习的看过来,一招教你变大神!

公式(7)即为支持向量机的基本型。

对偶问题的解决方法——拉格朗日乘子式

看到这类带约束的最小值问题,很自然我们想到了拉格朗日乘子法。

由此最终求解可以得到模型:

想了解机器学习的看过来,一招教你变大神!

从这个结论里我们可以看出支持向量机的重要特征:当训练完成后,大部分样本都不需要保留,最终模型只与支持向量有关。

应用场景

近年来SVM已经在图像识别、信号处理、基因图谱识别等方面得到了广泛的应用,例如在无人驾驶技术中,需要对路面箭头指示进行识别,这里就用到了SVM。

想了解机器学习的看过来,一招教你变大神!

又比如,方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中,进行物体检测的特征描述子。如今,HOG特征结合SVM分类器已经被广泛应用于图像识别中,尤其是在行人检测中,获得了极大的成功。

支持向量机 VS 深度学习

SVM和深度学习(DeepLearning,以下简称DL)相比,有哪些特点和适用场景呢?

一般来说,SVM在解决中小数据规模(相对少)、非线性(惩罚变量)、高维(核函数)模式识别方面,具有较大的优势。DL处理的对象主要为图像和声音,其优势在于对原始特征的表示。

但是神经网络相当于一个黑盒模型,在一些关键的应用场合,会有较高的风险。

想了解机器学习的看过来,一招教你变大神!

例如在智能医疗方面,一个医生使用了基于深度学习的系统,却由于神经网络的“黑盒”特性,无法向患者解释诊断原理,那用户极有可能会因为高风险而拒绝。

但如果选用的是SVM,它是单纯从可靠的数学理论推导出来的,可解释性较好,那用户对这类产品的选择率会更高。 
机器学习 深度学习 图像处理
上一篇:教你用Python实现AutoML 下一篇:机器学习算法优缺点对比及选择(汇总篇)
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

机器学习转化为生产力,警惕这4个常见陷阱!

几乎每个人都想在他们的业务中引入机器学习,但是这些人也遇到了一个大问题:让模型可持续发展十分困难,尤其是在云架构的基础上。medium上一位博主也指出了这个问题,并提出了将机器学习模型投入生产的4个常见陷阱。

大数据文摘 ·  1天前
500亿参数,支持103种语言:谷歌推出「全球文字翻译」模型

由于缺乏平行数据,小语种的翻译一直是一大难题。来自谷歌的研究者提出了一种能够翻译 103 种语言的大规模多语言神经机器翻译模型,在数据丰富和匮乏的语种翻译中都实现了显著的性能提升。

机器之心 ·  2天前
机器学习免费跑分神器:集成各大数据集,连接GitHub就能用

搞机器学习的小伙伴们,免不了要在各种数据集上,给AI模型跑分。现在,Papers with Code (那个以论文搜代码的神器) 团队,推出了自动跑分服务,名叫sotabench,以跑遍所有开源模型为己任。

栗子 鱼羊 ·  2天前
大数据为什么不够聪明?机器要如何走向强人工智能

大数据为什么不够聪明?比概率语言更强大的思考工具是什么?科幻电影中的强人工智能到底怎样实现?如何让智能机器像人一样思考?搞清楚因果关系才能拨云见日。

明日情报 ·  2天前
2019机器学习框架之争:与Tensorflow竞争白热化,进击的PyTorch赢在哪里?

2019年,机器学习框架之争进入了新阶段:PyTorch与TensorFlow成为最后两大玩家,PyTorch占据学术界领军地位,TensorFlow在工业界力量依然强大,两个框架都在向对方借鉴,但是都不太理想。

大数据文摘 ·  2天前
机器学习帮你预测电池寿命:精确了解电池还能充几次

电池寿命的确定,是移动硬件发展的重要一环,但是由于电池电化学反应的不确定性以及不同的使用环境和习惯,电池寿命变成了一门玄学。不过柏林的三位小伙伴,利用Tensorflow,在原有的预测体系基础上。更近一步,完成了电池的全寿命预测。

靓科技解读 ·  3天前
PyTorch横扫顶会,TensorFlow退守业界:机器学习框架一年变天

机器学习框架的世界,局势变化过于迅猛,稍不注意就会被抢了地盘。一年前,TensorFlow还是各大顶会论文选择的主流框架,如今顶会几乎成了PyTorch的天下。

鱼羊 栗子 ·  3天前
Nature发文:深度学习系统为什么这么好骗?

今天的人工智能系统经常会出现莫名其妙的 bug。最新一期《自然》杂志上的这篇文章向我们介绍了深度学习为什么如此容易出错,以及解决这些问题的研究方向。

机器之心 ·  4天前
Copyright©2005-2019 51CTO.COM 版权所有 未经许可 请勿转载