SVM的直观理解
支持向量机(Support Vector Machine)是机器学习中用于分类和回归任务的强大算法。其核心思想是在不同类别数据点之间找到最优分隔超平面,使两类间隔(margin)最大化。
线性可分与最大间隔
对于线性可分数据集,SVM 的目标是找到满足所有样本正确分类且间隔最大的超平面。最近的样本称为「支撑向量」,它们唯一决定决策边界。优化目标为:min (1/2)||w||²,约束 y_i(w·x_i + b) ≥ 1。
软间隔与正则化参数 C
通过引入松弛变量和惩罚项,允许部分样本出现在间隔内部甚至被错分。参数 C 控制模型对错分样本的惩罚力度。
核技巧:从线性到非线性
通过非线性映射将数据投影到高维空间。常用核函数包括高斯核 K(x,y) = exp(-γ||x-y||²)、多项式核和 Sigmoid核。
SMO算法
序列最小优化算法是训练 SVM 最常用的选择。SMO 通过启发式选择两个变量进行迭代优化。
工程实践要点
- 特征缩放是必须的
- 超参数调优:使用网格搜索或贝叶斯优化
- 大规模数据:使用随机梯度下降 SVM 或核近似
结语
SVM 的优雅在于对偶性、稀疏性和核技巧的统一——这三个特性使其成为机器学习理论的重要组成部分。

发表评论 取消回复