吴恩达深度学习学习笔记——C2W3——超参数调试、Batch正则化和程序框架-1

1.1 超参数的调试(调参)

超参数有哪些?学习率α、动量梯度下降法参数β、Adam算法参数(β1、β2、ε)、神经网络的层数、神经网络各隐层的节点数、学习率衰减系数、mini-batch大小等

 

随机选择超参数一般胜过表格法(按照表格中的调整值一步步调整各参数,效率较低)

 

使用由粗到细的方法(coarse to fine)

1.2 为超参数选择合适的范围

使用普通刻度(均匀刻度,uniform scale)随机选择超参数,如神经网络的层数、神经网络各隐层的节点数

 

选择合适的超参数刻度(如,学习率可使用对数刻度,而不是均匀分布的普通刻度)

 

对于指数加权平均数(如,动量梯度下降参数β),应使用指数刻度而不是均匀刻度。如果使用均匀刻度,会发现当β接近1时,模型受更多数据量的影响,如,β从0.999提高到0.9995时,要考虑的历史数据量从1000上升到了2000,远高于β从0.9000提高到0.9005时的情况。

 

1.3 超参数训练的实践:Pandas VS Caviar

可从跨学科领域获取灵感(cross-fertilization),重新调整超参数

 

两种调参方式:熊猫育子方式(Panda)和鱼子方式(Caviar)

熊猫方式:针对一个模型精心调节参数,让其变得更优秀

鱼子方式:并行训练多个模型,选择最好的模型

1.4 正则化网络的激活函数

正则化输入可以加速学习过程

 

Batch Norm(批次正则化、批次归一化)的实现

1.5 在神经网络中应用Batch Norm

在神经网络中加入Batch Norm处理(介于线性值Z和激活函数a之间)

 

在mini-batch中使用Batch Norm(由于引入了Batch Norm参数β和γ,Z中的偏移项b可以省略或置零)

 

 

引入Batch Norm后梯度下降的实现

猜你喜欢

转载自blog.csdn.net/hpdlzu80100/article/details/113614812
今日推荐