解答:
解答思路:
- 列出感知机的原始形式;
- 写出感知机的对偶形式;
- 列出线性可分支持向量机的原始形式;
- 写出线性可分支持向量机的对偶形式;
- 比较感知机和线性可分支持向量机的对偶形式。
解答步骤:
第1步:感知机的原始形式
给定一个训练数据集
T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\left\{\left(x_1, y_1\right),\left(x_2, y_2\right), \cdots,\left(x_N, y_N\right)\right\} T={(x1,y1),(x2,y2),⋯,(xN,yN)}
其中, x i ∈ X = R n , y i ∈ Y = { − 1 , 1 } , i = 1 , 2 , ⋯ , N x_i \in \mathcal{X}=R^n, y_i \in \mathcal{Y}=\{-1,1\}, i=1,2, \cdots, N xi∈X=Rn,yi∈Y={−1,1},i=1,2,⋯,N ,求参数 w , b w, b w,b ,使其为以下损失函数极小化问题的解
min w , b L ( w , b ) = − ∑ x i ∈ M y i ( w ⋅ x i + b ) \min _{w, b} L(w, b)=-\sum_{x_i \in M} y_i\left(w \cdot x_i+b\right) w,bminL(w,b)=−xi∈M∑yi(w⋅xi+b)
其中 M M M 为误分类点的集合。
第2步:感知机的对偶形式
输入: 线性可分的数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\left\{\left(x_1, y_1\right),\left(x_2, y_2\right), \cdots,\left(x_N, y_N\right)\right\} T={(x1,y1),(x2,y2),⋯,(xN,yN)} ,其中 x i ∈ R n , y i ∈ { − 1 , + 1 } , i = 1 , 2 , ⋯ , N x_i \in R^n, y_i \in\{-1,+1\}, i=1,2, \cdots, N xi∈Rn,yi∈{−1,+1},i=1,2,⋯,N ;学习率 η \eta η ( 0 < η ⩽ 1 ) \left.0<\eta \leqslant 1\right) 0<η⩽1) ;输出: a , b a, b a,b; 感知机模型 f ( x ) = f(x)= f(x)= sign ( ∑ j = 1 N α j y j x j ⋅ x + b ) \operatorname{sign}\left(\sum_{j=1}^N \alpha_j y_j x_j \cdot x+b\right) sign(∑j=1Nαjyjxj⋅x+b), 其中 α = ( α 1 , α 2 , ⋯ , α N ) T \alpha=\left(\alpha_1, \alpha_2, \cdots, \alpha_N\right)^T α=(α1,α2,⋯,αN)T
(1) α ← 0 , b ← 0 \alpha \leftarrow 0, b \leftarrow 0 α←0,b←0;
(2) 在训练集中选取数据 ( x i , y i ) \left(x_i, y_i\right) (xi,yi) ;
(3) 如果 y i ( ∑ j = 1 N α j y j x j ⋅ x + b ) ⩽ 0 y_i\left(\sum_{j=1}^N \alpha_j y_j x_j \cdot x+b\right) \leqslant 0 yi(∑j=1Nαjyjxj⋅x+b)⩽0 ,
(4) 转至 (2),直至训练集中没有误分类数据。
从学习过程不难看出,最后学习到的 w , b w, b w,b 可以分别表示为
w = ∑ i = 1 N α i y i x i b = ∑ i = 1 N α i y i \begin{gathered} w=\sum_{i=1}^N \alpha_i y_i x_i \\ b=\sum_{i=1}^N \alpha_i y_i \end{gathered} w=i=1∑Nαiyixib=i=1∑Nαiyi
这里, α i ⩾ 0 , i = 1 , 2 , ⋯ , N \alpha_i \geqslant 0, i=1,2, \cdots, N αi⩾0,i=1,2,⋯,N
综上所述:
1.感知机的原始形式中的损失函数:
min w , b L ( w , b ) = − ∑ x i ∈ M y i ( w ⋅ x i + b ) \min _{w, b} L(w, b)=-\sum_{x_i \in M} y_i\left(w \cdot x_i+b\right) w,bminL(w,b)=−xi∈M∑yi(w⋅xi+b)
2 感知机的对偶形式中的损失函数: 可知 w , b w, b w,b 表示为 ⟨ x i , y i ⟩ \left\langle x_i, y_i\right\rangle ⟨xi,yi⟩ 的线性组合形式,则
min w , b L ( w , b ) = min α L ( α ) = − ∑ x i ∈ M ( y i ( ∑ j = 1 N α j y j x j ⋅ x i + ∑ j = 1 N α j y j ) ) \min _{w, b} L(w, b)=\min _\alpha L(\alpha)=-\sum_{x_i \in M}\left(y_i\left(\sum_{j=1}^N \alpha_j y_j x_j \cdot x_i+\sum_{j=1}^N \alpha_j y_j\right)\right) w,bminL(w,b)=αminL(α)=−xi∈M∑(yi(j=1∑Nαjyjxj⋅xi+j=1∑Nαjyj))
其中, α = ( α 1 , α 2 , ⋯ , α N ) T \alpha=\left(\alpha_1, \alpha_2, \cdots, \alpha_N\right)^T α=(α1,α2,⋯,αN)T
第3步:线性可分支持向量机的原始形式
min w , b 1 2 ∥ w ∥ 2 s.t. y i ( w ⋅ x i + b ) − 1 ⩾ 0 , i = 1 , 2 , ⋯ , N \begin{array}{ll} \min _{w, b} & \frac{1}{2}\|w\|^2 \\ \text { s.t. } & y_i\left(w \cdot x_i+b\right)-1 \geqslant 0, \quad i=1,2, \cdots, N \end{array} minw,b s.t. 21∥w∥2yi(w⋅xi+b)−1⩾0,i=1,2,⋯,N
第4步: 线性可分支持向量机的对偶形式
输入: 线性可分训练集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\left\{\left(x_1, y_1\right),\left(x_2, y_2\right), \cdots,\left(x_N, y_N\right)\right\} T={(x1,y1),(x2,y2),⋯,(xN,yN)} , 其中 x i ∈ X = R n , y i ∈ Y = { − 1 , + 1 } , i = 1 , 2 , ⋯ , N x_i \in \mathcal{X}=R^n, y_i \in \mathcal{Y}=\{-1,+1\}, i=1,2, \cdots, N xi∈X=Rn,yi∈Y={−1,+1},i=1,2,⋯,N ;
输出: 分离超平面和分类决策函数。
(1)构造并求解约束最优化问题
min α 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) − ∑ i = 1 N α i s.t. ∑ i = 1 N α i y i = 0 α i ⩾ 0 , i = 1 , 2 , ⋯ , N \begin{array}{ll} \min _\alpha & \frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j y_i y_j\left(x_i \cdot x_j\right)-\sum_{i=1}^N \alpha_i \\ \text { s.t. } & \sum_{i=1}^N \alpha_i y_i=0 \\ & \alpha_i \geqslant 0, \quad i=1,2, \cdots, N \end{array} minα s.t. 21∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)−∑i=1Nαi∑i=1Nαiyi=0αi⩾0,i=1,2,⋯,N
求得最优解 α ∗ = ( α 1 ∗ , α 2 ∗ , ⋯ , α N ∗ ) T \alpha^*=\left(\alpha_1^*, \alpha_2^*, \cdots, \alpha_N^*\right)^T α∗=(α1∗,α2∗,⋯,αN∗)T 。
(2) 计算
w ∗ = ∑ i = 1 N α i ∗ y j x i w^*=\sum_{i=1}^N \alpha_i^* y_j x_i w∗=i=1∑Nαi∗yjxi
并选择 α ∗ \alpha^* α∗ 的一个正分量 α j ∗ > 0 \alpha_j^*>0 αj∗>0 ,计算
b ∗ = y i − ∑ i = 1 N α i ∗ y i ( x i ⋅ x j ) b^*=y_i-\sum_{i=1}^N \alpha_i^* y_i\left(x_i \cdot x_j\right) b∗=yi−i=1∑Nαi∗yi(xi⋅xj)
(3) 求得分离超平面
w ∗ ⋅ x + b ∗ = 0 w^* \cdot x+b^*=0 w∗⋅x+b∗=0
分类决策函数:
f ( x ) = sign ( w ∗ ⋅ x + b ∗ ) f(x)=\operatorname{sign}\left(w^* \cdot x+b^*\right) f(x)=sign(w∗⋅x+b∗)
综上所述:
线性可分支持向量机的原始形式中的损失函数:
min w , b L ( w , b ) = 1 2 ∥ w ∥ 2 \min _{w, b} L(w, b)=\frac{1}{2}\|w\|^2 w,bminL(w,b)=21∥w∥2
线性可分支持向量机的对偶形式中的损失函数:根据定理 7.2 ,可知 w , b w, b w,b 表示为 ⟨ x i , y i ⟩ \left\langle x_i, y_i\right\rangle ⟨xi,yi⟩ 的线性组合形式,则
min w , b L ( w , b ) = min α L ( α ) = 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) − ∑ i = 1 N α i \min _{w, b} L(w, b)=\min _\alpha L(\alpha)=\frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j y_i y_j\left(x_i \cdot x_j\right)-\sum_{i=1}^N \alpha_i w,bminL(w,b)=αminL(α)=21i=1∑Nj=1∑Nαiαjyiyj(xi⋅xj)−i=1∑Nαi
其中, α = ( α 1 , α 2 , ⋯ , α N ) T \alpha=\left(\alpha_1, \alpha_2, \cdots, \alpha_N\right)^T α=(α1,α2,⋯,αN)T
第 5 1 5 5 \frac{1}{5} 551 : 感知机和线性可分支持向量机对偶形式的比较
在两者的对偶形式中, w , b w, b w,b 都可以表示为 ⟨ x i , y i ⟩ \left\langle x_i, y_i\right\rangle ⟨xi,yi⟩ 的线性组合形式;
在两者的对偶形式中,都可以通过求解 α = ( α 1 , α 2 , ⋯ , α N ) T \alpha=\left(\alpha_1, \alpha_2, \cdots, \alpha_N\right)^T α=(α1,α2,⋯,αN)T ,最后代入由 x i , y i , α i x_i, y_i, \alpha_i xi,yi,αi 表示的 w w w 和 b b b 公式中,从而求解最优化问题的解 w ∗ w^* w∗ 和 b ∗ b^* b∗ ;
感知机学习得到一个分隔超平面,而线性可分支持向量机学习得到所有分隔超平面中的间隔最大分隔超平面。