深度学习调参技巧:Mini-batch, Momentum与Adam算法解析
需积分: 9 27 浏览量
更新于2024-07-19
收藏 6.99MB PDF 举报
"这篇笔记是关于DeepLearning.ai课程的第二部分,主要涵盖了神经网络的参数调优和训练技巧,由Andrew Ng教授讲解。笔记中讨论了mini-batch的概念、指数加权平均、Adam优化算法、学习率衰减、神经网络的局部最优问题,以及在模型训练中遇到的drop测试题和bias/variance问题,并提到了He初始化方法。"
1. **Mini-Batch**:
Mini-batch 是一种训练策略,每次迭代时使用一部分而不是全部训练数据,这样可以降低计算复杂性并引入一定的随机性,帮助模型跳出局部最优。1个epoch表示遍历整个训练集一次。当batch size等于1时,称为SGD(随机梯度下降),它具有较高的探索性,但收敛速度较慢;而较大的batch size则可以提供更稳定的梯度估计,但可能导致收敛到较差的局部最小值。
2. **指数加权平均(Exponentially Weighted Averages)**:
这是一种技术,用于平滑序列数据,抑制短期波动,保留长期趋势。在优化过程中,如Momentum方法,它被用来结合过去的梯度信息,以加速收敛。
3. **Adam优化算法**:
Adam结合了动量梯度下降(Momentum)和RMSprop的优点,通过两个指数加权移动平均分别处理梯度的一阶矩和二阶矩。超参数β1和β2分别控制这两者的权重,ε用于防止分母为零的风险。通常,我们会使用默认的β1和β2值,然后通过调整学习率(lr)来观察训练效果。
4. **学习率衰减(Learning Rate Decay)**:
学习率衰减策略有助于在训练后期减小步长,使得模型能够在接近最优解时更加精细地调整参数。可以使用线性、指数或其他方式来减小学习率,避免过拟合和早停问题。
5. **神经网络的局部最优问题**:
在高维参数空间中,局部最优并不常见,更常见的问题是鞍点。平缓的梯度区域会减慢学习速度,因此优化算法如Adam和学习率衰减是关键,它们有助于在这些区域中高效地搜索。
6. **Dropout测试题的问题**:
增加keep_prob(保留概率)实际上意味着减少dropout的比例,这会导致更多的神经元在训练期间保持激活,可能会提高模型在训练集上的性能,因为模型有了更多依赖的特征。
7. **Bias/Variance测试题问题**:
使用更大的神经网络(bigger NN)不能直接解决高方差问题,因为增加模型复杂性可能导致过拟合,从而增加模型对训练数据的依赖,而非提高泛化能力。
8. **He初始化**:
He初始化是为了改善神经网络中的权重初始化,使得输入层到隐藏层的权重矩阵的方差与输入节点的数量成比例,通常是1/n或2/n,其中n是输入节点的数量。这种方法有助于在ReLU激活函数中平衡前向传播的信号强度,促进训练的稳定性。
以上知识点是深度学习中至关重要的,理解和应用这些概念可以显著提高模型的训练效果和性能。
2014-09-25 上传
2020-01-16 上传
2021-04-19 上传
2021-09-30 上传
2018-12-31 上传
2022-09-20 上传
2021-04-13 上传
2021-04-30 上传
conson0214
- 粉丝: 0
- 资源: 4
最新资源
- Java+Servlet+API说明文档
- spring中文版教程
- Discrete time model and algorithm for container yard crane scheduling.pdf
- ARM公司的AMBA总线规范
- C++Builder6.0界面实例开发
- C++Programming
- 我的操作系统实验-银行家算法
- java字符反转代码
- Linux初学者入门优秀教程
- 手机号码和email校验的Js代码
- NAND FLASH PMON烧写指南
- 09版三级网络技术上级100题
- voip详细原理说明
- 软件集成测试工作指南
- JAVASCRIPT真经
- SAP 常用数据表 列表 开发人员的必备资料哦