详解支持向量机(SVM)算法与代码实现

支持向量机(SVM)算法与代码实现

  • 约束优化问题
  • 硬间隔 SVM
  • 软间隔 SVM
  • 核方法介绍
  • SVM代码实现
    • 自编函数实现
    • sklearn.svm.SVC
  • 小结

支持向量机(SVM)算法在分类问题中有着重要地位,其主要思想是最大化两类之间的间隔。按照数据集的特点:

  1. 线性可分问题,如之前的感知机算法处理的问题
  2. 线性可分,只有一点点错误点,如感知机算法发展出来的 Pocket 算法处理的问题
  3. 非线性问题,完全不可分,如在感知机问题发展出来的多层感知机和深度学习

这三种情况对于 SVM 分别有下面三种处理手段:

  1. 硬间隔 SVM
  2. 软间隔 SVM
  3. 核方法 Method

SVM 的求解中,大量用到了 Lagrange 乘子法,首先对这种方法进行介绍。

约束优化问题

一般地,约束优化问题(原问题)可以写成:

你可能感兴趣的:(统计学,机器学习,机器学习,svm,python,支持向量机,算法)