机器学习BP算法公式推导
BP神经网络通过外界输入的数据,不断改变网络的连接权值,以使最后的输出结果不断的接近期望值。BP神经网络的本质是对各连接权值不断的动态调整,使期望值与输出值相差最小。
BP神经网络首先通过正向传播(输入数据-输入层-各隐藏层-输出层)求得输出数据。若输出数据与期望数值不符,则进行反向传播来调整参数。通过反向传播,以修正各层的连接权值。通过不断的“正向—反向”的迭代过程,使各权值的误差最小化,最终取得较为满意的训练模型参数。
基于BP算法的多层网络模型:
模型标号表示如下:
- 向前传播计算式:
- 网络误差与权值调整:
将隐藏层展开,代入3.4.7
以上公式是计算从输入数据到输出数据的结果。
为了得到输出值与预期值的最小差值,需要反复迭代递度下降法,求出权值的偏导数,不断优化连接权值参数。
2.推导过程
采用链式反推法,求输出层与隐藏层的权值偏导数,隐藏层与输入层的权值偏导数。
可进一步将权值优化写成:
可以看出:权值与输入数据成正比例关系。
下面具体求两个比例系数值:
这里的激活函数定义为:
得到两个比例系数:
最后得到权值调整公式: