《神经网络和深度学习》系列文章十九:改进神经网络的学习方式
出处: Michael Nielsen的《Neural Network and Deep Learning》,点击末尾“阅读原文”即可查看英文原文。
本节译者:哈工大SCIR本科生 赵怀鹏 (https://github.com/zhaohuaipeng)
声明:我们将不定期连载该书的中文翻译,如需转载请联系wechat_editors[at]ir.hit.edu.cn,未经授权不得转载。
使用神经网络识别手写数字
反向传播算法是如何工作的
改进神经网络的学习方法
改进神经网络的学习方式
交叉熵损失函数
使用交叉熵损失来分类MNIST数字集
交叉熵意味着什么?它从哪里来?
Softmax
过拟合和正则化
正则化
为什么正则化能够降低过拟合?
其他正则化技术
参数初始化
重温手写数字识别:代码
如何选择神经网络的超参数
其他技术
神经网络能够计算任意函数的视觉证明
为什么深度神经网络的训练是困难的
深度学习
当高尔夫运动员刚开始接触高尔夫时,他们通常会花费大量的时间来练习基本的挥杆。只有不断矫正自己的挥杆方式,才能学好其它的技能:切球,打左曲球,右曲球。同理,到目前为止我们把精力都放在了理解反向传播算法(backpropagation algorithm)上。这是我们的最基本的“挥杆方式”,它是大多数神经网络的基础。在本章中我将介绍一套技术能够用于改进朴素的反向传播算法,进而能改进神经网络的学习方式。
我们将要在本章介绍的技术包含:选取更好的代价函数,就是被称为交叉熵代价函数(the cross-entropy cost function);四种正则化方法(L1和L2正则、dropout、训练数据的扩展),这能让我们的网络适应更广泛的数据;一种更好的初始化权重(weight)的方法;一系列更具启发式的方法用来帮助我们选择网络的超参数(hyper-parameters)。我也会简单介绍一下其它的技术。这些讨论的内容之间是独立的,因此你可以跳跃着阅读。我们也会用代码实现这些技术去改进我们第一章的手写数字识别的结果。
当然了,我们也只是涉及了神经网络众多技术的一部分。但是万变不离其宗,我们只需要掌握一些核心的技术就行。掌握这些核心的技术不仅仅是因为它们好用,更重要的是它们能够帮助你深入理解使用神经网络时可能遇到的问题,也能帮助你很快上手其它的技术。
“哈工大SCIR”公众号
编辑部:郭江,李家琦,徐俊,李忠阳,俞霖霖
本期编辑:李忠阳
长按下图并点击 “识别图中二维码”,即可关注哈尔滨工业大学社会计算与信息检索研究中心微信公共号:”哈工大SCIR” 。点击左下角“阅读原文”,即可查看原文。