《卷积神经网络与计算机视觉》 —2.3机器学习分类器

举报
华章计算机 发表于 2020/02/14 16:19:17 2020/02/14
【摘要】 本节书摘来自华章计算机《卷积神经网络与计算机视觉》 一书中第2章,第2.3.1节,作者是[澳]萨尔曼·汗(Salman Khan)侯赛因·拉哈马尼(Hossein Rahmani)赛义德·阿法克·阿里·沙(Syed Afaq Ali Shah)穆罕默德·本纳努恩(Mohammed Bennamoun),黄智濒 戴志涛 译。

2.3机器学习分类器

机器学习通常分为三个主要类型,即有监督、无监督和半监督。就有监督学习方法而言,目的是在给定一组标记的输入输出对的情况下,学习从输入到输出的映射。第二种类型的机器学习是无监督学习方法,我们只给出输入,目标是自动在数据中找到感兴趣的模式。这个问题不是一个明确定义的问题,因为我们不知道要寻找什么样的模式。而且没有明显的误差度量标准可供使用,这点与有监督学习不同,在有监督学习中可以将给定样本的标签预测与观察值进行比较。第三种类型的机器学习是半监督学习,其通常将少量标记数据与大量未标记数据组合以生成适当的功能或分类器。大型数据集的标记过程的成本是不可承受的,而未标记数据的获取相对便宜。 在这种情况下,半监督学习方法具有很大的实用价值。

另一类重要的机器学习算法是“增强学习”,其中算法允许代理在给定的规则(对世界的观察)下自动确定理想行为。每个代理都对周边环境有一些影响,而且这些环境会提供激励反馈指导学习算法。然而,在本书中,我们的重点主要是有监督学习方法,这是在实践中使用最广泛的机器学习方法。

各类文献中已经提出了广泛的有监督分类技术。 这些方法可以分为三个不同的类别,即线性(例如,SVM [Cortes,1995]、逻辑回归、线性判别分析(LDA)[Fisher,1936])、非线性(例如,多层感知机(MLP)、核函数支持向量机)和基于集成的(例如,RDF [Breiman,2001;Quinlan,1986]、AdaBoost [Freund and Schapire,1997])分类器。集成方法的目标是组合几个基本分类器的预测,以改进单个分类器的泛化能力。集成方法可以分为两类,即平均(例如,套袋方法、随机决策森林[Breiman,2001;Quinlan,1986])和增强(例如,AdaBoost[ Freund and Schapire,1997]、梯度提升树[Friedman,2000])。在平均方法的情况下,目标是独立地构建几个分类器,然后平均它们的预测。对于增强方法,基本的“弱”分类器是顺序构建的,并且试图减少组合起来的整体分类器的偏差。动机是结合几个弱模型来产生强大的整体。

机器学习分类器的定义有些抽象,即,通过实验可改进计算机视觉任务的能力。 为了使其更加具体,下面将详细描述三种广泛使用的线性(SVM)、非线性(核函数SVM)和集成(RDF)分类器。

2.3.1支持向量机

 

SVM[Cortes,1995]是一种用于分类或回归问题的有监督机器学习算法。SVM的工作原理是找到一个线性超平面,将训练数据集分为两类。由于存在许多这样的线性超平面,SVM算法试图找到最佳分离超平面(如图2.7所示),当与最近的训练数据样本的距离(也称为边距)尽可能大时,这种超平面就直观地实现了。这是因为,通常情况下,边际越大,模型的泛化误差越低。

 

在数学上,SVM是最大边际线性模型。给定由n个数据样本组成的训练集,形式为(x1,y1),…,(xn,yn) ,其中xi是一个m维的特征向量,yi={1,-1}是样本xi所属的类别。SVM的目标是找到最大边际的超平面,将yi=1的数据样本组与yi=-1的样本组分离开。如图2.7b(粗体蓝线)所示,该超平面可以写为满足以下等式的一组样本点:

image.png

其中,w是超平面的法向量。更确切地说,超平面上方的任何样本都应该有标签1,即所有满足wTxi+b>0的xi,其对应的yi为1。类似地,超平面下的任何样本都应该有标签-1,即所有满足wTxi+b<0的xi,其对应的yi为-1。

请注意,超平面(或决策边界,图2.7b中的粗体蓝线)与任意一类的最近数据样本之间存在一些空间。因此,重新调整样本数据,使得超平面wTxi+b=1上或上方的任何样本都是具有标记为1的一个类,并且超平面wTxi+b=-1上或下面的任何样本都是具有标记-1的另一个类。由于这两个新的超平面是平行的,它们之间的距离是2wTw,如图2.7c所示。

 image.png

 

图2.7对于两类可分离的训练数据集,例如a中所示的数据集,有许多可能的线性分类器,如a中的蓝线所示。直观地,在两个类的数据样本之间的空隙中间绘制的分离超平面(也称为决策边界)(b中的粗体蓝线)看起来好于a中所示的那些。SVM定义了最远离任何数据点的决策边界的标准。从决策面到最近数据点的距离确定了分类器的边距,如b中所示。 在b中所示的硬间隔SVM中,单个异常值可以确定决策边界,这使得分类器对数据中的噪声过于敏感。然而c中所示的软间隔SVM分类器通过为每个样本引入松弛变量ξi,允许每个类的一些样本出现在决策边界的另一侧。d展示了一个例子,其中类不能通过线性决策边界分离。因此,如e所示,将原始输入空间

回想一下,SVM试图最大化这两个新超平面之间的距离,这两个平面分割两个类,这相当于最小化wTw2 。因此,SVM通过解决以下的原始优化问题来学习:

 

image.png

满足:

 

image.png

1.软间隔扩展

在训练样本不能完全线性分离的情况下,SVM可以通过引入松弛变量,允许某一类的一些样本出现在超平面(边界)的另一侧,每个样本xi对应一个变量ξi ,优化问题变为:

 

image.png

满足:

 

image.png

与将在第3章中介绍的深度神经网络不同,线性SVM只能解决线性可分的问题,即属于类1的数据样本可以通过超平面与属于类2的样本分离,如图2.7所示。但是,在许多情况下,数据样本不是线性可分的。

2.非线性决策边界

通过将原始输入空间(d)投影到高维空间(D)中可以将SVM扩展到非线性分类,有希望找到分离超平面。因此,二次规划问题的表达方式如上(式(2.12)和式(2.13)),但是,所有的xi用(xi)替代,其中提供了一个向更高维空间的映射。

image.png

满足:

 

image.png

3.对偶支持向量机

当D远大于d时,学习w还需要更多的参数。为了避免这种情况,SVM的对偶形式用于优化问题。

image.png

满足:

image.png

其中,C是一个超参数,它控制模型的错误分类程度,以防各类不能线性可分。

4.核技巧

由于(xi)处于高维空间(甚至是无限维空间),因此计算(xi)T·(xj)可能是难以处理的。然而,存在特殊的核函数,例如线性、多项式、高斯和径向基函数(RBF),其对较低维向量xi和xj进行操作以产生等效于较高维向量的点积值。例如,考虑函数:3→10

 

image.png

 


值得注意的是,对于给定的函数,如式(2.18)所示,有如下等式:

image.png

因此,不用计算(xi)T·(xj),而是计算多项式核函数K(xi,xj)=(1+xTixj)2 ,它的值等价于更高维的向量的点积(xi)T·(xj)。

 

请注意,除了点积(xi)T·(xj)被核函数K(xi,xj)替代之外,优化问题完全相同。新空间中的点积(xi)T·(xj)对应于核函数K(xi,xj)。

 

image.png

满足:

image.png

总之,线性SVM可视为单层分类器,并且核方法SVM可视为2层神经网络。 然而,与SVM不同,第3章表明深度神经网络通常是通过连接几个非线性隐藏层来构建的,因此可以从数据样本中提取更复杂的模式。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200