支持向量机
1 立体几何
1.1 向量的定义与几何表示
在数学中,我们把既有大小又有方向的量称为向量(矢量),而把只有大小没有方向的量称为数量(标量)。由于数量可以用实数表示,而实数与数轴上的点一一对应,所以数量可以用数轴上的点表示,不同点表示不同数量。有向线段 A B ⃗ \vec{AB} AB的长度可以表示向量的大小,有向线段的方向可以表示向量的方向,因此向量可以用有向线段来直观表示。一般向量的大小称为向量的模,记作 ∣ A B ⃗ ∣ |\vec{AB}| ∣AB∣。长度为0的向量称为零向量,长度为1的向量称为单位向量。
1.2 向量坐标与点坐标之间的关系
在平面直角坐标系中,设与x轴、y轴方向相同的两个单位向量分别为 i ⃗ \vec{i} i, j ⃗ \vec{j} j,则对平面内任意一个向量,由平面向量基本定理可知,有且只有一对实数 x x x, y y y,使得
a ⃗ = x i ⃗ + y j ⃗ \vec{a}=x\vec{i}+y\vec{j} a=xi+yj
这样,平面内的任意向量 a → \overrightarrow{a} a都可以用x,y唯一确定,我们把有序数对称为向量 a ⃗ \vec{a} a的坐标,记为
a ⃗ = ( x , y ) \vec{a}=(x,y) a=(x,y)
设 O A → = x i ⃗ + y j ⃗ \overrightarrow{OA}=x\vec{i}+y\vec{j} OA=xi+yj,其中O表示平面直角坐标系中的坐标原点,则向量 O A → \overrightarrow{OA} OA的坐标(x,y)就是终点A的坐标,反之,终点A的坐标就是向量 O A → \overrightarrow{OA} OA的坐标。这样就建立了向量坐标与点坐标之间的关系。
1.3 向量的模与方向
假设向量 a ⃗ T = ( x , y ) \vec{a}^T=(x,y) aT=(x,y),则向量 a ⃗ T \vec{a}^T aT的模为:
∣ ∣ a ⃗ T ∣ ∣ = x 2 + y 2 ||\vec{a}^T||=\sqrt{x^2+y^2} ∣∣aT∣∣=x2+y2
a ⃗ T \vec{a}^T aT的方向为:
z ⃗ T = ( x ∣ ∣ a ⃗ ∣ ∣ , y ∣ ∣ a ⃗ ∣ ∣ ) \vec{z}^T=(\frac{x}{||\vec{a}||},\frac{y}{||\vec{a}||}) zT=(∣∣a∣∣x,∣∣a∣∣y)
1.4 超平面定义
在几何数学中,超平面是指n维空间中一个n−1维的子空间。通常用如下方程表达:
w 1 x 1 + w 2 x 2 + ⋯ + w n x n + b = w ⃗ T x ⃗ + b = 0 w_1x_1 + w_2x_2 + \cdots + w_nx_n + b = \vec{w}^T\vec{x} + b = 0 w1x1+w2x2+⋯+wnxn+b=wTx+b=0
其中, w ⃗ T = ( w 1 , w 2 , ⋯ , w n ) \vec{w}^T=(w_1,w_2,\cdots,w_n) wT=(w1,w2,⋯,wn) 表示超平面的法向量, b b b 表示超平面偏移量, x ⃗ T = ( x 1 , x 2 , ⋯ , x n ) \vec{x}^T=(x_1,x_2,\cdots,x_n) xT=(x1,x2,⋯,xn) 表示空间中的数据点。
1.5 点与超平面的关系
点与超平面的关系有三种:点在超平面上,点在超平面正侧和点在超平面负侧。点与超平面的关系可以通过计算将点带入平面方程来确定,该值的符号可以表示点相对超平面的位置。
- 点在超平面上:如果 w ⃗ T x ⃗ + b = 0 \vec{w}^T\vec{x} + b = 0 wTx+b=0,则点 x ⃗ \vec{x} x位于超平面上。
- 点在超平面正侧:如果 w ⃗ T x ⃗ + b > 0 \vec{w}^T\vec{x} + b > 0 wTx+b>0,则点 x ⃗ \vec{x} x位于超平面法向量 w ⃗ T \vec{w}^T wT指向的一侧。
- 点在超平面负侧:如果 w ⃗ T x ⃗ + b < 0 \vec{w}^T\vec{x} + b < 0 wTx+b<0,则点 x ⃗ \vec{x} x位于超平面法向量 w ⃗ T \vec{w}^T wT指向的反方向一侧。
例 1.1 在平面直角坐标系中,假定一个 w ⃗ T = ( 0.625 , 1 ) \vec{w}^T=(0.625,1) wT=(0.625,1) 和 b = − 8.25 b=-8.25 b=−8.25 的超平面,即 0.625 x + y − 8.25 = 0 0.625x + y - 8.25 = 0 0.625x+y−8.25=0 该超平面如图 1-1 所示。
图1-1 超平面分离数据
将点 ( 2 , 7 ) (2,7) (2,7)代入直线方程,可得 0.625 × 2 + 7 − 8.25 = 0 0.625 \times 2 + 7 - 8.25 = 0 0.625×2+7−8.25=0,因此点在直线上。
将点 ( 7 , 9 ) (7,9) (7,9)代入直线方程,可得 0.625 × 7 + 9 − 8.25 = 5.125 > 0 0.625 \times 7 + 9 - 8.25 = 5.125 > 0 0.625×7+9−8.25=5.125>0,因此点在直线正侧。
将点 ( 3 , 3 ) (3,3) (3,3)代入直线方程,可得 0.625 × 3 + 3 − 8.25 = − 3.375 < 0 0.625 \times 3 + 3 - 8.25 = -3.375 < 0 0.625×3+3−8.25=−3.375<0,因此点在直线负侧。
2 最优化问题
2.1 凸集定义
如果 ∀ x 1 , x 2 ∈ A ⊂ R n \forall{\pmb{x}_1,\pmb{x}_2} \in A \subset {\mathbb{R}^n} ∀x1,x2∈A⊂Rn,并对任意的 θ ∈ [ 0 , 1 ] \theta \in [0,1] θ∈[0,1],都有
θ x 1 + ( 1 − θ ) x 2 ∈ A \theta{\pmb{x}_1} + (1-\theta)\pmb{x}_2 \in A θx1+(1−θ)x2∈A
则称集合 A A A 是凸集。
2.2 凸函数定义
设一个 n n n 元实函数 f ( x ) f(\pmb{x}) f(x), x ∈ A ⊂ R n \pmb{x}\in{A}\subset{\mathbb{R}^n} x∈A⊂Rn, A A A 是非空凸集,如果 ∀ x 1 , x 2 ∈ A \forall{\pmb{x}_1,\pmb{x}_2} \in A ∀x1,x2∈A,并对任意的 θ ∈ [ 0 , 1 ] \theta \in [0,1] θ∈[0,1],有
f ( θ x 1 + ( 1 − θ x 2 ) ) ≤ θ f ( x 1 ) + ( 1 − θ ) f ( x 2 ) f(\theta{\pmb{x}_1}+(1-\theta{\pmb{x}_2})) \leq \theta{f(\pmb{x}_1)} + (1-\theta){f(\pmb{x}_2)} f(θx