什么是感知机?
感知机是二分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1二值。
本章介绍:感知机模型->感知机的学习策略(损失函数)->感知机学习算法(包括原始形式和对偶形式)
f(x)=sign(wx+b),其中w表示权值(weight vector),b表示偏置(bias),sign表示符号函数(+1和-1二值)。
感知机的性质?
感知机是一种线性分类模型,属于判别模型;
感知机的假设空间是定义在特征空间中的所有线性分类模型或线性分类器,即函数集合{f|f(x)=wx+b}
感知机的几何解释:
对于特征空间R(n)中的超平面S,w是超平面的法向量,b是超平面的截距;
感知机的学习,由训练数据集通过梯度下降的算法来获得感知机模型,即w和b。得到正确的模型,对输入新的数据实例输出实例类别。
感知机学习的目标
得到一个超平面将训练集正实例点和负实例点完全分开的超平面。为了找出这样的超平面,即确定感知机的模型参数w和b。这时我们需要制定一个学习的策略,即定义(经验)损失函数并将其极小化。(这里的学习策略是定义损失函数,或者是选择一个损失函数使其函数值最小。至于怎样才能这个函数值最小我们就需要选择感知机的学习算法来进行优化,优化的参数就是w和b)
感知机的损失函数
这个损失函数(经验风险函数)是从所有误分类点集合M到超平面S的距离之和,但是不考虑1/W就得到这个损失函数了。
感知机学习算法的原始形式
1.感知机学习算法是误分类驱动的,具体采用随机梯度下降法。
2.假设误分类点集合M是固定的,那么损失函数L(w,b)的梯度是:
随机选取一个误分类点(xi,yi),对w和b进行更新(学习算法就是做到怎么更新w和b):
3.感知机学习算法的原始形式(输入/输出/过程)
输入:训练数据集T和每个实例对应的分类以及学习率g.
输出:参数w和b,感知机模型f(x)=sign(wx+b)
过程:(1)选取初始值w0,b0
(2)在训练数据中选择误分类数据(xi,yi)
(3)更新w和b
(4)转至(2),直到训练数据集没有误分类点
对这种算法的直观解释:当一个实例点被误分类,即位于分离超平面的错误一侧时,则调整w和b使分类超平面向该误分类的一侧移动,以减少该误分类点与超平面间的距离,直到超平面越过该误分类点使其被正确分类。
4.算法 的收敛性(见书)
感知机学习算法 的对偶形式
1.感知机学习算法的对偶形式(输入/输出/过程)
输入:训练数据集T和每个实例对应的分类以及学习率g.
输出:参数w和b,感知机模型f(x)
过程: