1.感知机模型
单层感知机模型
整个单层感知机的工作过程是一个前馈的过程,即输入节点乘以权重,加和汇总以后经过激活函数激活最后输出的过程。图上图所示。
2.多层神经网络
我们知道,单层感知机的应用范围极其有限,只能解决二分类问题,实际应用是我们往往使用多个感知机联合,来解决实际问题。如下图所示。
图中,和均为权重参数,是->计算的权重系数,为->的权重系数。像如此复杂的结构是不可能一次计算就得到我们想要的结果呢,那么怎样去一步一步更新迭代权值进而得到最终的结果呢?答案是BP反向传播。
3.BP反向传播
反向传播算法分为两步进行:
正向传播:输入的样本从输入层经过隐单元一层一层进行处理,通过所有的隐层之后,传向输出层()。
反向传播:把误差信号按原来正向传播的通路反向传回,并对每个隐层的各个神经元的权系数进行修改,以使误差信号趋向最小。
信号误差按照下式表示:
其中:为信号误差,为模型输出值,为真值
此时问题转换成,为了让信号误差达到最佳小,求解此时权重的变化。
此处激活函数选用sigmoid函数
为了更清晰的表达,对神经元节点做了简化处理(只保留一个输入节点,隐藏层,输出节点):
如下图所示:
以下是权重改变量公式推导过程:
首先,sigmoid函数自身性质:
(1)的权值变化
(2)的权值变化
仔细观察两个式子,可以发现迭代规律:
如此就得到了改变权值的迭代公式,该公式可以推广为矩阵形式:
其中,L指输出层,l是中间层,是表征权值变化的量。
以上即为BD传播的学习法,希望对大家理解有所帮助~