PyTorch的基本概念
什么是Pytorch,为什么选择Pytroch?
PyTorch是一个基于python的科学计算包,主要针对两类人群:
- 作为NumPy的替代品,可以利用GPU的性能进行计算
- 作为一个高灵活性、速度快的深度学习平台
Pytorch相比Tensorflow而言,它的设计初衷是简单易用用,所以它是基于动态图进行实现的,从而方便调试。当然,Tensorflow在1.5版的时候就引入了Eager Execution机制实现了动态图,但它还是默认使用静态图。
PyTorch的安装]
我是用按官网中用conda安装,由于没有GPU,所以用的是CPU版本
conda install pytorch-cpu torchvision-cpu -c pytorch
PyTorch基础概念
张量:
Tensor(张量)类似于NumPy的ndarray,但还可以在GPU上使用来加速计算。
from __future__ import print_function
import torch
x = torch.empty(5, 3)
print(x)
tensor([[2.2391e-19, 4.5869e-41, 1.4191e-17],
[4.5869e-41, 0.0000e+00, 0.0000e+00],
[0.0000e+00, 0.0000e+00, 0.0000e+00],
[0.0000e+00, 0.0000e+00, 0.0000e+00],
[0.0000e+00, 0.0000e+00, 0.0000e+00]])
运算
一种运算有多种语法。在下面的示例中,我们将研究加法运算。
加法:形式一
y = torch.rand(5, 3)
print(x + y)
tensor([[ 2.5541, 0.0943, 0.9835],
[ 1.4911, 1.3117, <