🏟️
体育老师李教练的难题
体育课上,红队和蓝队在操场上散开站着。李教练要在两组之间画一条分界线,让两边都有最大的安全空间。
怎么画才最公平呢?
如果线离某队太近,那队就不安全。SVM(支持向量机)就是找这条
"最公平分界线"的算法——它让两队离线最近的队员都尽量远,也就是
最大化间隔!让我们一步步来探究吧。
阶段1:画一条分界线 — "初试身手"
💡 核心思想:用一条直线把红队和蓝队分开!拖动两端的圆点来调整分界线,看看你的线能把多少队员分对边。
🖱️ 操作:用鼠标拖动线两端的蓝色和红色圆点来移动分界线。
🖱️ 动手试试:拖动分界线两端的圆点,观察正确率的变化!正确分类的点会变亮,错误的会变暗。
正确率:0% | 正确:0 / 0
📝 本阶段要点
- 线性分类器用一条直线(或超平面)把不同类别分开
- 能分开两类的直线通常不止一条,但有好坏之分
- "好的分界线"应该让两边都有足够的安全空间
- 正确率只看分类对错,不关心间隔大小
阶段2:找最宽走廊 — "最宽安全通道"
💡 核心思想:SVM 的核心是最大化间隔!分界线两侧有两条平行的"间隔边界线",形成一个走廊。
🖱️ 操作:拖动滑块调整分界线的角度和位置,观察走廊宽度的变化。点击"自动找最优"看 SVM 怎么找到最宽的走廊!
📐 观察提示:黄色区域就是"安全走廊"(间隔)。走廊越宽,分类越安全!点击"自动找最优"让 SVM 帮你找到最宽的走廊。
间隔宽度:0.00 | 状态:手动调整中
📝 本阶段要点
- SVM 的核心目标:最大化间隔(margin),也就是找最宽的"安全走廊"
- 间隔 = 两类中离分界线最近的点到分界线的距离之和
- 间隔越大,分类越稳健,对新数据的容错能力越强
- 最宽走廊的方向由离分界线最近的几个点决定
阶段3:认识支持向量 — "关键选手"
💡 核心思想:恰好落在间隔边界上的点就是支持向量!它们是"关键选手",决定了分界线的位置。
🖱️ 操作:开启拖动模式后,拖动普通点(分界线不变)或支持向量(分界线跟着变),观察区别!
⭐ 观察:闪烁的大圆圈就是支持向量!开启拖动模式后试试:拖一个普通点,分界线不动;拖一个支持向量,分界线会跟着变!
支持向量数量:0 | 间隔宽度:0.00
📝 本阶段要点
- 支持向量 = 恰好落在间隔边界上的点(离分界线最近的点)
- 支持向量"支撑"着分界线,决定了分界线的位置和方向
- 删除非支持向量,分界线不变;移动支持向量,分界线跟着变
- 大多数数据点对分界线没有影响,只有少数支持向量是关键
阶段4:真实应用 — "SVM实战"
💡 应用目标:SVM 能解决很多实际问题!选择一个场景体验真实的分类过程。
前两个场景用线性 SVM;第三个场景的数据用直线分不开,试试核函数的魔法!
📊 操作:点击"自动找最优"让 SVM 找到最佳分界线。圆形数据场景中,试试"核函数视图",看数据如何被映射到 3D 空间变得可分!
场景:鸢尾花分类 | 间隔:0.00
🤔 动动脑筋
2. 开放题:SVM 和逻辑回归都是分类算法,它们有什么区别?
📝 本阶段要点
- SVM 可应用于多种真实场景:生物分类、成绩分析、图像识别等
- 当数据线性不可分时,核函数将数据映射到高维空间使其可分
- 常用核函数:线性核、多项式核、高斯核(RBF)
- SVM 最大化间隔,逻辑回归最小化对数损失,两者思路不同
- SVM 在小样本、高维数据上表现优秀