感知器
感知器是二类分类的线性分类模型,属于辨别模型。输出为实例的类别,取+1与-1二值。
目的是求出将训练数据进行线性划分的分离超平面。
误分类点
判别的结果与输入的类别不同(异号)则为误分点,那么判据为
损失函数
通过求出误分类点到超平面的总距离,评价划分效果的好坏。求总距离最小时的情况,利用梯度下降法,分别求w,b的偏导数。
收敛性
书上的证明写的很清楚
对偶形式
可以看到 W的更新是xi*yi的线性组合,如果我们用一个矩阵a记录第i个测试集误分类的次数。每次出现误分类时,ai = ai+1,而b = b + yi
也就是说,将标准形式中 W 用 a 的形式表示出来,本质还是一样的。
Gram矩阵
用对偶形式时,判断误分类点时。展开W得到
发现可以提前计算出xi*xj的结果并储存在Gram矩阵中。
语言描述
标准形式与对偶形式的感知器c++实现。
需要说明的是程序默认学习速率为1,在应用梯度下降时,并没有采用随机选取误分类点的策略,而是优先更新最先发现的误分类点。