吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

02 改善深层神经网络:超参数调试、正则化以及优化总结

第一周 深度学习的实用层面

吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化


1、数据集划分:训练、验证、测试。验证数据是有偏估计,测试数据是无偏估计。
传统(数据量小):验证和测试数据集比较大(60,20,20)
现在(数据量大):验证和测试数据集比较大(98,1,1)
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
2、数据集分布保持一致:不同来源的数据集数据分布不一样,对于模型来说性能影响很大,所以要保持模型数据分布一致。

偏差方差

欠拟合和过拟合之间的权衡,并指出在深度学习这方面研究很少,一般单独考虑两者。
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

正则化

L1和L2正则
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
正则化参数拉姆达足够大,权重矩阵W被设置成接近于0的值(直观就是把隐藏层参数权重W设置为0),这样就消除了这些神经元的许多影响,这就相当于简化网络模型
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

dropout正则:随机隐退
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
数据增强:增加数据量
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
早停:根据训练和测试结果控制训练停止时间
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

数据预处理:标准化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
标准化后的数据有什么优点?通过参数优化图可以看出,标准化后的数据从椭圆变为圆形,这样优化训练的速度会得到提升,有利于模型训练。

梯度消失与梯度爆炸

导数的坡度会变得很大或者很小,甚至会以指数方式减小,加大了训练难度(**函数)。
解决方法:
1、得到好的初始化参数(只是其中之一后面补充)

第二周 优化算法

1、批梯度下降

介于梯度下降和随机梯度下降之间的方法,区别在优化的数据集方法,是一个一个,一块一块,还是全部。
批梯度下降比梯度下降在大数据集上表现更好(速度)。
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

2、指数加权平均

吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
提出指数加权是为了引出后面的先进优化算法。
详细优化算法介绍:http://blog.****.net/qq_26583415/article/details/79069264

第三周 超参数调试、batch正则化以及优化

1、为超参数选择合适的范围

吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
模型的选择还是看训练效果,比如学习曲线。

2、batch归一化

上面已经介绍标准化,效果类似,可以提高训练速度,并且可以是的超参数选择更加稳定。第二种观点:正则。
batch归一化:出现在**函数之前。
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化
batch归一化在测试数据集上的处理:单独估算,使用指数加权平均(涵盖了所有的batch),在训练过程中会得到每一次min-batch的均值和方差值,但对于测试数据来说可能需要一个一个预测,这是均值和方差的计算变得无效,解决方法是通过追踪训练过程中每个min-batch中的均值和方差来估算测试数据中的均值和方差使得batch归一化可以在测试集上使用。
吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

softmax回归(线性多分类器)

吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化

python TensorFlow

吴恩达-DeepLearning.ai-02 改善深层神经网络:超参数调试、正则化以及优化