统计学习方法——第二章学习笔记

感知机

感知机是二类分类的线性分类模型,输入为实例的特征向量,输出为实例的类别,取+1和-1,属于判别模型。感知机学习是要找到将训练数据进行线性划分的分离超平面,所以引入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。

一、感知机模型

1、感知机:
假设输入空间(特征空间)是 XRn ,输出空间是 Y={+1,1} 。由输入空间到输出空间的函数:
y=sign(wx+b)
称为感知机。其中 w 为超平面的法向量(权值向量), b 为超平面的截距(偏置)。假设空间定义为在特征空间上的所有线性分类模型或线性分类器,即函数集合:
{f|f(x)=wx+b}

二、感知机学习策略

1、数据集的线性可分性
给定一个数据集:
T={(x1,y1),(x2,y2),...,(xN,yN)}
如果存在某个超平面S: wx+b 能够将数据集的正实例点和负实例点完全正确的划分到超平面的两侧,则称数据集T为线性可分数据集。
2、感知机学习策略
假设训练数据集是可分的,目标是学习到一个可以将训练数据完全正确分开的分离超平面,即确定感知机模型参数w,b,需要定义一个学习策略,即定义(经验)损失函数并将损失函数极小化。
损失函数可以定义为误分类点到超平面的距离,首先给出输入空间中任一点 x0 到超平面S的距离,即:
1||w|||wx0+b|
其次对于误分类数据点 (xi,yi) 来说,有
yi(wxi+b)>0
所以误分类点到超平面S的距离为:
1||w||yi(wxi+b)
这样,假设超平面S上误分类点集合为M,那么所有误分类点到超平面S的总距离为:
1||w||xiMyi(wxi+b)
至此得到了感知机学习的损失函数。综上,感知机学习的损失函数定义为:
L(w,b)=xiMyi(wxi+b)
给定训练数据集T,损失函数 L(w,b) 是w,b的连续可导函数。

三、感知机学习算法

1、感知机算法的原始形式
损失函数极小化问题:
minw,bL(w,b)=xiMyi(wxi+b)
利用梯度下降法,极小化过程不是一次性使M中所有误分类点的梯度下降,而是一次随机选取一个误分类点使其梯度下降。损失函数 L(w,b) 的梯度为:
wL(w,b)=xiMyixi
bL(w,b)=xiMyi
随机选取一个误分类点 (xi,yi) 对w,b进行更新:
w=w+ηyixi
b=b+ηyi
其中 η 是步长,在统计学习方法中称为学习率。整个过程相当于改变超平面,最终选择一个最优的超平面用于对训练数据进行正确分类。
2、对偶形式
假设初始值 w0,b0 均为0,对误分类点 (xi,yi) 通过
w=w+ηyixi
b=b+ηyi
逐步修改w和b,假设误分类点 (xi,yi) 修改了 ni 次,则w,b关于误分类点 (xi,yi) 的增量分别为 αiyixi αiyi ,其中 αi=niη ,其中当 η=1 时,表示第i个实例点由于误分类而进行更新的次数,更新刺激越多,意味着它离超平面越近,也就越难进行分类。所以对偶形式的算法为:
αi=αi+η
b=b+ηyi
3、算法的收敛性
对于现行可分数据集感知机学习算法的原始形式收敛,即经过有限次迭代可以得到一个将训练数据完全正确划分的分离超平面及感知机模型。

你可能感兴趣的:(统计学习方法)