- 概述
感知机是二分类的线性分类模型,其输入为实例的特征向量,输出实例为类别,取+1和-1二值,属于判别模型。感知机学习旨在求出能够将训练数据集进行正确的分类的分离超平面。为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。感知机具有简单易实现的优点,分为原始和对偶形式。
感知机模型的假设函数为f(x)=sign(w*x+b)
sign()是一个符号函数,w称为 权值向量(weight vector),b称为偏置(bias),w*x表示w和x的内积,x、w均为p维。
w*x+b=0是一个超平面S,超平面将输入空间X划分为两部分,分别称为正类和负类。
感知机的思想就是:错误驱动
理解错误驱动:
我们给w随意赋予一个初值,只要满足其是p维的向量即可。由于w的值是随意赋予的,则很大可能性使分类出现错误,而我们要做的就是改正错误。改正的过程其实很简单,就是如图中的红线所示,一点点移动超平面,将错误的样本重新分类正确。
2.损失函数
2.1用误分类个数来表示损失函数。
2.2用误分类点到超平面的总距离来表示损失函数
3.梯度下降法求最优解
3.1梯度下降
L(ω,b)常被称为感知机的损失函数,其值显然是非负的。如果没有误分类点,损失函数等于0,误分类点越少,损失函数值越小。所以感知机的学习策略就是选取参数ω和b使L(ω,b)达到最小值,在求解最优化的问题中,我们采用了梯度下降法。
采用随机梯度下降法,每次感知机梯度下降算法的迭代都是选择一个误分类样本数据来更新ω和b,最终经过若干次的迭代后得到最终的结果。对于从来都没有误分类过的样本,它被选择参与迭代的次数是0.