60 分钟入门 PyTorch,官方教程手把手教你训练第一个深度学习模型

举报
橘座 发表于 2019/10/28 15:34:42 2019/10/28
【摘要】 近期的一份调查报告显示:PyTorch 已经力压 TensorFlow 成为各大顶会的主流深度学习框架。想发论文,不学 PyTorch 怎么行?那么,入门 PyTorch 深度学习需要多久?PyTorch 的一份官方教程表示:只需要 60 分钟。教程链接:https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html...

近期的一份调查报告显示:PyTorch 已经力压 TensorFlow 成为各大顶会的主流深度学习框架。想发论文,不学 PyTorch 怎么行?那么,入门 PyTorch 深度学习需要多久?PyTorch 的一份官方教程表示:只需要 60 分钟。


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1



教程链接:https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html



这是一份非常简洁的学习材料,目标是让学习者了解 PyTorch 的 Tensor 库和神经网络,以及如何训练一个可以进行图像分类的神经网络。



虽然是入门课程,但也有一定门槛:课程参与者要具备 Numpy 基础知识。




该教程共分为五节:



  1. PyTorch 简介

  2. Autograde:自动微分

  3. 神经网络

  4. 训练一个分类器

  5. 数据并行






本教程的五大板块。




第 1 节「PyTorch 简介」介绍了 PyTorch 的基本技术细节,如 Tensor、基本操作句法,还包括 Torch Tensor 与 Numpy 数组之间的转换、CUDA Tensor 等基础知识。




如果想进一步了解 PyTorch 的 Tensor 操作信息,还可以按文中给出的链接找到相应教程,包括数学运算、线性代数、随机数等。


第 2 节介绍了 PyTorch 中用于微分的包——Autograd。它是 PyTorch 神经网络的核心,为张量的所有操作提供了自动微分。为了更加直观地理解与之相关的术语,教程还给出了一些例子。




第 3 节介绍了训练一个神经网络的常见步骤,包括定义具有一些可学习参数的神经网络、遍历输入数据集、通过神经网络处理输入、计算损失、将梯度传播回网络参数、更新网络权重等。





在学会定义网络、计算损失、更新权重之后,第 4 节开始讲解如何训练一个分类器。教程使用了 CIFAR10 数据集,将训练步骤分为 5 步:




1. 载入 CIFAR10 并将其标准化;
2. 定义一个卷积神经网络;
3. 定义损失函数和优化器;
4. 训练网络;
5. 在测试集上测试网络




CIFAR10 数据集。




此外,这一节还讲解了如何在 GPU 上训练神经网络。




如果想进一步加速训练过程,还可以选修第 5 节——数据并行,学习如何在多个 GPU 上训练网络。




在这一教程中,每个小节都有 GoogleColab 链接,可以让学习者实时运行代码,获取实战经验。


640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1



如果想在本地运行文件,还可以下载 Notebook。


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1


参考链接:

  • https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html

  • https://news.ycombinator.com/item?id=21240057

  • https://www.youtube.com/watch?v=u7x8RXwLKcA


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。