活动地址:CSDN21天学习挑战赛
1 背景
上节学的是线性支持向量机的硬间隔最大化算法,适用于数据集是线性可分的情况,但是存在数据集不是线性可分的情况,即数据集中有样本点没有函数间隔大于1的情况,那就不能套用硬间隔最大化算法了,而软间隔最大化的提出就是旨在解决这个问题。
2 软间隔最大化算法(原始问题)
软间隔最大算法与硬间隔最大算法,相同之处是求最大函数间隔,不同之处是一个软一个硬。不免使我产生了疑惑:软了之后就对线性不可分的数据集就好使了?这个“软”如何体现呢?
硬间隔的约束条件为:
y
i
(
w
⋅
x
i
+
b
)
≥
1
y_i(w\cdot x_i+b) \ge1
yi(w⋅xi+b)≥1
这个“软”其实是一种对错误分类点的包容,如何“软”?在硬件间隔最大算法上引入一个松弛变量
ξ
\xi
ξ.
软间隔约束条件变为:
y
i
(
w
⋅
x
i
+
b
)
+
ξ
i
≥
1
y_i(w\cdot x_i+b)+\xi_i \ge1
yi(w⋅xi+b)+ξi≥1
目标函数变为:
1
2
∣
∣
w
∣
∣
2
+
C
∑
i
=
1
N
ξ
i
\frac{1}{2}||w||^2+C\sum^N_{i=1}\xi_i
21∣∣w∣∣2+Ci=1∑Nξi
解释:为了保证引入的参数不是任意松弛,这样模型的分类效果就保证不了,所以我们需要限定它,当然对模型的影响越小越好,所以将引入的每一个参数加入目标函数,C>0为惩罚参数.
C大 一点表明我们更关注的是划分的正确性,支持向量之间可以窄,但是划分错误的点要少一点。
C小一点表明我们想要的是更宽一点,允许存在划分错误的点。
C趋于无穷大就是过拟合问题,C趋于0是欠拟合问题。
其中C>0,称为惩罚参数。
综合上述,所以优化问题为:
min
w
,
b
,
ξ
i
1
2
∣
∣
w
∣
∣
2
+
C
∑
i
=
1
N
ξ
i
s
.
t
.
y
i
(
w
⋅
x
i
+
b
)
+
ξ
i
≥
1
(
ξ
i
≥
0
,
i
=
1
,
2
,
3
,
.
.
.
,
N
)
\min_{w,b,\xi_i}\frac{1}{2}||w||^2+C\sum^N_{i=1}\xi_i \\ s.t. \qquad y_i(w\cdot x_i+b)+\xi_i \ge1(\xi_i \ge0,i=1,2,3,...,N)
w,b,ξimin21∣∣w∣∣2+Ci=1∑Nξis.t.yi(w⋅xi+b)+ξi≥1(ξi≥0,i=1,2,3,...,N)
解出符合条件的
w
∗
,
b
∗
w^*,b^*
w∗,b∗就可得到:
分离超平面:
w
∗
x
+
b
∗
=
0
w^*x+b^*=0
w∗x+b∗=0
决策函数:
f
(
x
)
=
s
i
g
n
(
w
∗
x
+
b
∗
)
f(x)=sign(w^*x+b^*)
f(x)=sign(w∗x+b∗)
参考
《统计学习方法》——李航
https://blog.csdn.net/robin_Xu_shuai/article/details/77051258?