文章目录
1.什么是SVM
SVM支持向量机,号称机器学习的拦路虎。江湖传言,遇到了他,机器学习就会从入门到放弃。另一方面也就是说,只要搞定了SVM,后面的算法模型学起来都是小意思。
由于SVM较复杂,我分两篇来进行阐述,本篇仅介绍SVM的基本概念。
先看下官方定义:
支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷,以期获得最好的泛化能力。
VC 维,结构风险,有限样本,模型复杂性,最佳折衷,泛化能力,这一切……真是让人摸不着头脑……
行了,文绉绉的理论从来看不懂,我们还是从算法看起吧。
SVM一般用于解决二分类问题(也可以解决多分类和回归问题,本文暂不涉及),数学化语言概述如下:
样本数据:n个样本,p个输入 ( x 1 , . . . , x p ) (x_{1},...,x_{p}) (x1,...,xp) ,1个输出y
第i个样本的输入: X i = ( x i 1 , x i 2 , . . . , x i p ) T , i = 1 , 2 , . . . n X_{i}=(x_{i1},x_{i2},...,x_{ip})^{T}, i=1,2,...n Xi=(xi1,xi2,...,xip)T,i=1,2,...n
输出y:一般用1和-1作为两类样本的标签
训练样本集D:
训练目的:以训练样本为研究对象,在样本的特征空间中找到一个超平面 W T X + b = 0 W^{T}X+b=0 WTX+b=0,将两类样本(+1和-1)有效分开,其中 W = ( w 1 , w 2 , . . . , w p ) T W=(w_{1},w_{2},...,w_{p})^{T} W=(w1,w2,...,wp)T
然而,这些个公式……更是看的云里雾里……
没关系,抽象的数学语言难以理解,我们就从直观的图形和例子开始,抽丝剥茧一点点学。