上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
4.7 BP算法推导结论总结
上一小节我们推导了BP算法的公式,可能部分同学暂时先跳过了详细推导的部分。如果推导过程看起来有点复杂,我们只看最后推导得到的结论即可。最后推导的结论也就是权值调整的公式为
这里的ΔWh表示第h层权值矩阵W的变化,η表示学习率,Yh-1表示网络第h-1层的输出,δh表示第h层的学习信号。
η是人为设置的超参数;只要把数据传入网络中就可以计算出Yh-1网络第h-1层的输出,所以这里要重点关注的是第h层的学习信号δh。学习信号有两个不同的公式,输出层的学习信号公式为
这里的δh+1表示输出层的学习信号;T表示数据的标签值;Yh+1表示模型的预测值;f′表示激活函数的导数;YhWh+1表示输出层信号的汇总。
T 是已知的数据标签;Yh+1可以通过传入数据计算得到;激活函数确定以后,f′也是已知的;Yh可以通过传入数据计算得到;Wh+1在网络进行随机初始化以后也确定下来了。所以这个公式里面的所有值都是已知的,或者可以计算得到。把δh+1计算出来以后,代入式(4.52)中就可以计算出输出层的权值矩阵要怎么调整了。
除输出层外,剩下的网络层的学习信号的公式都是:
从式(4.54)中我们可以看到,第h层的学习信号δh跟它的下一层h+1层的学习信号δh+1有关系,并且其还跟它的下一层h+1层的权值矩阵的转置(Wh+1)T有关系,以及跟f′(Yh-1Wh)相关。
所以我们在使用BP算法的时候,需要先根据网络预测的误差计算最后一层的学习信号,其次再计算倒数第二层的学习信号,最后再计算倒数第三层的学习信号,以此类推,从后向前计算。因此BP算法叫作误差反向传播算法。计算得到每一层的学习信号以后,再根据式(4.52)来计算每一层的权值矩阵如何调整,最后对所有层的权值矩阵进行更新。