fast.ai 深度学习笔记:第一部分第二课

原文:Deep Learning 2: Part 1 Lesson 2

作者:Hiromi Suenaga

回顾上一课 [01:02]

  • 我们使用 3 行代码来构建图像分类器。
  • 为了训练模型,需要在PATH下以某种方式组织数据(在本例中为data/dogscats/ ):

  • 应该有train文件夹和valid文件夹,并且在每个文件夹下都有带有分类标签的文件夹(例如本例中的cats ),其中包含相应的图像。
  • 训练输出: [epoch #, training loss, validation loss, accuracy]
 [ 0\. 0.04955 0.02605 0.98975] 

学习率 [4:54]

  • 学习率的基本思想是,它将决定我们解决方案改进的速度。

  • 如果学习率太小,则需要很长时间才能达到最低点。
  • 如果学习率太大,它可能会在底部摆动。
  • 学习率查找器( learn.lr_find )将在每个小批量之后提高学习率。 最终,学习率太高,损失会变得更糟。 然后,我们查看学习率与损失的关系曲线,确定最低点并返回一个幅度,并选择它作为学习率(下例中为1e-2 )。
  • 小批量是我们每次查看的一组图像,因此我们有效地使用 GPU 的并行处理能力(通常一次 64 或 128 个图像)
  • 在 Python 中:

  • 通过调整这一个数字,你应该能够获得相当不错的结果。 fast.ai 库为你选择其余的超参数。 但随着课程的进展,我们将了解到还有一些我们可以调整的东西,可以获得更好的结果。 但学习率是我们设定的关键数字。
  • 学习率查找器位于其他优化器(例如动量,Adam 等)的上层,并根据你正在使用的调整(例如高级优化器但不限于优化器)帮助你选择最佳学习率。
  • 问题:在迭代期间改变学习率,优化器会发生什么? 这个查找器是否选择了初始学习率? [14:05] 我们稍后会详细了解优化器,但基本答案是否定的。 即使 Adam 的学习率也会除以先前的平均梯度以及最近的梯度的平方和。 即使那些所谓的“动态学习率”方法也具有学习率。
  • 使模型更好的最重要的事情是,为它提供更多数据。 由于这些模型有数百万个参数,如果你训练它们一段时间,它们就会开始所谓的“过拟合”。
  • 过拟合 - 模型开始在训练集中看到图像的具体细节,而不是学习可以传递到验证集的一般内容。
  • 我们可以收集更多数据,但另一种简单方法是数据增强。

阅读更多

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文章主要分为:一、深度学习概念;二、国内外研究现状;三、深度学习模型结构;四、深度学习训练算法;五、深度学习的优点...
    艾剪疏阅读 21,921评论 0 58
  • www.dlworld.cn 听说你了解深度学习最常用的学习算法:Adam优化算法?-深度学习世界深度学习常常需要...
    hzyido阅读 56,294评论 0 24
  • 突然很想给未来的自己写一封信。我想告诉未来的自己,当有一天迫不得已因社会环境影响而失去自我的时候,能读一读今天所写...
    光芒万丈的远方阅读 523评论 4 13
  • 1、一个真正竭尽全力的人,运气都不会差2、除了努力,我们别无选择一个人3、当一个人失去追求卓越的信念,平庸就开始了...
    百步飞剑阅读 785评论 0 1
  • 快中秋了,画个满月
    大耗子MK2阅读 353评论 2 2