前言

自 2017 年 1 月 PyTorch 推出以来,其热度持续上升,一度有赶超 TensorFlow 的趋势。PyTorch 能在短时间内被众多研究人员和工程师接受并推崇是因为其有着诸多优点,如采用 Python 语言、动态图机制、网络构建灵活以及拥有强大的社群等。因此,走上学习 PyTorch 的道路已刻不容缓。

本教程以实际应用、工程开发为目的,着重介绍模型训练过程中遇到的实际问题和方法。如上图所示,在机器学习模型开发中,主要涉及三大部分,分别是数据、模型和损失函数及优化器。本文也按顺序的依次介绍数据、模型和损失函数及优化器,从而给大家带来清晰的机器学习结构。

通过本教程,希望能够给大家带来一个清晰的模型训练结构。当模型训练遇到问题时,需要通过可视化工具对数据、模型、损失等内容进行观察,分析并定位问题出在数据部分?模型部分?还是优化器?只有这样不断的通过可视化诊断你的模型,不断的对症下药,才能训练出一个较满意的模型。

为什么写此教程

前几年一直在用 Caffe 和 MatConvNet,近期转 PyTorch。当时只想快速地用上 PyTorch 进行模型开发,然而搜了一圈 PyTorch 的教程,并没有找到一款适合的。很多 PyTorch 教程是从学习机器学习 (深度学习) 的角度出发,以 PyTorch 为工具进行编写,里面介绍很多模型,并且附上模型的 demo。

然而,工程应用开发中所遇到的问题并不是跑一个模型的 demo 就可以的,模型开发需要对数据的预处理、数据增强、模型定义、权值初始化、模型 Finetune、学习率调整策略、损失函数选取、优化器选取、可视化等等。鉴于此,我只能自己对着官方文档,一步一步地学习。

起初,只是做了一些学习笔记,后来觉得这些内容应该对大家有些许帮助,毕竟在互联网上很难找到这类内容的分享,于是此教程就诞生了。

本教程内容及结构

本教程内容主要为在 PyTorch 中训练一个模型所可能涉及到的方法及函数,并且对 PyTorch 提供的数据增强方法(22 个)、权值初始化方法(10 个)、损失函数(17 个)、优化器(6 个)及 tensorboardX 的方法(13 个)进行了详细介绍。

本教程分为四章,结构与机器学习三大部分一致:

  • 第一章,介绍数据的划分,预处理,数据增强;

  • 第二章,介绍模型的定义,权值初始化,模型 Finetune;

  • 第三章,介绍各种损失函数及优化器;

  • 第四章,介绍可视化工具,用于监控数据、模型权及损失函数的变化。

本教程适用读者:

  1. 想熟悉 PyTorch 使用的朋友;

  2. 想采用 PyTorch 进行模型训练的朋友;

  3. 正采用 PyTorch,但无有效机制去诊断模型的朋友;

干货直达(节选):

1.6 transforms 的二十二个方法

2.2 权值初始化的十种方法

3.1 PyTorch 的十七个损失函数

3.3 PyTorch 的十个优化器

3.4 PyTorch 的六个学习率调整方法

4.1 TensorBoardX


项目代码:https://github.com/tensor-yu/PyTorch_Tutorial

电子书下载:

关注公众号【计算机联盟】,回复关键词【PyTorch】

【资源下载】《Pytorch模型训练实现教程》(附下载链接)相关推荐

  1. PyTorch 模型训练实用教程(附代码)

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx PyTorch 能在短时间内被众多研究人员和工程师接受并推崇是因为其有着诸多优点,如采用 Py ...

  2. 《PyTorch模型训练实用教程》—学习笔记

    文章目录 前言 数据 Dataset类 DataLoader类 transform 裁剪-Crop 翻转和旋转-Flip and Rotation 图像变换 对transforms操作,使数据增强更灵 ...

  3. Pytorch模型训练实用教程学习笔记:四、优化器与学习率调整

    前言 最近在重温Pytorch基础,然而Pytorch官方文档的各种API是根据字母排列的,并不适合学习阅读. 于是在gayhub上找到了这样一份教程<Pytorch模型训练实用教程>,写 ...

  4. 快速上手笔记,PyTorch模型训练实用教程(附代码)

    机器之心发布 作者:余霆嵩 前言 自 2017 年 1 月 PyTorch 推出以来,其热度持续上升,一度有赶超 TensorFlow 的趋势.PyTorch 能在短时间内被众多研究人员和工程师接受并 ...

  5. PyTorch 模型训练实用教程(六):监控模型——可视化

    本章将介绍如何在 PyTorch 中使用 TensorBoardX 对神经网络进行统计可视化,如Loss 曲线.Accuracy 曲线.卷积核可视化.权值直方图及多分位数折线图.特征图可视化.梯度直方 ...

  6. 手把手教你洞悉 PyTorch 模型训练过程,彻底掌握 PyTorch 项目实战!(文末重金招聘导师)...

    (文末重金招募导师) 在CVPR 2020会议接收中,PyTorch 使用了405次,TensorFlow 使用了102次,PyTorch使用数是TensorFlow的近4倍. 自2019年开始,越来 ...

  7. 【深度学习】基于PyTorch的模型训练实用教程之数据处理

    [深度学习]基于PyTorch的模型训练实用教程之数据处理 文章目录 1 transforms 的二十二个方法 2 数据加载和预处理教程 3 torchvision 4 如何用Pytorch进行文本预 ...

  8. PyTorch模型训练完毕后静态量化、保存、加载int8量化模型

    1. PyTorch模型量化方法 Pytorch模型量化方法介绍有很多可以参考的,这里推荐两篇文章写的很详细可以给大家一个大致的参考Pytorch的量化,官方量化文档 Pytorch的量化大致分为三种 ...

  9. 【深度学习】Keras加载权重更新模型训练的教程(MobileNet)

    [深度学习]Keras加载权重更新模型训练的教程(MobileNet) 文章目录 1 重新训练 2 keras常用模块的简单介绍 3 使用预训练模型提取特征(口罩检测) 4 总结 1 重新训练 重新建 ...

最新文章

  1. 2018-4-15狼群算法以及改进的总结
  2. java深拷贝如何执行_Java克隆执行深拷贝
  3. python中的ord函数
  4. 计算机类大一需要学什么原因,大一新生上大学要不要带电脑?我认为不论什么专业,电脑是必需品...
  5. 6年20多篇重磅论文,27岁浙大女博导太飒了~
  6. Java集合之Hashtable源码分析
  7. Jeecg-Boot 1.0 版本发布,基于SpringBoot+Mybatis+AntDesign快速开发平台
  8. LNMP Keepalived Haproxy 笔记
  9. iOS的四种持久化存储
  10. 新的android包格式,在Android中注册新文件类型
  11. 清理神器CleanMyMac 6.18“粽”级优惠
  12. X5内核视频之问答汇总
  13. EDA第一次课<1117电路图的绘制>
  14. Cisco Webex share screen 显示黑屏解决方法
  15. Android免费获取短信验证码
  16. 高德地图自定义绘制园区区域,区域描边,并添加自定义内容maker标注
  17. C Sleepy Kaguya
  18. 阿里天池—2022江苏气象预测AI算法挑战赛
  19. TDengine创始人陶建辉:基础软件不开源必死无疑
  20. 51单片机c语言 if 语句,单片机if语句的用法

热门文章

  1. 怎么判断噎到没噎到_嚼半天吐出来,稍硬的食物都不吃,1岁的孩子咀嚼能力差怎么办?...
  2. php页面文件后缀名,PHP中获取文件扩展名的N种方法
  3. phantomjs linux java_PhantomJS 在linux上使用
  4. windows搭建SFTP服务器
  5. aix系统下oracle之ora-00471,Oracle RAC 9.2.0.7 (AIX53,HA52)三台主机实例全down的问题
  6. python房子代码_基于python的链家小区房价爬取——仅需60行代码!
  7. Matlab 生成vhdl,matlab - 使用HDL Workflow Advisor将Matlab代码转换为vhdl - 堆栈内存溢出...
  8. java 微信图片上传_微信小程序图片上传java端以及前端实现
  9. Laravel5.5执行 npm run dev时报错,提示cross-env找不到(not found)的解决办法
  10. 【计算机视觉】期刊整理