知乎用户@顾凌峰
使用的hinge损失函数来表示对于样本的分类偏差,
l
o
s
s
=
m
a
x
(
0
,
1
−
y
(
w
T
x
+
b
)
)
loss=max(0,1-y(w^Tx+b))
loss=max(0,1−y(wTx+b)),引入松弛变量把优化问题写为:
min
w
,
b
,
ξ
1
2
∥
w
∥
2
+
C
∑
i
=
1
n
ξ
i
s
.
t
.
y
i
(
w
T
x
i
+
b
)
⩾
1
−
ξ
i
ξ
i
⩾
0
i
=
1
,
2
,
⋯
,
N
\begin{aligned} \min_{w,b,\xi} \quad & \frac{1}{2}\parallel w \parallel^2 + C\sum_{i=1}^n \xi_i \\ s.t. \quad &y_i(w^Tx_i+b) \geqslant 1-\xi_i\\ \quad &\xi_i \geqslant 0\\ \quad & i=1,2,\cdots,N \end{aligned}
w,b,ξmins.t.21∥w∥2+Ci=1∑nξiyi(wTxi+b)⩾1−ξiξi⩾0i=1,2,⋯,N
这里的 ξ i \xi_i ξi 就是对于第 i i i个样本点的分类损失,如果分类正确则是0,如果分类有所偏差则对应一个线性的值, ∑ i = 1 n ξ i \sum_{i=1}^n \xi_i ∑i=1nξi是总误差,我们优化的目标当然是这个值越小越好,越小代表对训练集的分类越精准。目标函数中的另一项 ∥ w ∥ 2 \parallel w \parallel^2 ∥w∥2(常数1/2是为了方便求导加上去的)的最小化的优化方向则是使间隔大小 1 ∥ w ∥ \frac{1}{\parallel w \parallel} ∥w∥1最大。
原则上C可以根据需要选择所有大于0的数。C越大表示整个优化过程中对于总误差 ∑ i = 1 n ξ i \sum_{i=1}^n \xi_i ∑i=1nξi的关注程度越高,对于减小误差的要求越高,甚至不惜使间隔减小。
- 当C趋于无穷大时,这个问题也就是不允许出现分类误差的样本存在,那这就是一个hard-margin SVM问题
- 当C趋于0时,我们不再关注分类是否正确,只要求间隔越大越好,那么我们将无法得到有意义的解且算法不会收敛
作者:顾凌峰
链接:https://www.zhihu.com/question/40217487/answer/85530960
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
参考:https://www.zhihu.com/question/40217487?sort=created
从优化的角度:
我们只关注原问题,因为原问题比对偶问题更直观一些。并且把约束条件直接放到目标函数中,即min w , b 1 2 ∥ w ∥ 2 + C ∑ i = 1 n l [ y i ( w T x i + b ) − 1 ] \min_{w,b} \frac{1}{2}\parallel w \parallel^2 + C\sum_{i=1}^n l[y_i(w^Tx_i+b)-1] w,bmin21∥w∥2+Ci=1∑nl[yi(wTxi+b)−1]
这里的
l
(
⋅
)
l(\cdot)
l(⋅)是一个损失函数loss function,表示不满足hard margin时造成的损失,最常见的就是hinge loss,即
l
(
z
)
=
m
a
x
(
0
,
1
−
z
)
l(z)=max(0,1-z)
l(z)=max(0,1−z)。
C
>
0
C>0
C>0可以认为是一个罚参数,表示对后面一项的惩罚程度。理解这种问题的一个通用思路就是试试看在极端值会发生什么。
- 当C=0时, C ∑ i l [ y i ( w T x i + b ) − 1 ] C\sum_i l[y_i(w^Tx_i+b)-1] C∑il[yi(wTxi+b)−1]直接忽略,也就是说不论分离超平面位置在哪里,都不会对目标函数造成损失,问题就变为 min 1 2 ∥ w ∥ 2 \min \frac{1}{2}\parallel w \parallel^2 min21∥w∥2,那么他的解就是 w = 0 w=0 w=0
- 当C=inf(无穷大)时,损失函数即使只增加一点点,都会导致目标函数值变为正无穷,也就硬性要求 l [ y i ( w T x i + b ) − 1 ] l[y_i(w^Tx_i+b)-1] l[yi(wTxi+b)−1],此时问题等价于hard margin,如果线性不可分,也就无可行解了。
- 如果不这么极端,C只是充分大,那么就要求loss function尽可能的小,即尽最大可能满足hard margin约束,这就会导致过拟合。
作者:Zhang Yao
链接:https://www.zhihu.com/question/40217487/answer/93344182
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
C是调节间隔与准确率的因子,C值越大,越不愿放弃那些离群点;c值越小,越不重视那些离群点。
-
当C趋于无穷大时,这个问题也就是不允许出现分类误差的样本存在,那这就是一个hard-margin SVM问题(过拟合)
-
当C趋于0时,我们不再关注分类是否正确,只要求间隔越大越好,那么我们将无法得到有意义的解且算法不会收敛。(欠拟合)