PyTorch 是一个 Python 优先的深度学习框架,能够在强大的 GPU 加速基础上实现张量和动态神经网络。在讲解数据加载和预处理之前,首先对Pytorch的基础内容做一个简单的介绍。
创建矩阵
Tensor类似与Numpy的ndarray,优势是可以在GPU上加速运算
#创建没有初始化的矩阵
import torch
x = torch.empty(5,3)
print(x)
结果如下:
image.png
#创建一个随机矩阵
import torch
x = torch.rand(5,3)
print(x)
结果如下:
image.png
#创建一个指定类型的全零矩阵
import torch
x = torch.zeros(5,3,dtype=torch.float32)
print(x)
image.png
#构造tensor张量
import torch
print(torch.tensor([52.5,2.3])
tensor和numpy之间的转换
np_data = np.range(6).reshape((2,3))
torch_data = torch.from_numpy(np_data)
tensor2array = torch.data.numpy()
运算
import torch
x = torch.rand(5,3,dtype=torch.float)
y = torch.rand(5,3,dtype=torch.float)
#加法
print(x+y)
print(torch.add(x,y))
#减法
print(x-y)
print(torch.sub(x,y))
#乘法
print(torch.mul(x,y))
#除法
print(torch.div(y,x))
#绝对值
print(torch.abs(x))
#cos
print(torch.cos(x))
#sin
print(torch.sin(x))
#exp
print(torch.exp(x))
#log
print(torch.log(x))
#pow
print(torch.pow(x,2))
当然,除了这些基本的数学运算,pytorch还封装了很多其他的数学运算操作函数,后续用到会继续更新。