第6章 支持向量机
在深度学习大一统之前,支持向量机是热门领域!
间隔与支持向量机
支持向量机的基本思想:对于线性可分的数据集,找到唯一的超平面,使得支持向量到这个超平面的距离之和最小。
(资料图片)
支持向量就是下图中被圈起来的样本点,它们是距离超平面最近的几个样本点。图中的就是间隔。
最大化间隔,也就是最小化。
对于给定的数据集X和超平面定义数据集X关于超平面的几何间隔为:数据集X中所有样本点的几何间隔最小值。
对偶问题
为了求解支持向量机,用拉格朗日乘子法可以得到它的对偶问题。(具体推导还不太懂,先跳过)反正就是,它的对偶函数恒为凹函数,加负号就是凸函数了,然后就可以用凸优化方法求解了。(求解过程也好难,跳过~)
核函数
核函数隐式地定义了高维特征空间。
这一节告诉我们,当样本的特征空间是有限维的时候,一定能找到能将他们完全分开的高维特征空间(比特征的维度高)。也就是说,实际问题都能找到高维特征空间的超平面。不过!(接下节)
软间隔与正则化
不过!实际问题经常出现异常值。毕竟我们研究问题不可能把所有的因素都考虑到。所以映射到高维空间容易出现过拟合的情况。
于是!出现了软间隔!软间隔就是把超平面立体化了,把超平面在法向量方向上变厚了。前述的SVM基本型可以看作是软间隔时的特殊情况。
有软间隔的SVM要增加损失函数了。落在立体超平面内的样本,统统是好样本,不算损失。但是落在立体超平面外的样本就要计算损失了。常用的损失函数有hinge损失、指数损失和对率损失。
求解方法也是求解对偶问题的拉格朗日乘子法。(梦回学高数的时候,跳过!)
支持向量回归
和软间隔原理差不多,都是可以在指定范围内犯错。最后也都要用拉格朗日乘子法求解。(拉格朗日饶了我吧)
跳过