M2-040M2: Classical Machine LearningSupport Vector Machines & KernelsHard
Mastery:

Support Vector Machines & Kernels: SVM 对类别不平衡与噪声标签敏感吗?如何缓解。

📐 Mathematical Definition
class weight: Ci=C⋅wyi\text{class weight}:\ C_i=C\cdot w_{y_i}
⚡ Executive Summary
Core Concept: 敏感:少数类支持向量少、噪声点被当作支持向量。缓解:类权重、软间隔、清理噪声。

📌 Key Takeaways

  • •
    加权 C 使少数类更受重视
  • •
    SVM 不输出概率,需 Platt 校准

📐 Mathematical Derivations

敏感性的机制:① <strong>类别不平衡</strong>——SVM 的目标是最小化 Σξᵢ(所有样本的违反之和),多数类样本数多故主导目标,模型会倾向'牺牲少数类'(把少数类样本判错以换取更多多数类样本正确),导致少数类召回极低。② <strong>噪声标签</strong>——标签错误的样本若位于决策边界附近,会成为<strong>支持向量</strong>并直接扭曲边界(因为 SVM 只由支持向量决定);尤其当噪声样本被强制正确分类时(硬间隔或大 C),边界会被严重拉扯。③ <strong>类别重叠</strong>——当两类在特征空间高度重叠时,SVM 的线性边界(或核诱导的平滑边界)无法很好分离,性能受限。

🏭 Production Trade-offs

缓解手段:① <strong>类权重</strong>——把 C 改为 Cᵢ=C·w_{yᵢ},少数类用更大权重(如 w∝1/类别频率),使目标平衡;sklearn 的 <code>class_weight='balanced'</code> 自动按频率倒数加权。② <strong>软间隔与调小 C</strong>——允许更多违反,避免被噪声样本拉扯;C 越小对噪声越鲁棒(但可能欠拟合)。③ <strong>核选择</strong>——RBF 核的局部性使其对远离边界的噪声较鲁棒,但对边界附近的噪声仍敏感。④ <strong>数据层面</strong>——清理噪声标签(用交叉验证检测)、过采样少数类(SMOTE)、欠采样多数类(注意在 CV 折内做,防泄漏)。⑤ <strong>概率输出与阈值调整</strong>——SVM 默认输出决策值而非概率,若需按业务调整阈值(如召回优先),需先用 Platt scaling 或 isotonic regression 在验证集上校准,再按代价矩阵选阈值。⑥ <strong>替代方案</strong>——不平衡 + 噪声场景下,集成方法(RF/GBDT 配 class_weight 或 Focal loss)通常比 SVM 更易调优。
⚠️ Common Interview Pitfalls
  • ✕
    用硬间隔或不调 C 处理噪声标签
  • ✕
    不做校准就把 SVM 决策值当概率使用
🎯 Interviewer Follow-ups
  • ?
    SVM 如何输出概率?(Platt scaling)
  • ?
    为什么 SVM 对重叠类效果一般?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM2-039: Support Vector Machines & Kernels: 比较 RBF 核、多项式核与线性核的适用场景。📋Back to BankNext →M2-041: Naive Bayes: 写出朴素贝叶斯的分类决策式,并说明'朴素'指什么。