支持向量机(SVM)

201 阅读1分钟

前言

SVM,英文全称为 Support Vector Machine,中文名为支持向量机,由数学家Vapnik等人早在1963年提出。在深度学习兴起之前,SVM一度风光无限,是机器学习近几十年来最为经典的,也是最受欢迎的分类方法之一。 之所以叫支持向量机,因为其核心理念是:支持向量样本会对识别的问题起关键性作用。那什么是支持向量(Support vector)呢?支持向量也就是离分类超平面(Hyper plane)最近的样本点。

线性模型

线性模型:(w,b)wTX+b=0(超平面Hyperplace,线性方程)

图片.png

线性可分(Linear Separable) 用一条直线可将圆圈和叉线性分开 有无数条直线可以将两类分开,哪一条最好?

图片.png

将平行线叉到的向量叫做支持向量(Support Voctor) 求出最大化间隔以确定最优超平面

数学描述

图片.png

SVM的基本型

图片.png 总结:SVM是最大化间隔Margin的分类算法。

非线性模型

图片.png

图片.png

SVM最精妙之处在于即使φ(x)是一个无限维,仍可求出最优化问题的解。 我们可以不知道无限维映射φ(x)的显式表达,我们只要知道一个核函数(Kernel Function) K(x1,x2)=φ(x1)Tφ(x2),则1中问题仍可解。

核函数

图片.png

原问题和对偶问题

图片.png

图片.png

优化过程

图片.png

训练流程

图片.png

测试流程

图片.png