神经网络初探:反向传播算法
链式法则求导的不足
上回说到用梯度下降法优化神经网络参数,使得代价函数最小,这里面的核心问题在于求解偏导。也许很多人会说求解偏微分很困难吗?用链式法则就是喽。接下来举个例子说明一下使用链式法则求解神经网络中的偏导为什么不可取。
如下图所示的两层神经网络(输入层不计入层数),
ank 代表第n层的第k个神经元的输出值, wnjk 表示第(n-1)层第k个神经元指向第(n)层第j个节点的权重(weight), bnk 表示第n层的第k个神经元的偏移量(bias)。出于简单考虑,假设就一组数据,代价函数可以作如下定义:
C=12∑i(a2i−yi)2
于是,根据链式法则,我们可以得到如下的偏导表达式:
σ(Z)σ′(Z)Zlja0al∂C∂w1nm=========