反向传播
CNN模型的训练主要通过反向传播(Back Propagation,,BP)算法实现,该算法由误差信息通过链式传导,不断更新隐含层之间的权重矩阵,直到误差信息变小,网络收敛。
误差信息由损失函数进行计算,常用的损失函数函数为二次代价函数,具体公式为:
式中:
在了解反向传播算法之前,必须了解正向传播计算过程,如下:
式中:
最后一层的第个神经元中产生的误差可以定义为:
由后往前,第层的第个神经元中产生的误差如下式所示:
式中:
根据上述公式对权重的梯度进行计算,公式:
式中:
对偏置的梯度进行计算
式中:
根据上述公式获取权重和偏置的梯度后,使用梯度下降公式对权重和偏置进行更新。权重和梯度更新公式如下:
式中:
模型使用正向传播和反向传播算法,通过不断地迭代,调整网络模型中的权重和偏置,充分拟合目标函数,使网络模型性能达到最好。