当一名高尔夫球手第一次学玩高尔夫时,他们通常花大量时间来练习基本的挥杆。他们只会基于和改进他们基本的挥杆技术上,慢慢的开发别的击球技术,学习地滚球,左曲球和右曲球。相似的方式,目前我们只关注于理解反向传播算法。它就是我们的“基本挥杆技术”,是学习神经网络中大部分技术的基础。这一章将介绍一系列技术来提升我们反向传播的普通实现,并改进我们的学习网络。
本章将介绍的技术包括:一个更好的成本函数,称为交叉熵成本函数;四个被叫做“正则化”的方法 (L1和L2正则,dropout和人工扩大训练数据),这些将会使我们的网络在泛化方面超越训练数据;一个更好的初始化网络中权重的方法;和一套有助于为网络选择更好的超参数的规则。我还将简要介绍一下其他一些技术。这些讨论在很大程度上是相互独立的,所以如果你愿意的话,你可以跳着看。我们也将用代码实现大部分技术,并用它们来提升第一章手写分类问题中学习的结果。
当然,在神经网络里应用的技术里,我们只是覆盖了很少一部分。这里的理念是在超多可用的技术面前,我们只需要去深入研究其中重要的几个就可以了。掌握这些重要技术不仅是它们自身很有用,而且将加深你对使用神经网络时提升问题的理解。这将促使你做准备好去快速学习其他技术,所以你需要它们。