- 拉格朗日的原始问题是 m i n w , b m a x λ L min_{w,b} max_{\lambda} L minw,bmaxλL
- 对偶问题是 m a x λ m i n w , b L max_{\lambda} min_{w,b}L maxλminw,bL
原问题 | 拉格朗日 | 对偶问题 | 分界面 | 最终参数 | |
---|---|---|---|---|---|
hard margin | m i n w 1 2 ∥ w ∥ 2 min_w \frac{1}{2}\|w\|^2 minw21∥w∥2约束 y i ( w T x i ) > = 1 , 对 任 意 i y^i(w^Tx^i)>=1,对任意i yi(wTxi)>=1,对任意i | L ( λ i , w , b ) = Σ i = 1 N λ i ( 1 − y i ( w T x i + b ) ) + + 1 2 ∥ w ∥ 2 L(\lambda_i,w,b)=\Sigma_{i=1}^N\lambda_i(1-y^i(w^Tx^i+b))_++\frac{1}{2} \|w\|^2 L(λi,w,b)=Σi=1Nλi(1−yi(wTxi+b))++21∥w∥2 | m a x λ θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j max_\lambda \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j maxλθD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj约束: λ i > = 0 ; Σ i = 1 n λ i y i = 0 \lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0 λi>=0;Σi=1nλiyi=0 | b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j=0 b∗+Σi=1nλi∗yi(xi)Txj=0 | w ∗ = Σ i = 1 n λ i ∗ y i x i ; b ∗ = y j − Σ i = 1 n λ i ∗ y i ( x i ) T x j w*=\Sigma_{i=1}^n \lambda_i*y^ix^i;b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j w∗=Σi=1nλi∗yixi;b∗=yj−Σi=1nλi∗yi(xi)Txj |
soft | m i n w 1 2 ∥ w ∥ 2 + C Σ i = 1 n ξ i min_w \frac{1}{2}\|w\|^2+C\Sigma_{i=1}^n\xi_i minw21∥w∥2+CΣi=1nξi约束 y i ( w T x i ) > = 1 − ξ i , ξ i ≥ 0 , 对 任 意 i y^i(w^Tx^i)>=1-\xi_i,\xi_i \geq 0,对任意i yi(wTxi)>=1−ξi,ξi≥0,对任意i | L ( λ i , η i , ξ , w , b ) = Σ i = 1 N λ i ( 1 − y i ( w T x i + b ) − ξ i ) − Σ i = 1 n η i ξ i + 1 2 ∥ w ∥ 2 L(\lambda_i,\eta_i,\xi,w,b)=\Sigma_{i=1}^N\lambda_i(1-y^i(w^Tx^i+b)-\xi_i)-\Sigma_{i=1}^n\eta_i \xi_i+\frac{1}{2} \|w\|^2 L(λi,ηi,ξ,w,b)=Σi=1Nλi(1−yi(wTxi+b)−ξi)−Σi=1nηiξi+21∥w∥2 | m a x λ θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j max_\lambda \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j maxλθD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj 约束: 0 ≤ λ i ≤ C = λ i + η i ( η i > = 0 ) ; Σ i = 1 n λ i y i = 0 0 \leq \lambda_i\leq C=\lambda_i+\eta_i(\eta_i>=0);\Sigma_{i=1}^n\lambda_iy^i=0 0≤λi≤C=λi+ηi(ηi>=0);Σi=1nλiyi=0 | b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j=0 b∗+Σi=1nλi∗yi(xi)Txj=0 | w ∗ = Σ i = 1 n λ i ∗ y i x i ; b ∗ = y j − Σ i = 1 n λ i ∗ y i ( x i ) T x j w*=\Sigma_{i=1}^n \lambda_i*y^ix^i;b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j w∗=Σi=1nλi∗yixi;b∗=yj−Σi=1nλi∗yi(xi)Txj |
kernel | - | - | θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j K ( x i , x j ) \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_jK(x^i,x^j) θD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλjK(xi,xj)约束: λ i > = 0 ; Σ i = 1 n λ i y i = 0 \lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0 λi>=0;Σi=1nλiyi=0 | w ∗ = Σ i = 1 n λ i ∗ y i x i b ∗ = y j − Σ i = 1 n λ i ∗ y i K ( x i , x j ) w*=\Sigma_{i=1}^n \lambda_i*y^ix^i\\b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i K(x^i,x^j) w∗=Σi=1nλi∗yixib∗=yj−Σi=1nλi∗yiK(xi,xj) |
hard margin
- 原问题
- m i n w 1 2 ∣ ∣ w ∣ ∣ 2 min_w \frac{1}{2}||w||^2 minw21∣∣w∣∣2
- 约束 y i ( w T x i ) > = 1 , 对 任 意 i y^i(w^Tx^i)>=1,对任意i yi(wTxi)>=1,对任意i
- 拉格朗日:
- L ( λ i , w , b ) = Σ i = 1 N λ i ( 1 − y i ( w T x i + b ) ) + + 1 2 ∣ ∣ w ∣ ∣ 2 L(\lambda_i,w,b)=\Sigma_{i=1}^N\lambda_i(1-y^i(w^Tx^i+b))_++\frac{1}{2} ||w||^2 L(λi,w,b)=Σi=1Nλi(1−yi(wTxi+b))++21∣∣w∣∣2(拉格朗日问题)
- 损失函数
- Σ i = 1 N i ( 1 − y i ( w T x i + b ) ) + + λ ∣ ∣ w ∣ ∣ 2 \Sigma_{i=1}^Ni(1-y^i(w^Tx^i+b))_++\lambda||w||^2 Σi=1Ni(1−yi(wTxi+b))++λ∣∣w∣∣2
- 目标函数(hinge loss function)
- ( 1 − y i ( w T x i + b ) ) + (1-y^i(w^Tx^i+b))_+ (1−yi(wTxi+b))+
- 得到对偶形式:
- θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j θD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj
- 约束: λ i > = 0 ; Σ i = 1 n λ i y i = 0 \lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0 λi>=0;Σi=1nλiyi=0
- 时间复杂度 O ( N 3 ) O(N^3) O(N3)
- 空间复杂度 O ( N 2 ) O(N^2) O(N2)
- 最终结果
- w ∗ = Σ i = 1 n λ i ∗ y i x i w*=\Sigma_{i=1}^n \lambda_i*y^ix^i w∗=Σi=1nλi∗yixi
- b ∗ = y j − Σ i = 1 n λ i ∗ y i ( x i ) T x j b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j b∗=yj−Σi=1nλi∗yi(xi)Txj
- 所以分离超平面为: b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j=0 b∗+Σi=1nλi∗yi(xi)Txj=0
- 决策函数: f w , b = s i g n ( b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j ) f_{w,b}=sign(b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j) fw,b=sign(b∗+Σi=1nλi∗yi(xi)Txj)
- 转化为对偶问题会简单化(原问题复杂度高)
- 拉格朗日的原始问题是 m i n w , b m a x λ L min_{w,b} max_{\lambda} L minw,bmaxλL
- 对偶问题是
m
a
x
λ
m
i
n
w
,
b
L
max_{\lambda} min_{w,b}L
maxλminw,bL
- 对偶问题:
- 消去w/b
θ
D
(
w
)
=
m
i
n
w
,
b
L
\theta_D(w)=min_{w,b}L
θD(w)=minw,bL
- 求梯度
-
∂
L
∂
w
=
w
−
Σ
i
=
1
n
λ
i
y
i
x
i
=
0
\frac{\partial L}{\partial w}=w-\Sigma_{i=1}^n \lambda_iy^ix^i=0
∂w∂L=w−Σi=1nλiyixi=0
- w = Σ i = 1 n λ i y i x i w=\Sigma_{i=1}^n \lambda_iy^ix^i w=Σi=1nλiyixi
-
∂
L
∂
b
=
−
Σ
i
=
1
n
λ
i
y
i
=
0
\frac{\partial L}{\partial b}=-\Sigma_{i=1}^n \lambda_iy^i=0
∂b∂L=−Σi=1nλiyi=0
- Σ i = 1 n λ i y i = 0 \Sigma_{i=1}^n \lambda_iy^i=0 Σi=1nλiyi=0
-
∂
L
∂
w
=
w
−
Σ
i
=
1
n
λ
i
y
i
x
i
=
0
\frac{\partial L}{\partial w}=w-\Sigma_{i=1}^n \lambda_iy^ix^i=0
∂w∂L=w−Σi=1nλiyixi=0
- 结果带入L–得到对偶问题
- θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j θD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj
- 约束: λ i > = 0 ; Σ i = 1 n λ i y i = 0 \lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0 λi>=0;Σi=1nλiyi=0
- 求梯度
- 再求最大
d
∗
<
−
−
m
a
x
λ
θ
D
(
w
)
d^*<--max_{\lambda}\theta_D(w)
d∗<−−maxλθD(w)
- 由新的对偶问题求极值点,得到最优解$\lambda* $
- 由此可以找到 w ∗ , b ∗ w*,b* w∗,b∗
- w ∗ = Σ i = 1 n λ i ∗ y i x i w*=\Sigma_{i=1}^n \lambda_i*y^ix^i w∗=Σi=1nλi∗yixi
- b ∗ = y j − Σ i = 1 n λ i ∗ y i ( x i ) T x j b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j b∗=yj−Σi=1nλi∗yi(xi)Txj
- 所以分离超平面为: b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx=0 b∗+Σi=1nλi∗yi(xi)Tx=0
- 决策函数: f w , b ( x ) = s i g n ( b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x ) f_{w,b}(x)=sign(b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx) fw,b(x)=sign(b∗+Σi=1nλi∗yi(xi)Tx)
- 可以看出
- 只受到支持向量的影响(其他的 λ = 0 \lambda=0 λ=0
- 正样本y=1,负样本y=-1,正样本对w起正向作用,负样本起负向作用
- 由新的对偶问题求极值点,得到最优解$\lambda* $
soft margin
- 问题描述
- m i n w 1 2 ∣ ∣ w ∣ ∣ 2 + C Σ i = 1 n ξ i min_w \frac{1}{2}||w||^2+C\Sigma_{i=1}^n\xi_i minw21∣∣w∣∣2+CΣi=1nξi
- 约束 y i ( w T x i ) > = 1 − ξ i , ξ i ≥ 0 , 对 任 意 i y^i(w^Tx^i)>=1-\xi_i,\xi_i \geq 0,对任意i yi(wTxi)>=1−ξi,ξi≥0,对任意i
- 凸函数的QP问题
- 对应拉格朗日函数:
- L ( λ i , η i , ξ , w , b ) = Σ i = 1 N λ i ( 1 − y i ( w T x i + b ) − ξ i ) − Σ i = 1 n η i ξ i + 1 2 ∣ ∣ w ∣ ∣ 2 L(\lambda_i,\eta_i,\xi,w,b)=\Sigma_{i=1}^N\lambda_i(1-y^i(w^Tx^i+b)-\xi_i)-\Sigma_{i=1}^n\eta_i \xi_i+\frac{1}{2} ||w||^2 L(λi,ηi,ξ,w,b)=Σi=1Nλi(1−yi(wTxi+b)−ξi)−Σi=1nηiξi+21∣∣w∣∣2
- 得到对偶形式:
- m a x θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j max\theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j maxθD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj
- 约束: 0 ≤ λ i ≤ C = λ i + η i ( η i > = 0 ) ; Σ i = 1 n λ i y i = 0 0 \leq \lambda_i\leq C=\lambda_i+\eta_i(\eta_i>=0);\Sigma_{i=1}^n\lambda_iy^i=0 0≤λi≤C=λi+ηi(ηi>=0);Σi=1nλiyi=0
- 原来 λ i \lambda_i λi可以无限大,因为线性可分
- C–容忍度是有限的,对应了
λ
i
\lambda_i
λi–C越大越苛刻,margin越小,容忍度越小
-
C的三种理解方式
- 容忍度
- 在中间范围内也算是分错了的点
- C-会有多少个分错的点,C大容忍度小
- 对 ξ \xi ξ的惩罚,C越大,惩罚越大,越苛刻
- C = 1 2 λ , 与 λ 是 相 反 的 , λ 大 , 希 望 模 型 不 要 太 复 杂 , 也 就 是 C 小 的 情 况 C=\frac{1}{2\lambda},与\lambda是相反的,\lambda大,希望模型不要太复杂,也就是C小的情况 C=2λ1,与λ是相反的,λ大,希望模型不要太复杂,也就是C小的情况
- 容忍度
-
回忆KKT
- λ i ∗ f i ( w ∗ ) = 0 a n d η i ∗ ξ i = 0 \lambda_i*f_i(w*)=0 and \eta_i*\xi_i=0 λi∗fi(w∗)=0andηi∗ξi=0
-
λ
i
∗
=
0
=
=
>
y
i
(
b
∗
+
w
∗
T
x
i
)
>
1
,
在
正
确
的
地
方
\lambda_i*=0==>y^i(b*+w*^Tx^i)>1,在正确的地方
λi∗=0==>yi(b∗+w∗Txi)>1,在正确的地方
- λ i ∗ = 0 = = > η i ∗ = C > 0 = = > ξ = 0 = = > y i ( b ∗ + w ∗ T x i ) > 1 − ξ = 1 , 在 正 确 的 地 方 \lambda_i*=0==>\eta_i*=C>0==>\xi=0==>y^i(b*+w*^Tx^i)>1-\xi=1,在正确的地方 λi∗=0==>ηi∗=C>0==>ξ=0==>yi(b∗+w∗Txi)>1−ξ=1,在正确的地方
-
0
<
λ
i
∗
<
C
=
=
>
y
i
(
b
∗
+
w
∗
T
x
i
)
=
1
,
在
边
界
上
−
−
−
支
持
向
量
0<\lambda_i*<C==>y^i(b*+w*^Tx^i)=1,在边界上---支持向量
0<λi∗<C==>yi(b∗+w∗Txi)=1,在边界上−−−支持向量
- λ i ∗ > 0 = = > η i ∗ = C − λ i ∗ > 0 = = > ξ = 0 = = > y i ( b ∗ + w ∗ T x i ) = 1 − ξ = 1 , 在 正 确 的 地 方 \lambda_i*>0==>\eta_i*=C-\lambda_i*>0==>\xi=0==>y^i(b*+w*^Tx^i)=1-\xi=1,在正确的地方 λi∗>0==>ηi∗=C−λi∗>0==>ξ=0==>yi(b∗+w∗Txi)=1−ξ=1,在正确的地方
- λ i ∗ = C > 0 , η i = 0 = = > ξ > 0 = = > y i ( b ∗ + w ∗ T x i ) = 1 − ξ < = 1 在 错 误 的 地 方 \lambda_i*=C>0,\eta_i=0==>\xi>0==>y^i(b*+w*^Tx^i)=1-\xi<=1在错误的地方 λi∗=C>0,ηi=0==>ξ>0==>yi(b∗+w∗Txi)=1−ξ<=1在错误的地方
-
- 最终结果
- w ∗ = Σ i = 1 n λ i ∗ y i x i w*=\Sigma_{i=1}^n \lambda_i*y^ix^i w∗=Σi=1nλi∗yixi
- b ∗ = y j − Σ i = 1 n λ i ∗ y i ( x i ) T x j b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j b∗=yj−Σi=1nλi∗yi(xi)Txj
- 所以分离超平面为: b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j=0 b∗+Σi=1nλi∗yi(xi)Txj=0
- 决策函数: f w , b = s i g n ( b ∗ + Σ i = 1 n λ i ∗ y i ( x i ) T x j ) f_{w,b}=sign(b*+\Sigma_{i=1}^n\lambda_i* y^i (x^i)^Tx^j) fw,b=sign(b∗+Σi=1nλi∗yi(xi)Txj)
kernel SVM
-
得到对偶形式:
- θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j K ( x i , x j ) \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_jK(x^i,x^j) θD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλjK(xi,xj)
- 约束:
λ
i
>
=
0
;
Σ
i
=
1
n
λ
i
y
i
=
0
\lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0
λi>=0;Σi=1nλiyi=0
- w ∗ = Σ i = 1 n λ i ∗ y i x i w*=\Sigma_{i=1}^n \lambda_i*y^ix^i w∗=Σi=1nλi∗yixi
- b ∗ = y j − Σ i = 1 n λ i ∗ y i K ( x i , x j ) b*=y^j-\Sigma_{i=1}^n\lambda_i* y^i K(x^i,x^j) b∗=yj−Σi=1nλi∗yiK(xi,xj)
- 所以分离超平面为: b ∗ + Σ i = 1 n λ i ∗ y i K ( x i , x ) = 0 b*+\Sigma_{i=1}^n\lambda_i* y^i K(x^i,x)=0 b∗+Σi=1nλi∗yiK(xi,x)=0
- 决策函数: f w , b ( x ) = w ∗ T ϕ ( x ) + b ∗ = s i g n ( b ∗ + Σ i = 1 n λ i ∗ y i K ( x i , x ) ) f_{w,b}(x)=w*^T\phi(x)+b*=sign(b*+\Sigma_{i=1}^n\lambda_i* y^i K(x^i,x)) fw,b(x)=w∗Tϕ(x)+b∗=sign(b∗+Σi=1nλi∗yiK(xi,x))
-
常见几种核
1. hillbert space:可以再生任意函数(最重要的)
* ϕ ( x ) = K ( ⋅ , x ) K ( x , z ) = K ( ⋅ , x ) ⋅ K ( ⋅ , z ) = ϕ ( x ) T ϕ ( z ) 再 生 性 : f ( ⋅ ) = Σ i = 1 m α i K ( ⋅ , x i ) f ( ⋅ ) K ( ⋅ , x ) = Σ i = 1 m α i K ( x , x i ) = f ( x ) , 都 是 这 个 空 间 的 两 个 函 数 \phi(x)=K(·,x)\\K(x,z)=K(·,x)·K(·,z)=\phi(x)^T\phi(z)\\再生性:f(·)=\Sigma_{i=1}^m\alpha_iK(·,x^i)\\f(·)K(·,x)=\Sigma_{i=1}^m\alpha_iK(x,x^i)=f(x),都是这个空间的两个函数 ϕ(x)=K(⋅,x)K(x,z)=K(⋅,x)⋅K(⋅,z)=ϕ(x)Tϕ(z)再生性:f(⋅)=Σi=1mαiK(⋅,xi)f(⋅)K(⋅,x)=Σi=1mαiK(x,xi)=f(x),都是这个空间的两个函数
2. 多项式核 K ( x , z ) = ( x T z + 1 ) p K(x,z)=(x^Tz+1)^p K(x,z)=(xTz+1)p
3. 高斯核: K ( x , z ) = e x p { − ∥ x − z ∥ 2 2 σ 2 } K(x,z)=exp\{-\frac{\|x-z\|^2}{2\sigma^2}\} K(x,z)=exp{−2σ2∥x−z∥2}–radial basis function(RBF)
* K ( x , z ) = e x p { − d i s t ( x , z ) 2 σ 2 } K(x,z)=exp\{-\frac{dist(x,z)}{2\sigma^2}\} K(x,z)=exp{−2σ2dist(x,z)}
* f ( x ) = s i g n ( Σ i = 1 n α i ∗ y i e x p { − ∥ x − z ∥ 2 2 σ 2 } + b ∗ ) f(x)=sign(\Sigma_{i=1}^n\alpha_i^*y^iexp\{-\frac{\|x-z\|^2}{2\sigma^2}\}+b^*) f(x)=sign(Σi=1nαi∗yiexp{−2σ2∥x−z∥2}+b∗)
4. Sigmoid kernel: K ( x , x ′ ) = t a n h ( 2 x T x ′ + 1 ) K(x,x')=tanh(2x^Tx'+1) K(x,x′)=tanh(2xTx′+1)
4.SMO–可以快速求解svm
- 用对偶形式
- 得到对偶形式:
- θ D ( λ ) = Σ i = 1 n λ i − 1 2 Σ i , j = 1 n y i y j λ i λ j ( x i ) T x j \theta_D(\lambda)=\Sigma_{i=1}^n\lambda_i-\frac{1}{2}\Sigma_{i,j=1}^ny^iy^j\lambda_i\lambda_j(x^i)^Tx^j θD(λ)=Σi=1nλi−21Σi,j=1nyiyjλiλj(xi)Txj
- 约束: λ i > = 0 ; Σ i = 1 n λ i y i = 0 \lambda_i>=0;\Sigma_{i=1}^n\lambda_iy^i=0 λi>=0;Σi=1nλiyi=0
- Coordinate Ascent:每一次仅对一个
λ
i
\lambda_i
λi求最大,从i=1,2,…,n
- 可以直接用在svm上吗?
- 不可以, λ \lambda λ之间是线性相关的。
- 改进:每次对一对,其他n-2个固定,求最大。
- 可以直接用在svm上吗?
- SMO
- 每次对一对,其他n-2个固定:
λ
1
y
1
+
λ
2
y
2
=
−
Σ
i
=
3
N
α
i
y
i
=
C
\lambda_1y^1+\lambda_2y^2=-\Sigma_{i=3}^N\alpha_iy^i=C
λ1y1+λ2y2=−Σi=3Nαiyi=C
- λ 1 = ( C − λ 2 y 2 ) y 1 \lambda_1=(C-\lambda_2y^2)y^1 λ1=(C−λ2y2)y1
- L ( ( C − λ 2 y 2 ) y 1 , λ 2 , . . . , λ N ) , 先 忽 略 约 束 求 导 , 得 到 λ 2 n e w , u n c l i p p e d , 再 加 上 约 束 L((C-\lambda_2y^2)y^1,\lambda_2,...,\lambda_N),先忽略约束求导,得到\lambda_2^{new,unclipped},再加上约束 L((C−λ2y2)y1,λ2,...,λN),先忽略约束求导,得到λ2new,unclipped,再加上约束
- 用 λ 2 更 新 λ 1 : λ 1 n e w = λ 1 o l d ( λ 2 o l d − λ 2 n e w ) y 2 y 1 用\lambda_2更新\lambda_1:\lambda_1^{new}=\lambda_1^{old}(\lambda_2^{old}-\lambda_2^{new})y^2y^1 用λ2更新λ1:λ1new=λ1old(λ2old−λ2new)y2y1
- 从那一对开始呢?
- 最优的
λ
\lambda
λ肯定是满足KKT条件的
- λ i = 0 < = = > y i g ( x i ) > = 1 \lambda_i=0<==>y^ig(x^i)>=1 λi=0<==>yig(xi)>=1
- 0 < λ i < C < = = > y i g ( x i ) = 1 0<\lambda_i<C<==>y^ig(x^i)=1 0<λi<C<==>yig(xi)=1
-
λ
i
=
C
<
=
=
>
y
i
g
(
x
i
)
<
=
1
\lambda_i=C<==>y^ig(x^i)<=1
λi=C<==>yig(xi)<=1
- g ( x i ) = Σ j = 1 N α j y j K ( x i , x j ) + b g(x_i)=\Sigma_{j=1}^N\alpha_jy^jK(x^i,x^j)+b g(xi)=Σj=1NαjyjK(xi,xj)+b
- 每次选择违背KKT条件最大的
- 从 0 < λ i < C 0<\lambda_i<C 0<λi<C的开始,违背最多的选择一个
- 第二个有固定准则来选:E1-E2
-
E
i
=
g
(
x
i
)
−
y
i
E_i=g(x^i)-y^i
Ei=g(xi)−yi
-
E
i
=
g
(
x
i
)
−
y
i
E_i=g(x^i)-y^i
Ei=g(xi)−yi
- 最优的
λ
\lambda
λ肯定是满足KKT条件的
- 每次对一对,其他n-2个固定:
λ
1
y
1
+
λ
2
y
2
=
−
Σ
i
=
3
N
α
i
y
i
=
C
\lambda_1y^1+\lambda_2y^2=-\Sigma_{i=3}^N\alpha_iy^i=C
λ1y1+λ2y2=−Σi=3Nαiyi=C