在求对线性二分类器的最小扰动中,原文图如下。这里是二维平面,所以看图理解的时候应把样本看成有两个特征(分别沿横纵轴取值);决策超平面是一条直线wx+b=0。最小扰动向量的大小是从样本到决策超平面的距离,方向与超平面的法向量相反)
点到直线距离公式:
A
x
1
+
B
x
2
+
C
A
2
+
B
2
\frac{Ax_1+Bx_2+C}{\sqrt{A^2+B^2}}
A2+B2Ax1+Bx2+C即
w
x
+
b
∥
w
∥
2
\frac{wx+b}{\Vert{w}\Vert_2}
∥w∥2wx+b即
f
(
x
)
∥
w
∥
2
\frac{f(x)}{\Vert{w}\Vert_2}
∥w∥2f(x)
决策超平面的单位法向量(用于决定扰动的方向):
w
∥
w
∥
2
\frac{w}{\Vert{w}\Vert_2}
∥w∥2w
两者相乘,再取超平面法向量的反方向,即可得如下论文公式(3)中红框部分:
在求对非线性二分类器的最小扰动时,为什么用梯度替代决策超平面的法向量w?
为方便理解,只看样本点的某个特征,如下图,x轴对应样本某个特征,y轴对应分类结果f(x)。曲线不是超平面,而是f(x)函数。f(x)和x轴的交点
x
0
x_0
x0是决策超平面。 对于图中某个样本点x,其值为y,对应在曲线上的点(x,y),作切线(即y=wx+b,w也对应了该点处的导数(梯度
∇
f
(
x
)
\nabla{f(x)}
∇f(x))。切线与x轴交点
x
1
x_1
x1到点(x,y)垂线的距离即为
y
∥
w
∥
2
\frac{y}{\Vert{w}\Vert_2}
∥w∥2y。
这个做法和牛顿迭代法求根的第一次迭代步骤一样。论文将
x
1
x_1
x1视为对决策超平面
x
0
x_0
x0的近似,所以近似的最小扰动即为大小为
y
∥
∇
f
(
x
)
∥
2
\frac{y}{\Vert{\nabla{f(x)}}\Vert_2}
∥∇f(x)∥2y,方向与梯度相反的向量。所以才有原文伪代码中这么个写法: