引言
前面的文章对深度学习、感知机、最小二乘法、极大似然估计法等概念有一个新的理解。SVM作为最主流的机器学习方法之一,即使是在当前机器学习教育中也占有重要地位。因此,接下来我们将深入探讨SVM与其他机器学习方法之间的关系。
SVM的本质及与其它模型的比较
1. SVM简介
SVM是很多课程和教材绕不过的内容。在前面的文章里,我主要讲解了神经网络相关知识,这次主要讲SVM的内容。机器学习虽然庞大,但不同方法之间存在许多相通之处,因此我也计划将它们拿来横向对比。
2. SVM与感知机的关系
第一个要讨论的是SVM本身,我会将其与之前学过的感知机进行比较,看看两者之间到底有什么关系。此外,我们还将从VC维的角度去解释为什么正则化可以减少过拟合。SVM和感知机都可以用直线解决分类问题,并且都有升级的方法来应对更复杂的非线性可分的情况。
3. SMO算法与梯度下降法的区别
训练神经网络通常使用的是梯度下降法,而训练SVM用到的是SMO算法。当一个问题不是线性可分时,神经网络可以通过增加隐藏层来解决,这部分是我学习SVM时最想了解的重点。
损失函数与现实意义

损失函数不仅仅是比较两个函数,更在于为度量赋予现实意义。只有基于现实经验,才能进行有意义的比较。例如,在最小二乘法中,我们假设噪声大多为高斯分布,从而利用这一经验进行处理。如果放宽这一假设,最小二乘法便扩展成了最大似然估计;进一步考虑先验概率,则变成最大后验估计。而SVM则是从几何角度出发,利用我们在几何上的直觉和经验,决定猜测的函数是否与目标函数一致。
分类器的目标函数

对于二分类问题,机器学习的根本目标是找到一个能够正确区分两类数据的函数。然而,尽管可以在训练集内使预测函数与目标函数完全一致,但这并不保证在未见过的数据上也能达到相同的效果。机器学习的终极目标是让预测函数在全局范围内尽可能地与目标函数一致。
线性分类器的差异
画出用于分类的直线位置可能会有所不同,即使使用相同的感知机模型和训练集数据,只要选择的损失函数不同,最后找到的直线就可能不同。比如用最小二乘法或最大似然估计法做损失函数,找到的直线就会有差异。
几何距离与约束条件
















SVM通过对模型函数输出进行修正,使得修正后的结果具有几何距离的具体意义。然后根据我们对现实意义的理解做出一些假设。例如,在最小二乘法中,我们假设噪声大多为高斯分布,从而利用这一经验进行处理。当放松这一假设时,最小二乘法便扩展成了最大似然估计。SVM则是通过确保所有误分类点的距离之和尽可能小,统一考虑这两项以优化模型。同时,约束条件也发生了一些变化,从要求所有数据必须正确分类放宽到了允许一定比例的数据出错。
对比带来的思考





通过将SVM与深度学习进行对比,我们可以突破自己的思考惯性和知识舒适区,从更高的维度去了解机器学习的本质。我认为这样的对比不仅加深了我对机器学习的理解,还让我意识到可以追问哪些问题。例如,之前只关注深度学习方面,一看到模型函数f(X)=WX+b,就觉得这是一个超平面,根本不会去想这其实是在空间中设立了一个锚点,然后对空间中所有数据x完成度量。更不会去想所谓的不同的损失函数其实就是换着各种方式给x的度量赋予现实意义,而我们判断与最终目标的差距就是建立在这个现实意义上。
以上是基于王木头视频内容整理而成的博客。