DataWhale学习笔记——支持向量机

267 阅读2分钟

回顾逻辑回归,我们知道这是一个根据类别分布来控制分类边界的分类算法,很容易发现有个问题,即异常值对分类结果的影响比较严重。所以,这里给出了支持向量机算法。

支持向量机(Support Vector Machine)以最大化分类边界和类别之间的最小距离为目标,所以它不太受异常值的影响,支持向量机的决策函数即通过决策边界进行划分。而它的损失函数相对比较复杂,一般形势下,损失函数的一部分是边界和类别之间的最小距离,另一部分是误分类的损失,我们能惊讶地发现,这个形式就等价于逻辑回归的L2正则化形式,当然它们本质上是不同的,推导的过程也是不同的,但这至少证明了一件事:决策空间是相同的。

支持向量机有几个很出彩的技巧(trick),一个是对偶化,也就是在满足KKT条件的情况下,通过拉格朗日乘数法将原来的最小化问题映射成一个最大化的最优问题,然后即可方便地进行求解。

另一个技巧是核技巧(kernel trick),也就是通过把原始数据映射到其他维度来获取非线性边界。

支持向量机是个二分类器,如果要进行多分类,可以训练多个二分类器,构成一个多分类器。

支持向量机属于传统机器学习的集大成者,它的各种思想深刻影响了其他算法,甚至在深度学习中也常常应用到支持向量机的tanh激活函数,对偶优化思想和核技巧思想。