注:本文是笔者结合自己阅读和使用pytorch的经验,又系统学习了一遍https://github.com/chenyuntc/pytorch-book的过程中,将自己认为有必要掌握和记住的知识整理成的学习笔记,并非系统的教程,主要目的是为了方便自己梳理、记忆知识,以及方便有相同需求的读者查阅某些知识。
计算图
对于,其计算图表示如下
关于计算图,有以下两点:
(1)计算图中有两种节点,变量(椭圆形)和操作(矩形),计算图必须要求与“变量”相连的一定是“操作”,与“操作”相连的一定是“变量”。假如例子里没有,直接定义成
,计算图还是长现在这样子,只是
被一个虚拟节点代替了。这样比较严格地定义计算图的形式,是为了后面好理解。
(2)计算图本质上是个树结构,因此后面我们会用根、叶子、子节点等用词进行描述
tensor.requires_grad
对于pytorch中的变量(也就是tensor),可以用requires_grad来表示其是否可以计算对它的梯度。有两点需要注意:
1、tensor的requires_grad属性默认为False