机器学习算法总结2:感知机和支持向量机

感知机于1957年由Rosenblatt提出,是神经网络支持向量机的基础。感知机是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1二值,该模型属于判别模型,旨在求出将训练数据进行线性划分的分离超平面
1.模型
假设数据集满足线性可分性,由输入空间到输出空间的决策函数如下:
在这里插入图片描述
w为权值(或权值向量),b为偏置,w·x表示w和x的内积,sign是符号函数,即:
在这里插入图片描述
1.向量内积(向量点乘、数量积):对两个向量的对应位置一一相乘求和的结果,点乘的结果是一个标量;
2.向量外积(向量叉乘、向量积):叉乘运算结果是向量,并且两个向量的外积与这两个向量组成的坐标平面垂直。
参考博文
矩阵三种乘法:参考博文
在这里插入图片描述
2.策略
感知机的损失函数所有误分类点到超平面S的总距离
任意一个点到分离超平面的距离:
在这里插入图片描述
范数:衡量某个向量空间(或矩阵)中每个向量的长度或大小。
(1)L0范数:向量中非0元素个数;
(2)L1范数:向量各元素的绝对值之和;
(3)L2范数:向量各元素的平方和的开方值。参考博文
上述公式不是参数w和b的连续可导函数,经过推导得出感知机的损失函数如下:
在这里插入图片描述
其中,M为误分类点的集合。
3.算法
最优化方法是梯度下降法,感知机算法有两种形式:原始形式对偶形式
感知机学习算法存在多个解,这些解既依赖于初值的选择,也依赖于迭代过程中误分类点的选择顺序。
(1)原始形式
使用梯度下降法不断极小化目标函数,注意:极小化过程不是一次使M中所有误分类点的梯度下降,而是一次随机选取一个误分类点使其梯度下降。
在这里插入图片描述
(2)对偶形式
在这里插入图片描述
对偶形式中训练实例仅以内积的形式出现,故将训练集中实例间的内积计算出来并以矩阵形式存储,这个矩阵即为Gram矩阵:
在这里插入图片描述
支持向量机(SVM)
支持向量机(support vector machines)是一种二类分类模型,模型是定义在特征空间上的间隔最大的线性分类器,策略是间隔最大化,算法是求解凸二次规划的最优化算法。
支持向量机分为线性可分支持向量机(硬间隔支持向量机)、线性支持向量机(软间隔支持向量机)及非线性支持向量机。具体地,当训练数据集线性可分时,通过硬间隔最大化,学习线性可分支持向量机;当训练数据集近似线性可分时,通过软间隔最大化,学习软间隔支持向量机;当训练数据集线性不可分(非线性),通过核技巧和软间隔最大化,学习非线性支持向量机。
注意:当输入空间为欧式空间或离散集合、特征空间为希尔伯特空间时,核函数(kernel function)表示将输入从输入空间映射到特征空间得到的特征向量之间的内积。通过使用核函数可以学习非线性支持向量机,等于隐式地在高维的特征空间中学习线性支持向量机,这种方法称为核技巧
假设输入空间与特征空间为两个不同的空间,输入空间为欧式空间或离散集合,特征空间为欧式空间或希尔伯特空间,线性可分支持向量机和线性支持向量机假设这两个空间的元素一一对应,并将输入空间中的输入映射为特征空间中的特征向量;非线性支持向量机利用一个从输入空间到特征空间的非线性映射将输入映射为特征向量。所以,输入都由输入空间转换到特征空间,支持向量机的学习是在特征空间进行的
1.线性可分支持向量机(硬间隔支持向量机)
假设训练集线性可分,类标签y={+1, -1}。
学习目标:在特征空间寻找一个分离超平面(w·x + b = 0),其中w是法向量,b是截距。
感知机和线性可分支持向量机区别:
感知机利用误分类点到分离超平面距离最小的策略,得到分离超平面,解有无穷多个
线性可分支持向量机利用间隔最大化的策略,得到分离超平面,解是唯一的
在这里插入图片描述
函数间隔和几何间隔:
在这里插入图片描述
在这里插入图片描述
函数间隔和几何间隔的关系:
在这里插入图片描述
支持向量机是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。
那么,可以表示为以下约束最优化问题:
在这里插入图片描述
其中,γ表示几何间隔。
几何间隔和函数间隔的关系如下:
在这里插入图片描述
在这里插入图片描述
那么,可以表示为以下约束最优化问题:
在这里插入图片描述
变换得到:
在这里插入图片描述
上述问题是凸二次规划问题(原始问题)
线性可分支持向量机原始形式
在这里插入图片描述
几何间隔最大的分离超平面对未知数据有很好的的分类预测能力,即泛化能力强。
在线性可分条件下,训练数据集的样本点与分离超平面距离最近的样本点的实例称为支持向量在决定分离超平面时只有支持向量起作用,而其他实例点并不起作用。
线性可分支持向量机对偶形式
为了求解线性可分支持向量机的最优化问题,将凸二次规划问题作为原始最优化问题,应用拉格朗日对偶性,通过求解对偶问题得到原始问题的最优解,这就是线性可分支持向量机的对偶算法。
对偶算法优点:一是对偶问题更容易求解;二是自然引入核函数,进而推广到非线性问题。
根据拉格朗日对偶性,引入拉格朗日乘子向量,将凸二次规划问题转换成对偶最优化问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进而得到对偶最优化问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由此可见:分类决策函数只依赖于训练样本之间的内积
在这里插入图片描述
2.线性支持向量机(软间隔支持向量机)
解决问题:训练数据近似线性可分,即存在噪声或特异点
为了解决上述问题,引入松弛变量
在这里插入图片描述
目标函数变为:
在这里插入图片描述
其中,C是惩罚参数。 最小化目标函数包含两层含义:使第一项尽量小即间隔尽量大,同时使误分类点的个数尽量小,C是调和二者的系数。
那么,线性支持向量机的学习问题转变为如下凸二次规划问题(原始问题):
在这里插入图片描述
在这里插入图片描述
引入拉格朗日乘子,构建拉格朗日函数,根据拉格朗日对偶性,将原始问题转换成对偶最优化问题,对偶问题是拉格朗日函数的极大极小问题。
在这里插入图片描述
在这里插入图片描述
3.非线性支持向量机
非线性分类问题是指通过利用非线性模型才能很好地进行分类的问题。但是非线性问题不好求解,所以进行一个非线性变换,将非线性问题转换成线性问题,进而通过求解变换后的线性问题的方法求解原来的非线性问题。
求解非线性问题分为两步:
(1)使用一个变换将原空间(输入空间)的数据映射到新空间(特征空间);
(2)在新空间用线性分类学习方法从训练数据中学习分类模型。
在这里插入图片描述
在这里插入图片描述
核函数表示将输入从输入空间映射到特征空间得到的特征向量之间的内积。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
常用的核函数
在这里插入图片描述
只需将线性支持向量机对偶形式中的内积换成核函数,就可以将线性支持向量机拓展到非线性支持向量机。
在这里插入图片描述

参考视频:
SVM详解
SVM

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值