torch 变量更新

来源:互联网 发布:高仿mcm淘宝店推荐 编辑:程序博客网 时间:2024/05/17 03:31

变量类型

pytorch中有两种变量类型,一个是Tensor,一个是Variable

  • Tensor: 就像ndarray一样,一维TensorVector,二维TensorMatrix,三维及以上称为Tensor
  • Variable:是Tensor的一个wrapper,不仅保存了值,而且保存了这个值的creator,需要BP的网络都是Variable

Variable

Variable包括data,grad,volatile,creatoor,

  • data – 包含的Tensor
  • grad – 保存着Variable的梯度。这个属性是懒分配的,且不能被重新分配。
  • requires_grad – 布尔值,指示这个Variable是否是被一个包含Variable的子图创建的。更多细节请看Excluding subgraphs from backward。只能改变leaf variable的这个标签。
  • volatile – 布尔值,指示这个Variable是否被用于推断模式(即,不保存历史信息)。更多细节请看Excluding subgraphs from backward。只能改变leaf variable的这个标签。
  • creator – 创建这个VariableFunction,对于leaf variable,这个属性为None。只读属性。