fast.ai 深度学习笔记(一)(2)

简介: fast.ai 深度学习笔记(一)

fast.ai 深度学习笔记(一)(1)https://developer.aliyun.com/article/1482671

更好的方法[47:35]

  • 具有这三个特性的算法类别是深度学习。

无限灵活的函数:神经网络[48:43]

深度学习使用的基础函数称为神经网络:

  • 现在你需要知道的是,它由许多简单的线性层和许多简单的非线性层组成。当你交错这些层时,你会得到一个称为通用逼近定理的东西。通用逼近定理所说的是,只要添加足够的参数,这种函数可以解决任何给定的问题,达到任意接近的精度。

全能参数拟合:梯度下降[49:39]

快速且可扩展:GPU[51:05]

上面显示的神经网络示例有一个隐藏层。我们在过去几年学到的一些东西是,这种神经网络如果不添加多个隐藏层,就不会快速或可扩展,因此被称为“深度”学习。

将所有内容放在一起[53:40]

以下是一些例子:

诊断肺癌[56:55]

其他当前应用:

卷积神经网络[59:13]

线性层

setosa.io/ev/image-kernels/

非线性层[01:02:12]

神经网络和深度学习

在这一章中,我给出了普适性定理的简单且大部分是可视化的解释。我们将一步一步地进行…

Sigmoid 和 ReLU

  • 线性层和逐元素非线性函数的组合使我们能够创建任意复杂的形状 — 这是普适性定理的本质。

如何设置这些参数来解决问题[01:04:25]

  • 随机梯度下降 — 我们沿着山坡小步前进。步长被称为学习率

  • 如果学习率太大,它会发散而不是收敛
  • 如果学习率太小,将需要很长时间

可视化和理解卷积网络[01:08:27]

我们从一些非常简单的东西开始,但如果我们将其用作足够大的规模,由于普适性定理和深度学习中多个隐藏层的使用,我们实际上获得了非常丰富的能力。这实际上是我们在训练狗和猫识别器时使用的方法。

狗 vs. 猫再访——选择学习率[01:11:41]

learn.fit(0.01, 3)
  • 第一个数字0.01是学习率。
  • 学习率决定了你想要多快或多慢地更新权重(或参数)。学习率是最难设置的参数之一,因为它会显著影响模型性能。
  • 方法learn.lr_find()可以帮助你找到一个最佳的学习率。它使用了 2015 年的论文Cyclical Learning Rates for Training Neural Networks中开发的技术,我们简单地从一个非常小的值开始不断增加学习率,直到损失停止减少。我们可以绘制跨批次的学习率,看看这是什么样子。
learn = ConvLearner.pretrained(arch, data, precompute=True)
learn.lr_find()

我们的learn对象包含一个包含我们学习率调度器的属性sched,并具有一些方便的绘图功能,包括这个:

learn.sched.plot_lr()

  • Jeremy 目前正在尝试指数增加学习率与线性增加学习率。

我们可以看到损失与学习率的图表,以查看我们的损失何时停止减少:

learn.sched.plot()

  • 然后我们选择损失仍然明显改善的学习率 — 在这种情况下是1e-2(0.01)

选择迭代次数[1:18:49]

'''
[ 0\.       0.04955  0.02605  0.98975]                         
[ 1\.       0.03977  0.02916  0.99219]                         
[ 2\.       0.03372  0.02929  0.98975]
'''
  • 你想要多少都可以,但如果运行时间太长,准确性可能会开始变差。这被称为“过拟合”,我们稍后会更多地了解它。
  • 另一个考虑因素是你可用的时间。

技巧和窍门[1:21:40]

1.Tab — 当你记不住函数名时,它会自动完成

2. Shift + Tab — 它会显示函数的参数

3. Shift + Tab + Tab — 它会显示文档(即 docstring)

4. Shift + Tab + Tab + Tab — 它会打开一个带有相同信息的单独窗口。

在单元格中键入?后跟一个函数名并运行它将与shift + tab(3 次)相同

5. 输入两个问号将显示源代码

6. 在 Jupyter Notebook 中键入H将打开一个带有键盘快捷键的窗口。尝试每天学习 4 或 5 个快捷键

7. 停止 Paperspace、Crestle、AWS — 否则你将被收费$$

8. 请记住关于论坛course.fast.ai/(每节课)的最新信息。

fast.ai 深度学习笔记(一)(3)https://developer.aliyun.com/article/1482675

相关文章
|
1月前
|
机器学习/深度学习 人工智能 安全
探索AI的未来:从机器学习到深度学习
【10月更文挑战第28天】本文将带你走进AI的世界,从机器学习的基本概念到深度学习的复杂应用,我们将一起探索AI的未来。你将了解到AI如何改变我们的生活,以及它在未来可能带来的影响。无论你是AI专家还是初学者,这篇文章都将为你提供新的视角和思考。让我们一起探索AI的奥秘,看看它将如何塑造我们的未来。
72 3
|
2月前
|
机器学习/深度学习 算法 测试技术
深度学习环境搭建笔记(二):mmdetection-CPU安装和训练
本文是关于如何搭建深度学习环境,特别是使用mmdetection进行CPU安装和训练的详细指南。包括安装Anaconda、创建虚拟环境、安装PyTorch、mmcv-full和mmdetection,以及测试环境和训练目标检测模型的步骤。还提供了数据集准备、检查和网络训练的详细说明。
114 5
深度学习环境搭建笔记(二):mmdetection-CPU安装和训练
|
1月前
|
机器学习/深度学习 数据采集 人工智能
AI赋能教育:深度学习在个性化学习系统中的应用
【10月更文挑战第26天】随着人工智能的发展,深度学习技术正逐步应用于教育领域,特别是个性化学习系统中。通过分析学生的学习数据,深度学习模型能够精准预测学生的学习表现,并为其推荐合适的学习资源和规划学习路径,从而提供更加高效、有趣和个性化的学习体验。
99 9
|
2月前
|
机器学习/深度学习 数据可视化 计算机视觉
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
这篇文章详细介绍了如何通过可视化深度学习中每层特征层来理解网络的内部运作,并使用ResNet系列网络作为例子,展示了如何在训练过程中加入代码来绘制和保存特征图。
65 1
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
|
2月前
|
机器学习/深度学习
深度学习笔记(十二):普通卷积、深度可分离卷积、空间可分离卷积代码
本文探讨了深度可分离卷积和空间可分离卷积,通过代码示例展示了它们在降低计算复杂性和提高效率方面的优势。
130 2
深度学习笔记(十二):普通卷积、深度可分离卷积、空间可分离卷积代码
|
2月前
|
机器学习/深度学习 并行计算 PyTorch
深度学习环境搭建笔记(一):detectron2安装过程
这篇博客文章详细介绍了在Windows环境下,使用CUDA 10.2配置深度学习环境,并安装detectron2库的步骤,包括安装Python、pycocotools、Torch和Torchvision、fvcore,以及对Detectron2和PyTorch代码的修改。
234 1
深度学习环境搭建笔记(一):detectron2安装过程
|
2月前
|
机器学习/深度学习 算法 PyTorch
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
这篇文章详细介绍了多种用于目标检测任务中的边界框回归损失函数,包括IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU和WIOU,并提供了它们的Pytorch实现代码。
227 1
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
|
1月前
|
机器学习/深度学习 人工智能 算法
AI在医疗:深度学习在医学影像诊断中的最新进展
【10月更文挑战第27天】本文探讨了深度学习技术在医学影像诊断中的最新进展,特别是在卷积神经网络(CNN)的应用。文章介绍了深度学习在识别肿瘤、病变等方面的优势,并提供了一个简单的Python代码示例,展示如何准备医学影像数据集。同时强调了数据隐私和伦理的重要性,展望了AI在医疗领域的未来前景。
62 2
|
2月前
|
机器学习/深度学习 自然语言处理 并行计算
深度学习笔记(十四):Transormer知识总结
关于深度学习中Transformer模型的知识总结,涵盖了Self-attention机制、QKV、Multi-head attention、位置编码和并行运算等关键概念,以及如何在PyTorch中实现Self-attention。
65 1
|
2月前
|
机器学习/深度学习 vr&ar
深度学习笔记(十):深度学习评估指标
关于深度学习评估指标的全面介绍,涵盖了专业术语解释、一级和二级指标,以及各种深度学习模型的性能评估方法。
44 0
深度学习笔记(十):深度学习评估指标