SVM决策边界及损失函数

决策边界+SVM损失函数

回顾一下前面博客中提到的决策边界,在二维的平面上,决策边界即超平面是一条直线。
现在假设有N个样本点,每个样本点表示为(x i _i i, y i y_i yi),x i _i i是特征向量。为了便于理解,所以假设每个样本有2个特征,即对于任意一个样本i有: (x 1 i _{1i} 1i, x 2 i _{2i} 2i, y i {y_i} yi),就表示他们的两个特征值和对应的标签。
接着在二维平面上,将它们表示出来(相当于用x 2 _{2} 2来表示横坐标,x 1 _{1} 1表示纵坐标, y {y} y表示类别,图中体现为蓝色这类或红色这类),就如下图:

在这里插入图片描述
设置红色样本点标签为1,蓝色样本点标签为-1。此时,在二维平面上,找决策边界,也就是找超平面,超平面应该是一维的直线。任何一条直线都可以有如下表示:
x 1 {x_1} x1 = a x 2 {ax_2} ax2 + b {b} b
将变量都移至等号的一边:
0 = a x 2 {ax_2} ax2 - x 1 {x_1} x1 + b {b} b
转换成矩阵相乘的形式:
0 = [ a , − 1 ] \begin{bmatrix}a,-1 \\ \end{bmatrix} [a,1] * [ x 2 x 1 ] \begin{bmatrix}x_2 \\ x_1 \\ \end{bmatrix} [x2x1] + b b b
其中, [ a , − 1 ] \begin{bmatrix}a,-1 \\ \end{bmatrix} [a,1]是参数向量, [ x 2 x 1 ] \begin{bmatrix}x_2 \\ x_1 \\ \end{bmatrix} [x2x1]是特征向量;
即可写成:
0 = w T x w^Tx wTx + b b b
所以在SVM中,决策边界就可以用 w T x w^Tx wTx + b b b = 0来表示,若不给定 w w w b b b,就表示平面上的任意一条直线;若确定了 w w w b b b,也确定了唯一的 x x x的取值,就能够表示一个样本点了。
最终的目标是求解最佳的决策边界,即使得间隔最大化的决策边界,即需要求解 w w w b b b

首先,在决策边界上任取2点, x m x_m xm x n x_n xn,将其代入表达式有:
w T x m w^Tx_m wTxm + b b b = 0          ①
w T x n w^Tx_n wTxn + b b b = 0           ②
① – ②得:
w T w^T wT * ( x m − x n ) (x_m - x_n) (xmxn) = 0

补充
对于向量 a a a = [ a 1 a_1 a1, a 2 a_2 a2 a n a_n an]和向量 b b b = [ b 1 b_1 b1, b 2 b_2 b2 b n b_n bn],其点积可表示为:
a ⋅ b a·b ab = a 1 a_1 a1 b 1 b_1 b1 + a 2 a_2 a2 b 2 b_2 b2 + … + a n a_n an b n b_n bn
若用矩阵乘法且将向量看成是nX1的矩阵,还可以写成:
a ⋅ b a·b ab = a T a^T aT * b

又由两个向量点积为0可以得知两个向量互相垂直,即 w w w ( x m − x n ) (x_m - x_n) (xmxn)相互垂直。而 ( x m − x n ) (x_m - x_n) (xmxn)其方向是平行于决策边界( w T x w^Tx wTx + b b b = 0 )的,故参数向量 w w w方向与决策边界垂直
假设下方图片中绿色直线表示决策边界,则 w w w方向如图所示

在这里插入图片描述
现在,对于任意一个红色的样本点 x p x_p xp,可以表示为:

w T ⋅ x p w^T·x_p wTxp + b b b = p p p
因为该点不在决策边界上,所以p肯定不为0,又红色标签为1,所以定p>0
同理,对于任意一个蓝色的样本点 x q x_q xq,可以表示为:

w T ⋅ x q w^T·x_q wTxq + b b b = q q q
蓝色标签为-1,所以定q<0

综上所述,对于新的待测样本点 x k x_k xk,其标签可以有如下判定:

y = { 1 , w ⋅ x k + b > 0 − 1 , w ⋅ x k + b < 0 y=\left\{\begin{aligned} 1, & \text w \cdot x_{k}+b>0 \\-1, & \text w \cdot x_{k}+b<0 \end{aligned}\right. y={1,1,wxk+b>0wxk+b<0

在上一篇博客中,也提到,在决策边界的两侧有两个超平面,这里就是在我们画的这条直线两侧,分别有平行于它的两条线,这两条平行线之间的距离就是Margin。

在这里插入图片描述

这两条平行线可以这样表示:

w ⋅ x w·x wx + b b b = t t t w ⋅ x w·x wx + b b b = − t -t t
上边两个式子两边同时除以 t t t
w ⋅ x w·x wx + b b b = 1 1 1 w ⋅ x w·x wx + b b b = − 1 -1 1
若将虚线平行外移,穿过的样本点(离决策边界最近)就是支持向量
同上,令红色样本点为 x p x_p xp,蓝色为 x q x_q xq,那么有:

w ⋅ x p w·x_p wxp + b b b = 1 1 1 w ⋅ x q w·x_q wxq + b b b = − 1 -1 1

再将两式相减得到:

w w w * ( x p − x q x_p-x_q xpxq) = 2 2 2

在这里插入图片描述
我们希望求解的是Margin,即通过红色样本点 x p x_p xp和蓝色样本点 x q x_q xq构成的那个小三角形中的黑色虚线那条边,而现在三角形的斜边就是 x p − x q x_p-x_q xpxq是可以求解的。

补充
此时引入线代中模长的概念。
① 向量m除以它的模长就等于向量m方向上的单位向量,即 m ⃗ ∣ ∣ m ∣ ∣ \vec{m}\over{||m||} mm ,方向指向 m ⃗ \vec{m} m 的方向,值为1;
② 向量n乘向量m方向上的单位向量结果为向量n在向量m方向上的投影的长度。即 n ⃗ ⋅ m ⃗ ∣ ∣ m ∣ ∣ \vec{n}·\vec{m}\over{||m||} mn m ,这里的结果是一个数,因为分子相当于是一个点积,点积的结果是一个数,分母模长也是数,所以求得的结果就是投影的长度。

由上边补充的模长相关知识,可以知道我们想求解的Margin,也就是 x p x_p xp x q x_q xq组成的那个小三角的黑色虚线,也就是向量 ( x p − x q ) (x_p-x_q) (xpxq) w w w方向上的投影。所以可以写出下面的式子(将 w w w * ( x p − x q x_p-x_q xpxq) = 2 2 2两边同时除以 ∣ ∣ w ∣ ∣ ||w|| w):
Margin = w ∗ ( x p − x q ) ∣ ∣ m ∣ ∣ w*(x_p-x_q)\over{||m||} mw(xpxq) = ( x p − x q ) (x_p-x_q) (xpxq)* w ∣ ∣ w ∣ ∣ w\over{||w||} ww= 2 ∣ ∣ w ∣ ∣ 2\over||w|| w2

故:M = 2 ∣ ∣ w ∣ ∣ 2\over||w|| w2 (Margin用M代替)

我们最初的目的,是求解使得间隔最大的决策边界,问题到这一步就是求最大的M
对于M = 2 ∣ ∣ w ∣ ∣ 2\over||w|| w2最大化M(最小化 1 M 1\over M M1)就是最小化 w w w,即 w w w的最小值,即求解下边函数的最小值:

f ( w ) f(w) f(w) = ∣ ∣ w ∣ ∣ 2 2 {||w||^2}\over2 2w2 (实际上就是 1 M 1\over M M1

为什么有个平方?

因为 ∣ ∣ w ∣ ∣ ||w|| w表示的是模长,对于向量(x, y),它的模长求解公式是: x 2 + y 2 \sqrt {x^2+y^2} x2+y2 ,这是带根号的,所以为了便于计算,用平方将根号去掉。

所以,决策函数

w ⋅ x i w·x_i wxi + b b b ≥ 1,if y i y_i yi = 1
w ⋅ x i w·x_i wxi + b b b ≤ -1,if y i y_i yi = -1

可以合起来写作:

y i ( w ⋅ x i + b ) y_i(w·x_i + b) yi(wxi+b) ≥ 1, i= 1,2,3…n

SVM最初的损失函数
w w w b b b为参数, y i ( w ⋅ x i + b ) y_i(w·x_i + b) yi(wxi+b) ≥ 1, i= 1,2,3…n的条件下,求解 m i n min min ∣ ∣ w ∣ ∣ 2 2 {||w||^2}\over2 2w2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值