Coursera Deep Learning笔记 改善深层神经网络:超参数调试 正则化以及梯度相关

本文是Coursera深度学习课程的笔记,重点讨论如何改善深层神经网络,包括训练集、验证集、测试集的划分,偏差与方差分析,正则化方法如L1、L2正则化,随机失活(Dropout)以及梯度消失/爆炸的解决策略。通过正则化减少过拟合,通过归一化加速训练,确保模型的稳定性和性能。
摘要由CSDN通过智能技术生成

笔记:Andrew Ng's Deeping Learning视频

参考:https://xienaoban.github.io/posts/41302.html

参考:https://blog.csdn.net/u012328159/article/details/80210363

1. 训练集、验证集、测试集(Train, Dev, Test Sets)

  • 当数据量小的时候, 70% 训练, 30% 测试;或 60% 训练、20% 验证、20%测试.

    • 训练集( training set):用来训练模型,即被用来 学习 得到系统的 参数取值.

    • 测试集( testing set):用于最终报告模型的评价结果,因此在训练阶段测试集中的样本应该是不可见的.

    • 对训练集做进一步划分为 训练集、验证集 validation set.

      • 验证集:与测试集类似,也是用于评估模型的性能.

      • 区别:是 验证集 主要 用于 模型选择 和 调整超参数,因而一般不用于报告最终结果.

  • 当我们有大于100万条数据时, 测试集验证集各取1万条即可, 足以评估单个分类器.

  • 确保验证集和测试集的数据来自同一分布.

  • 如果不需要无偏估计, 可以不设置测试集; 当没设立测试集的时候, 验证集通常被人们称为测试集.

2. 偏差、方差(Bias, Variance)

  • 高偏差(high bias)称为"欠拟合"(underfitting), 训练集误差与验证集误差都高.

    • 选择一个新的网络,比如含有更多隐藏层或者隐藏单元的网络,或者花费更多时间来训练网络,或者尝试更先进的优化算法【后面深入讲解】
  • 高方差(high variance)称为"过拟合"(overfitting), 训练集误差很低,而验证集误差很高.

    • 解决方法是 正则化

    • 准备更多的数据.

3. 正则化(Regularization)

  • 避免过拟合
  • 减少网络误差

3.1 逻辑回归中的L1正则化, L2正则化

对于L1正则化, 为代价函数添加L1范数:(几乎不用了)

\[J(w, b) = \frac{1}{m} \sum^{m}_{i=1} \mathcal{L}(a^{(i)}, y^{(i)}) + \frac{\lambda}{2m} ||w||_1 \]

其中:

\[||w||_1 = \sum^{n_x}_{j=1} |w_j| \]
  • 使用L1正则化, w最终会是稀疏的(w中含很多0), 有利于压缩模型
  • 但也没有降低太多内存, 所以不能将压缩作为L1正则化的目的。通常我们使用L2正则化.

对于L2正则化, 为代价函数添加L2范数:

\[J(w, b) = \frac{1}{m} \sum^{m}_{i=1} \mathcal{L}(a^{(i)}, y^{(i)}) + \frac{\lambda}{2m} ||w||_2^2 \]

其中:

\[||w||^2_2 = \sum^{n_x}_{j=1} w_j^2 = w^Tw \]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值