点到超平面距离
在支持向量机的推导中,我们介绍了式(6-2)
w和b就可以确定确定一个超平面,我们就将由w和b确定的该超平面记为(w,b),任意点x到超平面(w,b)的距离为
r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ (6-2) r=\frac{\lvert w^Tx+b \rvert}{\mid \mid w\mid\mid} \tag{6-2} r=∣∣w∣∣∣wTx+b∣(6-2)
这里给出证明
对于任一点
x
0
=
(
x
1
0
,
x
2
0
,
.
.
.
,
x
n
0
)
T
x_0=(x_1^0,x_2^0,...,x_n^0)^T
x0=(x10,x20,...,xn0)T,设其在超平面
w
T
x
+
b
=
0
w^Tx+b=0
wTx+b=0上的投影点(即从
x
0
x_0
x0做一条垂直于该超平面的直接与超平面的交叉点)为
x
1
=
(
x
1
1
,
x
2
1
,
.
.
.
,
x
n
1
)
T
x_1=(x_1^1,x_2^1,...,x_n^1)^T
x1=(x11,x21,...,xn1)T,则
w
T
x
1
+
b
=
0
w^Tx_1+b=0
wTx1+b=0(因为
x
1
x_1
x1在该超平面上),且向量
x
1
x
0
⃗
\vec{x_1x_0}
x1x0与超平面的法向量平行(即
x
1
x
0
⃗
\vec{x_1x_0}
x1x0 \\
w
w
w)
∣
w
⋅
x
1
x
0
⃗
∣
=
∣
∣
∣
w
∣
∣
⋅
c
o
s
π
⋅
∣
∣
x
1
x
0
⃗
∣
∣
∣
=
∣
∣
∣
w
∣
∣
⋅
∣
∣
x
1
x
0
⃗
∣
∣
∣
(1)
\mid w\cdot \vec{x_1x_0}\mid=\mid\mid \mid w\mid \mid \cdot cos\pi \cdot \mid \mid\vec{x_1x_0} \mid \mid \mid=\mid\mid \mid w\mid \mid\cdot \mid \mid\vec{x_1x_0} \mid \mid \mid \tag{1}
∣w⋅x1x0∣=∣∣∣w∣∣⋅cosπ⋅∣∣x1x0∣∣∣=∣∣∣w∣∣⋅∣∣x1x0∣∣∣(1)
而这里的
∣
∣
x
1
x
0
⃗
∣
∣
\mid \mid \vec{x_1x_0} \mid \mid
∣∣x1x0∣∣正是我们想要的,我们将其记为r
式(1)可变为
∣
w
⋅
x
1
x
0
⃗
∣
=
∣
∣
w
∣
∣
⋅
∣
∣
x
1
x
0
⃗
∣
∣
=
∣
∣
w
∣
∣
⋅
r
(2)
\mid w\cdot \vec{x_1x_0}\mid= \mid \mid w\mid \mid\cdot \mid \mid\vec{x_1x_0} \mid \mid=\mid \mid w\mid \mid\cdot r \tag{2}
∣w⋅x1x0∣=∣∣w∣∣⋅∣∣x1x0∣∣=∣∣w∣∣⋅r(2)
我们可以用向量的方式求
w
⋅
x
1
x
0
⃗
w\cdot \vec{x_1x_0}
w⋅x1x0,
w
⋅
x
1
x
0
⃗
=
(
w
1
,
w
2
,
.
.
.
,
w
n
)
⋅
(
x
1
0
−
x
1
1
,
x
2
0
−
x
2
1
,
.
.
.
,
x
n
0
−
x
n
1
)
=
w
1
(
x
1
0
−
x
1
1
)
+
w
2
(
x
2
0
−
x
2
1
)
+
.
.
.
+
w
n
(
x
n
0
−
x
n
1
)
=
w
1
x
1
0
+
w
2
x
2
0
+
.
.
.
+
w
n
x
n
0
−
(
w
1
x
1
1
+
w
2
x
2
1
+
.
.
.
+
w
n
x
n
1
)
=
w
T
x
0
−
w
T
x
1
=
w
T
x
0
+
b
(3)
\begin{aligned} w\cdot \vec{x_1x_0}&= (w_1,w_2,...,w_n)\cdot (x_1^0-x_1^1,x_2^0-x_2^1,...,x_n^0-x_n^1)\\ &=w_1(x_1^0-x_1^1)+w_2(x_2^0-x_2^1)+...+w_n(x_n^0-x_n^1)\\ &=w_1x_1^0+w_2x_2^0+...+w_nx_n^0-(w_1x_1^1+w_2x_2^1+...+w_nx_n^1)\\ &=w^Tx_0-w^Tx_1\\ &=w^Tx_0+b \tag{3} \end{aligned}
w⋅x1x0=(w1,w2,...,wn)⋅(x10−x11,x20−x21,...,xn0−xn1)=w1(x10−x11)+w2(x20−x21)+...+wn(xn0−xn1)=w1x10+w2x20+...+wnxn0−(w1x11+w2x21+...+wnxn1)=wTx0−wTx1=wTx0+b(3)
将式(3)带入式(2)即可求得r,即点到直线的距离
∣
w
⋅
x
1
x
0
⃗
∣
=
∣
∣
w
∣
∣
⋅
r
r
=
∣
w
T
x
0
+
b
∣
∣
∣
w
∣
∣
(4)
\begin{aligned} \mid w\cdot \vec{x_1x_0}\mid&=\mid \mid w\mid \mid\cdot r\\ r&=\frac{\mid w^Tx_0+b\mid}{\mid \mid w\mid \mid} \tag{4} \end{aligned}
∣w⋅x1x0∣r=∣∣w∣∣⋅r=∣∣w∣∣∣wTx0+b∣(4)