第5章 误差反向传播法

优质
小牛编辑
113浏览
2023-12-01

上一章中,我们介绍了神经网络的学习,并通过数值微分计算了神经网络的权重参数的梯度(严格来说,是损失函数关于权重参数的梯度)。数值微分虽然简单,也容易实现,但缺点是计算上比较费时间。本章我们将学习一个能够高效计算权重参数的梯度的方法——误差反向传播法。

要正确理解误差反向传播法,我个人认为有两种方法:一种是基于数学式;另一种是基于计算图 (computational graph)。前者是比较常见的方法,机器学习相关的图书中多数都是以数学式为中心展开论述的。因为这种方法严密且简洁,所以确实非常合理,但如果一上来就围绕数学式进行探讨,会忽略一些根本的东西,止步于式子的罗列。因此,本章希望大家通过计算图,直观地理解误差反向传播法。然后,再结合实际的代码加深理解,相信大家一定会有种原来如此!的感觉。

此外,通过计算图来理解误差反向传播法这个想法,参考了 Andrej Karpathy 的博客 [4] 和他与 Fei-Fei Li 教授负责的斯坦福大学的深度学习课程 CS231n [5]