https://www.toutiao.com/a6704554580568441355/
2019-06-20 18:15:58
1. 前言
感知机是1957年,由Rosenblatt提出会,是神经网络和支持向量机的基础。
2. 感知机的原理
感知机是二分类的线性模型,其输入是实例的特征向量,输出的是事例的类别,分别是+1和-1,属于判别模型。
假设训练数据集是线性可分的,感知机学习的目标是求得一个能够将训练数据集正实例点和负实例点完全正确分开的分离超平面。如果是非线性可分的数据,则最后无法获得超平面
2.1 点到线的距离
2.2 样本到超平面距离
2.2 超平面(Hyperplanes)
3. 感知机模型
感知机从输入空间到输出空间的模型如下:
3.1 感知机的损失函数
3.2 为什么可以不考虑1/||w||
4. 感知机学习算法
感知机学习算法是对上述损失函数进行极小化,求得w和b。但是用普通的基于所有样本的梯度和的均值的批量梯度下降法(BGD)是行不通的,原因在于我们的损失函数里面有限定,只有误分类的M集合里面的样本才能参与损失函数的优化。所以我们不能用最普通的批量梯度下降,只能采用随机梯度下降(SGD)。目标函数如下:
4.1 原始形式算法
4.2 对偶形式算法
这样我们就得出了感知机的对偶算法。
4.3 原始形式和对偶形式的选择
- 在向量维数(特征数)过高时,计算内积非常耗时,应选择对偶形式算法加速。
- 在向量个数(样本数)过多时,每次计算累计和就没有必要,应选择原始算法
5. 训练过程
我们大概从下图看下感知机的训练过程。
线性可分的过程:
线性不可分的过程:
转载:出处https://www.cnblogs.com/huangyc/p/9706575.html