机器学习笔记:支持向量机学习(4)

第四章:支持向量机学习 + 神经网络学习

(附文件)

MOOC笔记


1. 最大边缘超平面
· 线性分类器基本想法是:在样本空间中寻找一个超平面将不同的样本数据分开,图中B1就是划分矩形样本点和圆形样本点的一个超平面
image-20200318212720699

· 但是这样的超平面可能不止一个,分类器需要做的是选取最优的超平面来表示决策边界。衡量的标准就是:超平面的边缘。**这是因为具有较大边缘的决策边界比那些具有较小边缘的决策边界具有更好的泛化误差,对于扰动的抵抗性更强。**例如下图中超平面B1的边缘明显大于B2的边缘

image-20200318212943547

· 根据结构风险最小化原理,需要设计最大化决策边界的边缘的线性分类器以确保最坏情况下的泛化误差最小,线性支持向量机就是这样一个分类器。

2.线性支持向量机

· 给定训练数据集,线性分类器决策边界的线性方程可以写为:

ω T ∗ x + b = 0 \omega^T*x + b = 0 ωTx+b=0

ω \omega ω 是法向量决定了决策边界的方向,b 是位移量决定了决策边界与圆点之间的距离

正确的分类器满足:

image-20200318220729188

调整 ω \omega ω 和 b的值使得满足:( y i y_i yi 代表目标函数预测值,+1 为正例,-1为反例)

image-20200318221512602

两个异类支持向量到决策边界的距离之和称为决策边界的边缘。支持向量机学习就是寻找合适的w和b使得决策边界的边缘最大化。

具体的约束优化函数如下:

image-20200318224256955

以此将线性支持向量机的学习问题转化为一个凸二次优化问题,可以利用现成的优化计算包解决。也可以利用拉格朗日乘子法解决

拉格朗日乘子法
image-20200318230335890

将对偶优化问题转变为如下的最小优化问题

image-20200318232407239

随后将不等式约束转化为等式约束:

image-20200318234103417

其中KKT详解可参照:

https://zhuanlan.zhihu.com/p/38163970

已上可得出结论如下图:最终支持向量机模型的参数w和b只依赖于支持向量

image-20200318234546191
非线性支持向量机

​ 在实际运用中,很少存在理想的线性决策边界将所有训练样本正确分类,因此需要将样本空间映射到更高维的特征空间,使得样本在高维空间内线性可分。

如果原始空间是有限维,那么一定存在一个更高维的特征空间使得样本线性可分

​ 将线性支持向量机作为相应的映射变换可得到非线性支持向量机。映射后向量为 ϕ \phi ϕ(x) 且有

image-20200319232713669

其中设计计算 ϕ ( x i ) T ϕ ( x j ) \phi(xi)^T\phi(x_j) ϕ(xi)Tϕ(xj) 的内积计算会很复杂。为解决该问题,通常是不显式地设计 ϕ \phi ϕ(·)而是设计一个核函数:

  • K ( x i , x j ) = ϕ ( x i ) T ϕ ( x j ) K(x_i,x_j) = \phi(x_i)^T\phi(x_j) K(xi,xj)=ϕ(xi)Tϕ(xj)

核函数的选取条件是:只要一个对称函数所对应的核矩阵半正定那么就能作为核函数使用。(MERCER定理)

·常用核函数有:

image-20200319233436440

教材内容补充学习


1.间隔与支持向量
2.对偶问题
3.核函数

​ 有了核函数之后可以将 ω 和 b \omega和b ωb表示为:

image-20200320000958924

这一展开式也称为:支持向量展式

·核函数的组合也可以为核函数:

image-20200320001334628
4.软间隔与正则化

现实任务中往往很难确定合适的核函数使得训练样本在特征空间中线性课分;退一步说即使恰好找到了某个确定的核函数也很难断定这个貌似线性可分的结果是不是由于过拟合造成的。因此引入软间隔的概念soft margin

image-20200320002818053

软间隔允许某些样本不满足约束:image-20200320002841554

但是这些不满足的样本应该尽可能少,于是优化目标可写为:

image-20200320002922473

其中 C>0 是一个常数, ι ( 0 / 1 ) \iota_{(0/1)} ι(0/1) 为"0/1损失函数"

image-20200320003141399

但是 ι \iota ι 函数的性质不够好,人们通常使用别的函数来代替它,称为“替代损失”surrogate loss。替代损失函数一般具有较好的数学性质,例如通常为连续的凸函数:下图为常用替代损失函数

image-20200320003424633 image-20200320003609280

引入松弛变量(slack variables),通过拉格朗日乘子法可得:

image-20200320003723371

其中 $\alpha_i 和 \mu_i $ 均≥ 0 为拉格朗日乘子。

image-20200320003917799 image-20200320003955872

我们还可以把式(6.29) 中的 0/1 损失函数换成别的替代损失函数以得到 其他学习模型,这些模型的性质与所用的替代函数直接相关,但它们具有一 个共性:优化目标中的第一项用来描述划分超平面的"间隔"大小,另一项 image-20200320004215492 用来表述训练集上的误差,可写为更一般的形式

image-20200320004225547[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g7Dqc570-1586239151089)(C:\Users\13411\AppData\Roaming\Typora\typora-user-images\image-20200320004556055.png)]

Ω ( f ) \Omega(f) Ω(f) 称为结构风险(structural risk),用来描述模型 f 的某些性质;第二项[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hoV0AfNM-1586239151091)(C:\Users\13411\AppData\Roaming\Typora\typora-user-images\image-20200320004556055.png)]称为经验风险 empirical risk,用来描述模型与训练数据的契合程度;C 用于对两者进行折中

5、支持向量回归

支持向量回归(Support Vector Regression)简称SVR。传统回归模型通常基于模型输出f(x) 和 真实输出Y 之间的差别来计算损失,当且仅当f(x) 与y 完全相同时损失才为零。SVR则与此不同,假设我们能接受f(X) 与 Y之间有 ε \varepsilon ε 的偏差, 则当 f ( x ) 与 y 之 间 的 差 大 于 ε f(x) 与 y 之间的差大于\varepsilon f(x)yε 时才计算损失。如图,这相当于以f(x) 为中心,构建一个宽度为 2 ε 2 \varepsilon 2ε 的 间隔带,若训练样本落入该间隔带直接正确判定处理。

于是SVR问题可形化为:

image-20200320010255400

C为正则化常数, ι ε \iota_\varepsilon ιε 是不敏感损失函数( ε \varepsilon ε - insensitive loss)

image-20200320010432724 image-20200320010531389

最终得:SVR的解形如image-20200320011642152

能使得image-20200320011702316成立的样本即为SVR的支持向量,它们一定落在间隔带之外。

SVR可进一步表示为:

image-20200320011854610
6、核方法

SVM与SVR学得的模型总能表示成核函数的线性结合。引入表示定理(representer theorem):

image-20200320012412942

表示定理中对正则化项仅要求单调递增,意味着对于一般的损失函数核正则化项,优化问题的最优解都可以表示为核函数的线性组合。

​ 核化:引入核函数,是一种常见的核方法,可以将线性学习器拓展为非线性学习器。从而得到”核线性判别分析“KLDA

神经网络


神经网络的定义

​ 定义多种多样,最广泛接受的是:

>由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体做出的反应。
神经网络发展史

1)萌芽期(人类研究自己智能的开始~1949)

1943年, McCulloch和Pitts 提出第一个神经元数学模型, 即M-P 模型, 并从原理上证明了人工神经网络 能够计算任何算数和逻辑函数。 1949年, Hebb 发表《The Organization of Behavior》一书, 提出生物神经元学习的机理, 即Hebb学 习规则。Hebb学习规律被认为是神经网络学习算法的里程碑。

2)第一次高潮期(1950~1968)

1958年, Rosenblatt提出了单层感知机(Perceptron)模型及其学习规则。单层感知机的成功标示着神 经网络研究的第一高潮期的到来。

3)反思期(1969~1982)

1969年,Minsky和 Papert发表了《Perceptrons》一书, 明确指出:单层感知机不能解决非线性问 题, 多层网络的训练算法尚无希望。 很多献身于神经网络研究的科学家的研究结果很难得到发表,不少有意义的研究成果即使发表了,也 很难被同行看到,著名的BP算法的研究就是一个典型的例子。

4)第二次高潮期(1983~1990)

1982年,Hopfield提出了循环网络:引入李雅普诺夫(Lyapunov)函数作为网络性能判定的能量函 数,建立了神经网络稳定性的判别依据。 1984年,Hopfield设计并实现了后来被人们称为 Hopfield网络的电路。较好地解决了著名的TSP问 题,找到了最佳解的近似解。 1986年,PDP小组的Rumelhart等研究者重新独立地提出了多层神经网络的学习算法—BP算法,较 好地解决了多层神经网络的学习问题。

opfield提出了循环网络:引入李雅普诺夫(Lyapunov)函数作为网络性能判定的能量函 数,建立了神经网络稳定性的判别依据。 1984年,Hopfield设计并实现了后来被人们称为 Hopfield网络的电路。较好地解决了著名的TSP问 题,找到了最佳解的近似解。 1986年,PDP小组的Rumelhart等研究者重新独立地提出了多层神经网络的学习算法—BP算法,较 好地解决了多层神经网络的学习问题。

5)再认识与应用期(1991~) 2006年,Hinton提出了深度信念网络(DBN), 通过“ 预训练+微调”使得深度模型的最优化变得相对容 易。 2012年,Hinton组参加ImageNet竞赛,使用CNN模型以超过第二名10个百分点的成绩夺得当年竞 赛的冠军。 伴随云计算、大数据时代的到来,计算能力的大幅提升,使得深度学习模型在计算机视觉、自然语言 处理、语音识别等众多领域都取得了较大的成功。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值