感知机模型(未完待续)
感知机通过学习出一个超平面将数据分隔成两部分,实现二分分类的效果。
使用感知机的前提是数据线性可分(凸包?)
公式
f(x) = sign(wx + b)
其中w和x都是向量。 w表示weighted vector, b表示bias。 当w为二维时,表示用一条线分割平面。 当w为三维时,表示用一个平面分隔一个三维空间。
wx+b的几何解释
w为超平面的法向量,b为截距。点到平面距离:
(wx + b) / ||w||
感知机策略
如何表示经验风险? 经验风险是损失函数的均值,所以要先确定损失函数。 损失函数的直观理解为误差, 误分类点的总数即为一个很容易想到的损失函数。 然而这个损失函数对w,b不可导,无法优化。 因此要想办法把 损失函数表示为w,b的方程。
这里使用误分类点到超平面的距离作为损失函数,可以想像,误分类点越多,距离之和越大;没有误分类点,距离之和为0.
感知机算法
梯度下降: https://zhuanlan.zhihu.com/p/39842768
1. 初始化参数
2. 找误分类点,做梯度下降
3. 循环1,2, 直到没有误分类点
直观解释: 找到误分类点时,一次梯度下降会让超平面往误分类点移动,所以分类效果始终向着好的方向前进。
对偶形式
https://www.zhihu.com/question/26526858/answer/136577337