机器学习:SVM(支持向量机)原理推导

据说SVM是机器学习的分水岭,翻过这座大山机器学习就在眼前。本篇将详细介绍SVM的原理推导过程,包括线性、近线性、非线性、优化方法等,大量思想都源自于《统计学习方法》和刘顺祥《零基础入门python数据挖掘与分析》。

首先我们介绍数学中的距离公式
机器学习:SVM(支持向量机)原理推导_第1张图片
d 表示 二位空间的一个点到直线 Ax+By+C=0的距离。

一、线性可分的SVM

引申出函数间隔的概念
此概念是所有SVM推导的核心,我们用式子表示:
机器学习:SVM(支持向量机)原理推导_第2张图片
此时我们的函数间隔就和距离公式的距离是一样的形式了。
此时的γ具有几何意义,故城几何间隔。

机器学习的关键我认为是构造目标函数,目标函数直接决定了模型的性质。

构造目标函数

这里我们稍微讲一下SVM的核心思路,我们找到一个最大限度区分样本的超平面。说的非常宽泛无数学含义,我们可以举个例子,比如印度贫富差距大,但贫富的分布是和地理有关系的,假设某一地区可以用一条线把富人区和贫民区完全且完美的分割开来,线是没有面积的,但是我们希望这条线尽可能的宽,越宽我们分的越清晰,甚至我们可以贴着样本划线取得最宽分割带(超平面)。比如挖一条河河越宽两岸的分界线就越明显,分析预测就越可靠。放到上面就是我们要求最大的几何间隔γ,并且我们所有点都必须在超平面之外,即所有样本点到超平面的距离都必须大于最大几何间隔γ。
机器学习:SVM(支持向量机)原理推导_第3张图片
这就转化为一个凸二次规划的问题,普遍存在于机器学习问题。所以要掌握。

拉格朗日乘数法:

首先看一下拉格朗日乘数发的形式:
机器学习:SVM(支持向量机)原理推导_第4张图片
由于限制条件是个等式,在最优化的时候会好求的多,如果所有的解都不能满足以上条件,则代表α只能在边界取得最优化值,带入多个边界值,比较最优解。
这种算法非常繁琐,于是延伸出一种非常好用的算法SMO算法。

你可能感兴趣的:(机器学习)