机器学习理论基础—支持向量机的推导(一)

机器学习理论基础---支持向量机的推导

算法原理

SVM:从几何角度,对于线性可分数据集,支持向量机就是找距离正负样本都最远的超平面,相比于感知机,其解是唯一的,且不偏不倚,泛化性能更好。

超平面

n维空间的超平面(wT X+ b= 0,其中w,x ∈ R)

  • 超平面方程不唯---
  • 法向量w和位移项b确定一个唯一超平面
  • 法向量w垂直于超平面 (缩放w,b时,若缩放倍数为负数会改变法向量方向)
  • 法向量w指向的那一半空间为正空间,另一半为负空间
  • 任意点到超平面的距离公式为

点到超平面的距离公式

理论证明:提出假设条件

1.由于法向量W与x1x0向量平行,首先计算两个向量点乘的模长:而下x1x0向量的模长 就是要求的距离R

2.按照点乘的坐标形式来进行计算,最后令两个式子相等即可以得到最终的结果。

两个式子相等得到最终的结果:

几何间隔

定义:M关于超平面的几何间隔为:(样本点的形式

正确分类是指:正样本都集中在正空间,负样本都集中在负空间。

  • 正确分类时r(i)>0,几何间隔此时也等价于点到超平面的距离。
  • 没有正确分类时:r(i)<0

数据集的定义形式 X为(x1,x2...)的数据集):即是所有样本点几何间隔的最小值。

支持向量机

模型定义 :给定线性可分数据集X,支持向量机模型希望求得数据集X关于超平面的几何间隔达到最大的那个超平面,然后套上一个sign函数实现分类功能

其中与感知机模型的区别在于,参数的不同支持向量机中的参数为b而感知机中的参数为一个阈值。

几何间隔最大的超平面一定是距离正负样本最远的超平面。

当超平面没有正确划分正负样本时:几何间隔最小的为误分类点,因此r<0

当超平面正确划分超平面时:r≥0,且越靠近中央越大。

支持向量机学习策略

策略:给定线性可分数据集X,设X中几何间隔最小的样本(xmin,ymin),那么支持向量机找超平面的过程可以转化为以下带约束条件 的优化问题。

根据几何间隔的定义带入进行求解,可以得到最终的结果式子与约束条件


化简后的公式存在的问题:

假设该问题的最优解为(w*,b*),那么(αw*,αb*),α ∈R+也是最优解,且超平面也不变,因此还需要对w,b做一定限制才能使得上述优化问题有可解的唯一解。不妨令

因为对于特定的(Xmin,Ymin)来说,使得该公式为1的α 的值只有一个

因此该公式和约束条件可以进一步优化为:

为了便于计算在进一步进行化简得到最终的学习策略 结果(平方取反转换为最小值问题 )。

此优化问题为含不等式约束的优化问题,且为凸优化问题,因此可以直接用很多专门求解凸优化问题的方法求解该问题,在这里,支持向量机通常采用拉格朗日对偶来求解。

凸优化问题

若目标函数f(x)是凸函数,约束集合是凸集,则称上述优化问题为凸优化问题,特别地,g(x)是凸函数,h(x)是线性函数时,约束集合为凸集,该优化问题为凸优化问题。显然,支持向量机的目标函数1/2||w||2是关于w的凸函数,不等式约束1 一y(wtx(i)十b)是也是关于w的凸函数,因此支持向量机是一个凸优化问题。

拉格朗日对偶

用来处理一般的约束问题,对于上面的公式,使用拉格朗日函数进行构造可得有

其中μ=(μ1,μ2,·,μm)T,入=(入1,入2,.,入n)T为拉格朗日乘子向量。

定义上述优化问题的拉格朗日对偶函数T(μ,入)(注意其自变量不包含x)为L(x,μ,入)关于x的下确界,也即:

无论上述优化问题是否是凸优化问题,其对偶函数T(μ,入)恒为凹函数 (证明参见《凸优化》)当μ≥0时,(μ,入)构成了上述优化问题最优值p*的下界,也即:

对上面的使用拉格朗日对偶函数求最优值提供参考的证明步骤

定义在满足μ≥ 0这个约束条件下求对偶函数最大值的优化问题为拉格朗日对偶问题 (原优化问题称为主问题)

设该优化问题的最优值为d*,显然d*≤ p* ,此时称为"弱对偶性"成立,若d* = p*,则称为"强对偶性"成立。找到了求p*的方法(上面有参考的证明过程

无论主问题是否为凸优化问题,对偶问题恒为凸优化问题,因为对偶函数T(μ,入)恒为凹函数(加个负号即可转为凸函数),约束条件μ≥0恒为凸集。

当主问题满足某些充分条件时,强对偶性成立。常见的充分条件有Slater条件:"若主问题是凸优化问题,且可行集D中存在一点能使得所有不等式约束的不等号成立,则强对偶性成立"(证明参见《凸优化》)。显然,支持向量机满足Slater条件。

KKT条件(5个)

设f(x),g(x),h(x)一阶偏导连续,x*,(μ*,入*)分别为主问题和对偶问题的最优解,若强对偶性成立,则x*,μ*,入*一定满足如下5个条件(证明参见《凸优化》

得出了第一种推导形式

根据支持向量机的主问题直接引出拉格朗日函数=0并对其求一阶偏导

若将w,b合并为=(w;b),显然上式是关于w的凸函数,直接求一阶导令其等于0,然后带回即可得到最小值,也即拉格朗日对偶函数。

相关推荐
空堂与归23 分钟前
用户分群找不到规律?用K-Means聚类算法自动发现数据模式
算法·机器学习·kmeans·聚类
动词ing1 小时前
【C语言】自定义函数+指针入门
c语言·开发语言·算法
重生之后端学习1 小时前
283. 移动零[简单]✅
开发语言·数据结构·算法·leetcode·职场和发展
一只小小的芙厨2 小时前
基础数论总结
笔记·学习·算法
夜不会漫长3 小时前
C++入门(1)
开发语言·c++·算法
wen_zhufeng4 小时前
IndexTTS 2.5 技术报告
人工智能·算法·机器学习
大熊背4 小时前
树莓派相机自动白平衡详解(四)
算法·树莓派·白平衡·isppipeline
一米阳光86614 小时前
软考(中级)软件设计师核心笔记(9)算法——背包问题
笔记·算法·职场发展·软考·软件设计师·中级职称
晚风醉蝶5 小时前
1-11-奇偶排序-OddEvenSort
java·数据结构·算法
旖旎夜光5 小时前
LeetCode 852:山脉数组的峰顶索引(二分查找) —— 题解
数据结构·c++·算法·leetcode·二分查找