感知机
Perceptrons
学习Hinton神经网络公开课的学习笔记
https://class.coursera.org/neuralnets-2012-001
1 感知机历史
在19世纪60年代由Frank Rosenblatt提出,是神经网络和支持向量机的基础。
2 模型表示
在hinton的课件里面给出的是Binary threshold neurons,y取值是{0,1}
在《统计学习方法》中给出的模型公式:
几何解释:线性方程
对应于特征空间中的一个超平面S
3 代价函数 cost function
考虑输入空间中任一点到超平面的距离:
误分类点到超平面的距离:
所有误分类点到超平面总距离:
不考虑 ,得到感知机的代价函数:
这里M为误分类点集合。
4 感知机学习算法
4.1梯度下降法
更新参数:
注意这里与线性回归逻辑回归等不同在于,更新参数时,是误分类点集,而不是全集。
4.2对偶形式
有上面的原始形式
假设初始值w,b为0,最后学习得到的参数可表示为:
其,N为总样本个数。
感知机模型
梯度更新算法变为:
- 在训练集中选取数据
- 如果
- 转至(2)直到没有误分类数据
在对偶形式中,为了方便,可以将训练集中实例间的内积先计算出来用矩阵形式存储,这个矩阵也就是所谓的Gram矩阵
5 感知机的缺陷
这些限制来源于所使用的特征,感知机不会自动学习特征,必须通过人类手工设置特征进行学习,所以他的能力也就和特征有关。还有感知机是一个线性模型,他无法解决非线性问题。下面是