感知机是二类分类的线性分类模型,输入为实例的特征向量,输出为实例的类别,取+1和-1二值,感知机对应于输入空间(特征空间)中将实例划分为正负两类的分离超平面,属于判别模型。感知机学习旨在求出将训练数据进行线性划分的分离超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。
感知机模型:
f(x)=sign(w*x +b)
其中,w和b是感知机的模型参数,w属于Rn,叫做权值或者权值向量。b属于R,叫做偏置,w*x标识w和x的内积,sign是符号函数:x>=0 sign(x)=1;x<0,sign(x)=-1;
感知机几何解释:w*x+b=0;对应一个超平面,w是平面的法向量,b是截距;
感知机学习策略:
线性可分性:
对于一个数据集:T={(x1,y1),(x2,y2).....(xn,yn)} xi属于X,yi属于Y属于{+1,-1},i=1,2,3......n;如果存在超平面S w*x+b=0 能够将数据集的正实例点和负实例点完全正确地划分到超平面的两侧,即对所有yi=+1的实例i,都有w*xi+b>0; 对于所有yi=-1的实例i,都有w*xi+b<0;则称数据集T为线性可分数据集,否则为线性不可分;
感知机学习策略:
目的是求一个超平面能否将正实例和负实例完全正确地分开;为了得到这个平面,需要确定w和b;需要定义一个学习策略,及定义(经验)损失函数并将损失函数极小化;
损失函数的一个自然选择是误分类的点数,但是这样的损失函数不是参数w和b的连续可导函数,不易优化,损失函数的另一个选择是误分类点到超平面的总距离,这是感知机所采用的,为此,首先写出输入空间中任一点x0到超平面S的距离:
对于误分类的数据(xi,yi)来说,
;因为w*xi+b>0时,yi=-1,而当w*xi+b<0时,yi=+1,因此,误分类点xi到超平面S的距离是:
假设误分类点集合为M,则误分类点到超平面S的总距离为: