参考资料
chapter2
Training Machine Learning Algorithms for Classifcation
引言:
在学习过基本的单层感知机模型之后,我们现在来学习了解另一种单层神经网络模型:
ADAptive LInear NEuron (Adaline) 自适应线性神经单元 这种 Adaline 的特别之处在于 它引入了损失函数 cost function
Adaline 与 Perceptron 的根本区别在于它们对权值更新方法的不同
***the weights are updated based on a linear activation function rather than a unit step function ***
Perceptron (感知机):
Adaline (自适应线性) J是损失函数
展开形式如下
......
算法原理
1:算法流程
自适应线性单元 Adaline
感知机 Perceptron
Adaline 比 perceptron 多了一个量化器,用于将激励函数输出的结果进行二分,来判断样本的类别
2: 损失函数
损失函数是用来衡量模拟结果与实际结果差异的一个函数
我们的思路是,选择一个方法使得损失函数趋向最小值,那么这也就说明了我们的模型对实际符合的越好,根据这一个原理去更新权值
思路图:
在 Adaline 中,我们选择 SSE 平方差函数作为损失函数
由于 Adaline 采用的线性激励函数 (本次练习采用的是恒同映射) 是一个可微的函数(differentiable), 所以我们可以定义 J 的梯度(偏分)
把这个式子用矩阵表达一下~
再根据这个梯度更新权值
分类根据每一次迭代使用的训练集范围不同,梯度下降算法可以分成三种: 批量梯度下降(BGD),随机梯度下降(SGD)