感知机与梯度下降法
1.什么是感知机
感知机是一种线性分类模型,属于判别模型。感知机模型的假设空间是定义在特征空间中的所有线性分类模型或线性分类器,即函数集合。
2.感知机学习策略
2.1 数据集的线性可分性
给定一个数据集,其中,,,,
如果存在某个超平面 , 能够将数据集的正实例点和负实例点完全正确地划分到超平面的两侧,即对所有的实例 ,有,对所有的实例,有,则称数据集为线性可分数据集。
2.2 损失函数
损失函数的一个自然选择是五分类点的总数。但是,这样的损失函数不是参数的连续可到函数,不易优化。损失函数的另一个选择是误分类点到超平面的总距离,这是感知机所采用的。
损失函数定义为:.
3.感知机学习算法
3.1 感知机学习算法的原始形式
感知机学习算法是误分类驱动的,具体采用随机梯度下降法。首先,任意选取一个超平面,然后用梯度下降法不断地极小化目标函数。极小化过程中不是一次使中所有误分类点地梯度下降,而是一次随机选取一个误分类点使其梯度下降。
假设误分类点集合是固定的,那么损失函数的梯度由
给出。
随机选取一个误分类点,对进行更新:
式中是步长,在统计学习中又称为学习率。这样通过迭代可以期待损失函数不断减小,直到为0。
3.2 感知机学习算法的对偶形式
对偶形式的基本想法是,将,表示为实例和标记的线性组合的形式,通过求解其系数而求得和。不失一般性,在上面算法中可以假设初始值均为0。对误分类点通过
逐步修改,设修改n次,则关于的增量分别是和,这里。这样,从学习过程不难看出,最后学习到的可以分别表示为:
这里,当时,表示第个实例点由于误分而进行更新的次数。实例点更新次数越多,意味着它距离分离超平面越近,也就越难正确分类。话句话说,这样的实例对学习结果影响最大。
★
感知机模型变为:
参数更新(梯度下降):