1.什么是PyTorch?
![](https://img-blog.csdnimg.cn/20210801232005183.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
2.与TensorFlow对比
![](https://img-blog.csdnimg.cn/20210801232005347.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
3.Overview of the DNN Training Procedure
DNN训练程序概述
![](https://img-blog.csdnimg.cn/20210801232006778.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
4.什么是Tensor?
Tensor,张量。一个高维度的矩阵。就像NumPy的Array.
![](https://img-blog.csdnimg.cn/20210801232005282.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
5.Tensor里面存什么东西呢?
最常见,存浮点数、整数。
![](https://img-blog.csdnimg.cn/20210801232003699.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
6.Tensor的形状
![](https://img-blog.csdnimg.cn/20210801232006593.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
7.如何产生一个Tensor?
![](https://img-blog.csdnimg.cn/20210801232006649.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
8.常见的运算
(1)Squeeze
![](https://img-blog.csdnimg.cn/20210801232005801.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(2)Unsqueeze
![](https://img-blog.csdnimg.cn/20210801232005516.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(3) Transpose转置
![](https://img-blog.csdnimg.cn/2021080123200534.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(4)cat
按照dim=1横着拼在一起。如果dim=0,就是竖着拼在一起。
![](https://img-blog.csdnimg.cn/20210801232006694.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(5)基本运算
![](https://img-blog.csdnimg.cn/20210801232001721.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
mean()? 平均
![](https://img-blog.csdnimg.cn/2021080123200050.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(6)与numpy相近的方法
![](https://img-blog.csdnimg.cn/20210801232002865.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232003976.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
9.在CPU/GPU上跑
![](https://img-blog.csdnimg.cn/20210801232002580.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
GPU的cuda:类似CPU的核心。
![](https://img-blog.csdnimg.cn/2021080123200686.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
10.计算gradient
![](https://img-blog.csdnimg.cn/20210801232006361.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
11.步骤1:load 数据
![](https://img-blog.csdnimg.cn/20210801232006251.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006706.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
12.步骤二:建立自己的Neural Network
![](https://img-blog.csdnimg.cn/20210801232006563.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006763.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232005971.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006455.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232004982.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
13.步骤三:Loss Function
第一个是计算均方误差(对于线性回归问题),第二个是交叉熵损失函数(对于分类问题)。
![](https://img-blog.csdnimg.cn/20210801232003209.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006287.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006256.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
14.步骤四:Optimizer
![](https://img-blog.csdnimg.cn/20210801232004371.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
15.步骤:Training、Validation、Testing
![](https://img-blog.csdnimg.cn/20210801232005401.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006536.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232006695.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
(上图最后一行代码不缩进,在for外)
![](https://img-blog.csdnimg.cn/20210801232005913.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
16.保存/重载
![](https://img-blog.csdnimg.cn/20210801232003600.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
17.更多
![](https://img-blog.csdnimg.cn/20210801232003775.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
![](https://img-blog.csdnimg.cn/20210801232005837.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
18.文档
![](https://img-blog.csdnimg.cn/20210801232004488.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjI2NTI1NQ==,size_16,color_FFFFFF,t_70)
|