反向传播(Backpropagation)是一种用于训练神经网络的算法。它基于链式法则(chain rule)来计算损失函数(loss function)关于神经网络中每个权重(weight)的梯度(gradient)。
在神经网络中,输入数据通过多个隐藏层进行前向传播(forward propagation),最终得到输出。这个输出与真实的目标值(target value)进行比较,计算出损失函数的值,损失函数衡量了模型预测结果与真实结果之间的误差。反向传播的目的是根据损失函数的误差,从输出层向输入层反向地调整神经网络中的权重,以减小损失函数的值,提高模型的准确性。
一、基本概念
1、链式法则
链式法则是微积分中用于求解复合函数导数的一条重要规则。当一个函数是由其他函数复合而成时,可以通过链式法则来找出这个复合函数的导数。链式法则表明,复合函数的导数等于外层函数在其内部函数值处的导数乘以内部函数关于自变量的导数。
(1)一元函数
对于一元函数的复合形式 ( f(g(x)) ),链式法则可以表示为:
其中,是函数
的导数,
是函数
的导数。