计算机视觉和图像处理
Pytroch
一、Pytroch部署
- 创建虚拟环境
在Anaconda终端中创建虚拟环境pytorch
conda create --name pytorch
- 激活虚拟环境
conda activate pytorch
- 安装Pytorch及其相关库
安装torch、torchvision、torchaudio
pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
- 查看是否安装成功
import torch
print(torch.__version__)
二、Pytorch基础语法
2.1 Pytorch的基本元素操作
# 创建一个没有初始化的矩阵
x = torch.empty(5,3)
print(x)
内存中存在脏数据
# 创建一个有初始化矩阵
x = torch.rand(5,3)
x
从均匀分布(范围通常是 [0, 1))中生成随机数
x = torch.randn(5,3)
x
均值为0方差为1的矩阵
torch.randint(0,10,(3,3))
# 创建⼀个全零矩阵
torch.zeros(5,3)
# 直接通过数据创建张量
torch.tensor([2.5,3.5])
# 在已有张量上创建一个新张量
x = x.new_ones(5,3)
print(x)
y = torch.rand_like(x)
print(y)
# 张量尺寸
x.size()
# 将x中的值取出
# 如果张量中只有一个元素可以直接用.item()取出
for i in range(x.size(0)):
for j in range(x.size(1)):
print(x[i][j].item())
2.2 Pytorch的基本运算操作
# 加法操作
y = torch.rand(5,3)
print(x+y)
torch.add(x,y)
result = torch.empty(5,3)
torch.add(x,y,out=result)
result
# 不赋值给y
y.add(x)
y
# 赋值给y
y.add_(x)
y
# 支持切片操作
y[:,1]
# 改变张量形状
x = torch.rand(2,6)
y = x.view(12)
z = x.view(3,4)
# -1表示自动匹配个数
p = x.view(6,-1)
print(x.size(),y.size(),z.size(),p.size())
2.3 Torch Tensor和Numpy array之间的相互转换
a = torch.ones(