PyTorch 学习笔记
  • (开篇词)PyTorch 学习笔记
  • 1 基本概念
    • 1.1 PyTorch 简介与安装
    • 1.2 Tensor(张量)介绍
    • 1.3 张量操作与线性回归
    • 1.4 计算图与动态图机制
    • 1.5 autograd 与逻辑回归
  • 2 图片处理与数据加载
    • 2.1 DataLoader 与 DataSet
    • 2.2 图片预处理 transforms 模块机制
    • 2.3 二十二种 transforms 图片数据预处理方法
  • 3 模型构建
    • 3.1 模型创建步骤与 nn.Module
    • 3.2 卷积层
    • 3.3 池化层、线性层和激活函数层
  • 4 模型训练
    • 4.1 权值初始化
    • 4.2 损失函数
    • 4.3 优化器
  • 5 可视化与 Hook
    • 5.1 TensorBoard 介绍
    • 5.2 Hook 函数与 CAM 算法
  • 6 正则化
    • 6.1 weight decay 和 dropout
    • 6.2 Normalization
  • 7 模型其他操作
    • 7.1 模型保存与加载
    • 7.2 模型 Finetune
    • 7.3 使用 GPU 训练模型
  • 8 实际应用
    • 8.1 图像分类简述与 ResNet 源码分析
    • 8.2 目标检测简介
    • 8.3 GAN(生成对抗网络)简介
    • 8.4 手动实现 RNN
  • 9 其他
    • PyTorch 常见报错信息
    • 图神经网络 PyTorch Geometric 入门教程
由 GitBook 提供支持
在本页
  • PyTorch 的诞生
  • PyTorch 的发展
  • PyTorch 优点
  • PyTorch 实现模型训练的 5 大要素
  • 安装
  • 安装 Anaconda
  • 安装 PyTorch
  • Pycharm 使用 Anaconda 环境

这有帮助吗?

  1. 1 基本概念

1.1 PyTorch 简介与安装

PyTorch 的诞生

2017 年 1 月,FAIR(Facebook AI Research)发布了 PyTorch。PyTorch 是在 Torch 基础上用 python 语言重新打造的一款深度学习框架。Torch 是采用 Lua 语言为接口的机器学习框架,但是因为 Lua 语言较为小众,导致 Torch 学习成本高,因此知名度不高。

PyTorch 的发展

  • 2017 年 1 月正式发布 PyTorch。

  • 2018 年 4 月更新 0.4.0 版,支持 Windows 系统,caffe2 正式并入 PyTorch。

  • 2018 年 11 月更新 1.0 稳定版,已成为 Github 上增长第二快的开源项目。

  • 2019 年 5 月更新 1.1.0 版,支持 TensorBoard,增强可视化功能。

  • 2019 年 8 月更新 1.2.0 版,更新 Torchvision,torchaudio 和torchtext,支持更多功能。

  • 目前 PyTorch 有超越 Tensorflow 的趋势。

  • ...

PyTorch 优点

  • 上手快,掌握 Numpy 和基本深度学习概念即可上手。

  • 代码简洁灵活,使用 nn.Module 封装使得网络搭建更加方便 。基于动态图机制,更加灵活。

  • 资源多,arXiv 中新论文的算法大多有 PyTorch 实现。

  • 开发者多,Github 上贡献者(Contributors)已经超过 1100+

  • ...

PyTorch 实现模型训练的 5 大要素

  • 数据:包括数据读取,数据清洗,进行数据划分和数据预处理,比如读取图片如何预处理及数据增强。

  • 模型:包括构建模型模块,组织复杂网络,初始化网络参数,定义网络层。

  • 损失函数:包括创建损失函数,设置损失函数超参数,根据不同任务选择合适的损失函数。

  • 优化器:包括根据梯度使用某种优化器更新参数,管理模型参数,管理多个参数组实现不同学习率,调整学习率。

  • 迭代训练:组织上面 4 个模块进行反复训练。包括观察训练效果,绘制 Loss/ Accuracy 曲线,用 TensorBoard 进行可视化分析。

整个系列的学习都会围绕着这 5 个方面来展开。

安装

在开发过程中可能会有多个项目同时进行,不同项目之间使用的 Python 版本和一些库的版本不一样,这就会导致冲突。因此这里使用 Anaconda 来管理多个 Python 虚拟环境。Anaconda 是为了方便使用 Python 而建立的一个软件包,包含常用 的 250 多个工具包,多个版本的 Python 解释器和强大的虚拟环境管理工具。各个环境之间相互独立,可任意切换。

安装 Anaconda

  • 安装时记得勾选Add Anaconda to my PATH environment variable 添加到环境变量中。

  • 安装完成后打开cmd,输入conda回车出现如下信息,即为安装成功。

  • 接着添加中科大镜像或者清华镜像,在安装库的时候实现加速下载。

安装 PyTorch

  • 检查是否有支持 CUDA 的 GPU,若有,需要安装 CUDA 和CuDNN。

第一部分是 cuda 版本或者 cpu,第二部分是 PyTorch 版本号,第三部分是 Python 版本号,第四部分是操作系统。

cu92/torch-1.5.0%2Bcu92-cp37-cp37m-linux_x86_64.whl

Pycharm 使用 Anaconda 环境

在 Pycharm 中新建项目后,需要在 File -> Settings -> Project -> Python Interpreter 中选择 Anaconda 环境。

首先点击齿轮图标,点击弹出的add,

参考资料

如果你觉得这篇文章对你有帮助,不妨点个赞,让我有更多动力写出好文章。

我的文章会首发在公众号上,欢迎扫码关注我的公众号张贤同学。

上一页1 基本概念下一页1.2 Tensor(张量)介绍

最后更新于4年前

这有帮助吗?

到官网 选择适合自己系统的 64 位安装包,注意选择 Python3 以上的版本。

进入 PyTorch 官方网站 选择自己需要安装的 PyTorch 对应的命令,在本地 cmd 中输入安装命令即可。这里我本机选择使用 conda 安装不支持 GPU 的 1.5 版本:conda install pytorch torchvision cpuonly -c pytorch。

如果 conda 或者 pip 安装很慢,也可以直接进入 下载 whl 包到本地安装。该页面包含了所有历史版本和各个平台的 PyTorch,需要根据文件名选择自己需要的版本进行下载。文件命名规则如下所示:

接着在弹出的窗口中选择Conda Environment,Conda execute 选择你安装好的 Anaconda 的文件夹下的Scripts\conda.exe。

最后在Python Interpreter给当前项目选择刚刚创建的 Python 环境即可。

如果安装的是 GPU 版本,安装完成之后可以使用print(torch.cuda.is_available())语句来查看安装好的 PyTorch 是否支持 GPU。这里我是用的是 CPU 版本。

https://www.anaconda.com/products/individual
https://pytorch.org/get-started/locally/
深度之眼 PyTorch 框架班
https://download.pytorch.org/whl/torch_stable.html