一、BP算法的流程:
对每个训练集进行一下操作。
1.选取输入实例提供给的输入层神经元。
2.然后逐层将信号前传,指导产生输出层的结果。
3.然后计算输出层的误差,再将误差逆向传播至隐层神经元。
4.最后根据隐层神经元的误差来对连接权和阀值进行调整,该迭代过程循环进行,直到某些条件停止(可停止条件,如,训练误差已经到达一个很小的值)为止。
神经网络是一种难解释的“黑箱模型”。
BP算法被使用在多层前向神经网络中。
二、 BP算法操作:
1.通过迭代性得来处理训练集中实例
2.对比经过神经网路后输入层预测值(predicted value)与真实值(target value)之间。
3.反方向(输出层-->隐藏层-->输入层)来以最小化误差(error)来更新每个连接的权重(weight)。
4.算法的详细介绍:
输入; D数据集 学习率(Learning Rate)一个多层前向神经网络
输出: 一个训练好的神经网络
首先进行初始化权重(weights)和偏向(bias):随机初始化在(-1~1之间,或者在-0.5~0.5之间),每个神经单元就有一个偏向。
算法终止条件;
权重的更新低于某个阀值
预测的错误率低于某个阀值
达到预设一定的循环次数
实例如下图片所示: