码迷,mamicode.com
首页 > 其他好文 > 详细

感知机(Perceptron)

时间:2016-05-08 16:51:49      阅读:785      评论:0      收藏:0      [点我收藏+]

标签:

感知机(Perceptron)是二分类问题的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1二值。

感知机于输入空间(特征空间)中将实例划分为正负两类的分离超平面,属于判别模型。感知机于1957年由Rosenblatt提出,是神经网络和支持向量机的基础。

在这里,不用《统计学习方法》书中的变量表示方式,我们用技术分享表示数据集,一共技术分享个样本,技术分享个维度,用技术分享表示数据集中的第技术分享个样本,用技术分享表示标记(类别)向量,技术分享代表第技术分享个样本技术分享的标记。

我们将要学习的目标函数是:

技术分享

称为感知机。其中,技术分享技术分享为感知机模型参数,技术分享为权值向量,技术分享叫作偏置(bias),技术分享表示技术分享技术分享的内积。技术分享是符号函数,即:

技术分享

所以,在这里技术分享,根据上式可知技术分享时为分类的边界(超平面)。

对于数据集技术分享,如果能够将数据集的正负样例完全正确地划分到超平面的两侧,即对于所有技术分享的实例技术分享技术分享,对于所有技术分享的实例技术分享技术分享,则称这个数据集为线性可分的数据集,否则数据集线性不可分。

假设数据集是线性可分的,感知机的学习目标是求得一个能够将训练集正负样例能够完全分开的超平面。找出这样的超平面,其实就是要确定感知机的模型参数技术分享技术分享。所以我们首先要定义损失函数,再将其最小化。

感知机的损失函数是针对误分类的点,最小化误分类的点到超平面的距离,不断进行调整。

对于输入空间的任一一个样例技术分享,所要计算的距离就是这个点到技术分享的距离。

根据点到直线的距离公式:

技术分享

代入其中,可以得到:

技术分享

进一步,进行简化约等,可以得到如下式子:

技术分享

其中,技术分享技术分享技术分享范数。

对于误分类的样例技术分享来说,技术分享成立。所以误分类的点到超平面的距离为:

技术分享

假如对于所有的误分类点集合为技术分享,那么所有的误分类点到超平面的总距离为:

技术分享

不考虑技术分享,就得到了感知机的损失函数:

技术分享

显然,损失函数技术分享是非负的,如果没有误分类的点,损失函数的值为0。并且,误分类点越少,误分类点离超平面越近,损失函数越小。所以对于完全线性可分的数据集,当损失函数技术分享为0时,即达到了完全正确分类。

这个损失函数可以用梯度下降法来解,对于技术分享技术分享的梯度用偏导可以直接求出来,具体过程不再赘述。

参考资料:

李航 《统计学习方法》

 

感知机(Perceptron)

标签:

原文地址:http://www.cnblogs.com/Rambler1995/p/5470871.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!