一、支持向量机(SVM)
主要思想:找一个超平面,使其尽可能多地将两类数据点分开,还要使得分开的数据点距分类面尽可能地远.
1. 线性可分的支持向量机
设有一组观测样本: D = { ( x i , y i ) ∣ i = 1 , 2 , ⋯ , n , x i ∈ X ⊆ R m , y i ∈ { 1 , − 1 } } \small D=\lbrace (x_i,y_i)|\,i=1,2,\cdots,n,x_i\in X\subseteq R^m,y_i\in \lbrace1,-1\rbrace \rbrace D={
(xi,yi)∣i=1,2,⋯,n,xi∈X⊆Rm,yi∈{
1,−1}}. 根据标签 y i y_i yi 将其分为两类: D 1 = { ( x i , y i ) ∣ y i = 1 } , D 2 = { ( x i , y i ) ∣ y i = − 1 } . \small D_1=\lbrace(x_i,y_i) |\,y_i=1\rbrace,D_2=\lbrace(x_i,y_i) |\, y_i=-1\rbrace. D1={
(xi,yi)∣yi=1},D2={
(xi,yi)∣yi=−1}.
已知 D 1 , D 2 \small D_1,D_2 D1,D2 线性可分,即存在一个超平面能够将两类点完全分隔开. 然后寻找这样的一个超平面 w T x + b = 0 w^Tx+b=0 wTx+b=0 (其中 w w w 表示超平面的法向量),不仅能够满足分隔条件,而且能够使分开的数据点距超平面尽可能地远. 该问题可以表示为优化问题,数学描述如下: m a x ρ s . t . { w T x i + b ≥ l , x i ∈ D 1 w T x i + b ≤ − l , x i ∈ D 2 \begin{aligned}&max\;\rho\\ &s.t. \begin{cases} w^Tx_i+b\geq l, & x_i \in D_1\\ w^Tx_i+b\leq -l, & x_i \in D_2 \end{cases}\end{aligned} maxρs.t.{
wTxi+b≥l,wTxi+b≤−l,xi∈D1xi∈D2其中 w T x i + b = l , w T x i + b = − l ( l > 0 ) w^Tx_i+b= l,w^Tx_i+b= -l(l>0) wTxi+b=l,w<