【待补充】支持向量机(SVM)原理和python实现

【待补充】支持向量机(SVM)原理和python实现,第1张

概述文章目录前言一、线性硬间隔SVM1.应用对象2.几何角度3.最大间隔分类器4.原问题转化为对偶问题二、线性软间隔SVM1.应用对象三、非线性SVM四、SOM算法原理五、python代码实现参考总结前言完成第一部分,我写完实习报告马上来补充。一、线性硬间隔SVM1.应用对象完

文章目录前言一、线性硬间隔SVM1.应用对象2.几何角度3.最大间隔分类器4.原问题转化为对偶问题二、线性软间隔SVM1.应用对象三、非线性SVM四、SOM算法原理五、python代码实现参考总结


前言

完成第一部分,我写完实习报告马上来补充。


一、线性硬间隔SVM1.应用对象

完全线性可分的样本

2.几何角度

找到一个超平面,与两类样本点的距离都足够远,对样本进行划分。划分超平面可定义为
w T x + b = 0 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0 wTx+b=0

3.最大间隔分类器

3.1间隔(magin)
离划分超平面最近的点到超平面的距离:

称之为间隔;

3.2最大间隔分类器
通过最大间隔法求最优划分超平面,即

其中 y i ( w T x + b ) y_{i}(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b) yi​(wTx+b)为点到超平面的相对距离,令离划分超平面最近的点到划分超平面相对距离等于1,则

而最大化 ∥ w ∥ − 1 {\|w\|}^{\mathrm{-1}} ∥w∥−1等价于最小化 ∥ w ∥ 2 {\|w\|}^{\mathrm{2}} ∥w∥2,则上式可重写为

这就是支持向量机(SVM)的基本型,也就是原问题,它是一个凸二次规划问题,其中系数 1 2 \frac{1}{2} 21​是为了方便之后的最小值求解,不影响最小值的大小;由于对偶问题相比与原问题更易求解,所以下面把原问题转化为对偶问题。

4.原问题转化为对偶问题

4.1有约束问题转化为无约束问题
对原问题的每条约束添加拉格朗日乘子,则原问题的拉格朗日函数可以写为

则原问题可以写成如下式子

为什么可以直接转化呢?解释如下

由此,有约束的原问题转化为了无约束问题。

4.2无约束问题转化为对偶问题
原问题由于是凸二次规划问题,且满足Slater条件,所以原问题与它的对偶问题具有强对偶关系,即原问题和对偶问题最优解相同(定理,详情可以找证明了解)

求L的最小值

将得到的两个式子代入L,则有

则化简之后,得到对偶问题

求得使对偶问题达到最大值的最优解 λ ∗ \lambda^{*} λ∗之后,由于原问题和对偶问题的解相同的充分必要条件是最优解满足KKT条件(定理,下面会简单补充阐述原理)

则可以求得原始问题的最优解 w ∗ w^{*} w∗和 b ∗ b^{*} b∗:

*4.3(补充)KKT条件原理简单推导
简单的解释一下KKT条件,由于

则有

要使对偶问题的最优解等于原问题的最优解,也就是满足强队偶关系,则需要使上式中的两个等号成立,即还需要满足下面条件

二、线性软间隔SVM1.应用对象

近似线性可分的样本

三、非线性SVM四、SOM算法原理五、python代码实现参考

1.【机器学习】【白板推导系列】【合集 1~23】
2.李航,统计学习方法
3.周志华,机器学习
4.Peter Harrington,机器学习实战

总结 总结

以上是内存溢出为你收集整理的【待补充】支持向量机(SVM)原理和python实现全部内容,希望文章能够帮你解决【待补充】支持向量机(SVM)原理和python实现所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1188124.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存