关于PyTorch
命令行编程时PyTorch的关键特性
Mac下安装:
- pip3 install torch torchvision
- conda install pytorch torchvision -c pytorch
使用:import torch
- torch.Tensor:一个多维数组
- autograd.Variable:改变Tensor并且记录下来操作的历史记录,和Tensor拥有相同的API,以及backward()的一些API。同时包含着张量相关的梯度
- nn.Module:神经网络模块。便捷的数据封装,能够将运算移往GPU,还包括一些输入输出的东西
- nn.Parameter:一种变量,当将任何值赋予Module时自动注册为一个参数
- autograd.Function:实现了使用自动求道方法的前馈和后馈的定义。每个Variable的操作都会生成至少一个独立的Function节点,与生成了Variable的函数相连之后记录下操作历史。
PyTorch中所有的神经网络都来自于autograd包,其中autograd.Variable是这个包中最核心的类。它封装了一个Tensor,并且几乎支持所有的定义在其上的操作,一旦运算完成,就可以调用其backward()方法来自动计算出所有的梯度。
from torch.autograd import Variable。
任何输入到网络中的数据,首先要变成Variable
import torch
from torch.autograd import Variable
PyTorch已经集成了众多损失函数,可根据实际需要从中选择一个使用。如果没有符合自己要求的损失函数,也可以自己定义。