目录
1. 感知机定义:
给定输入x 权重w 偏移量 b 感知机输出为:
其中
感知机实际上是一个二分类问题,输出为:-1 (0)或1
与线性回归的区别:线性回归是一个实际上的实数,这里是一个离散的类。
与softmax的区别:softmax 如果有n个类,softmax 会有n个输出,输出每个元素的概率。
2. 具体算法:
我的理解:
1. 先给出初始权重w和偏移b
2. 重复下述步骤:
先对权重和xi做内积运算,然后加上偏移b,乘以yi如果乘积<=0,表示分类错误。(因为如果真实分类分类为正,预测结果为负,乘积会小于0。或者 真实结果分类为负,但是预测结果为正的话,乘积也会小于0 ,也表示分类错误。)
然后更新w=w+yi*xi和b=b+yi。
3. 直到所有的结果都分类正确。
等价于使用批量大小为1 的梯度下降,并使用如下损失函数:
先对w和x做内积运算,然后乘以y取负值,然后对求得的值与零做最大值得比较。更新梯度
我的理解:如果内积结果与真实值同号,则相乘结果为正,则表示预测正确,就给他加个符号,更新的时候以零为梯度。否则就以乘积的结果更新梯度。
我有个疑问,没有对偏移b进行更新?(或者是在内积运算中省略)
3. 收敛定理:
我的理解:
收敛定理就是说什么时候可以停止分类。
假设区域为r 余量ρ使得存在一个分界面,相当于在一定范围内可以使得感知机能正确的将所有的类分开,即找到最优解。
如果ρ特别小,感知机需要花比较长的时间收敛。
4. 感知机存在的问题
我的理解:
XOR函数: 相同为-1 不同为 +1 。
感知机只能区分线性分割面,对于XOR函数,不能通过一条线性来分割,所以后面会讲到多层感知机。