感知机学习算法(原始形式)
定义:\(w\in \mathcal{R^n}\)是权值,\(b\in \mathcal{R}\)是偏置值,\(\eta\)为学习率,感知机为
\[f(x)=sign(w\cdot x+b) \\
f(x)=\left\{
\begin{aligned}
+1 \quad x\geq0 \\
-1 \quad x\leq0\\
\end{aligned}
\right.
\]
损失函数极小化问题
\[\min\limits_{w,b}\ L(w,b)=-\sum\limits_{x_i\in M}y_i(w\cdot x_i+b)
\]
随机梯度下降法
\[\begin{align}
\nabla_wL(w,b)=&-\sum_{x_i\in M}y_ix_i \\
\nabla_bL(w,b)=&-\sum\limits_{x_i\in M}y_i \\
w\leftarrow &w+\eta y_ix_i \tag{1} \\
b\leftarrow &b+\eta y_i \tag{2}
\end{align}
\]
选取初值\(w_0,b_0\),不断随机选择数据\((x_i,y_i)\),如果\(y_i(w\cdot x_i+b)\leq 0\),用公式(1)(2) 更新\(w,b\)即可,直到训练集中没有误分类点
感知机学习算法(对偶形式)
假设样本点\((x_i,y_i)\)在更新过程中被使用了\(n_i\)次,那么最后学习到的\(w,b\)可以表示为
\[\begin{align}
w=&\sum_{i=1}^{N}n_i\eta y_ix_i \tag{3} \\
b=&\sum^N_{i=1}n_i\eta y_i \tag{4} \\
\end{align}
\]
带入原来的\(f(x)\)中
\[f(x)=sign(w\cdot x+b)=sign\left(\sum^N_{j=1}n_j\eta y_jx_j \cdot x+\sum_{j=1}^Nn_j\eta y_j\right)
\]
此时学习目标不再是\(w,b\),而变成了\(n_j,\ j=1,2...N\)。初始时\(n_j=0\)。不断随机选取数据\((x_i,y_i)\),如果
\[y_i\left(\sum^N_{j=1}n_j\eta y_jx_j \cdot x_i+\sum_{j=1}^Nn_j\eta y_j\right)\leq 0 \\
\]
更新:\(n_i\leftarrow n_i+1\),直到没有误分类点为止
书中\(\alpha_i=n_i\eta_i\)
为了方便计算\(x_j \cdot x_i\),可以用Gram矩阵储存每两个数据点的内积
\[\mathcal{G}_{ij}=x_i\cdot x_j
\]
对偶形式的意义(*个人理解)
样本点的内积用Gram矩阵储存,可以加快计算速度
感知机算法收敛性证明
定理(Novikoff):对于线性可分的训练数据集
\(\hat w=(w^T,b)^T,\hat x=(x^T,1)^T\))
-
(有界性)存在满足条件的\(||\hat w_{opt}||=1\)的超平面\(\hat w_{opt}\cdot \hat x=w_{opt}\cdot x+b_{opt}=0\)将数据集完全正确分开,且存在\(\gamma>0\),满足
\[y_i(\hat w_{opt}\cdot \hat x_i)\geq \gamma \\
\]
-
(收敛性)令\(\mathcal{R}=\max\limits_{1\leq i\leq N}||\hat x_i||\),感知机算法在训练集上的误分类次数\(k\)满足
\[k\leq \left(\frac{R}{\gamma}\right)^2
\]
定理1是根据\(N\)的有限性,是显然的。
定理2中,根据公式(1)(2),易得\(\hat w_i\)的递推关系如下
\[\hat w_i=\hat w_{i-1}+\eta y_i\hat x_i
\]
由定理1知,有如下关系
\[y_i\hat x_i \cdot \hat w_{opt} \geq \gamma
\]
首先由递推关系可得如下不等式
\[\begin{align}
\hat w_k\cdot \hat w_{opt}=& \hat w_{k-1} \cdot \hat w_{opt}+ \eta y_i\hat x_i \cdot \hat w_{opt} \\
\geq & \hat w_{k-1}\cdot \hat w_{opt}+\eta\gamma \geq ... \\
\therefore \quad
\hat w_k\cdot \hat w_{opt}\geq& k\eta\gamma \tag5
\end{align}
\]
考虑用不等式控制\(w_k\)的大小
注意对于误分类的点,\(y_i \hat w_{k-1} \cdot \hat x_i \leq 0\)
\[\begin{align}
||\hat w_k||^2=&||\hat w_{k-1}||^2+2\eta y_i \hat w_{k-1} \cdot \hat x_i +\eta^2||\hat x_i||^2 \\
\leq& ||\hat w_{k-1}||^2+\eta^2||\hat x_i||^2 \\
\leq &||\hat w_{k-1}||^2+\eta^2R^2 \leq ... \\
\leq & k\eta^2R^2 \tag6
\end{align}
\]
结合公式(5)(6)
\[k\eta\gamma \leq \hat w_k \cdot \hat w_{opt} \leq ||\hat w_k||\ ||\hat w_{opt}|| \leq \sqrt k \eta R \\
\]
所以可得