PyTorch一些trick

1 可查询站点

PyTorch官网
PyTorch中文教程
★ApachePyTorch中文文档
PyTorch Doc

2 安装

2.1 linux

#要求cuda10.2
pip3 install torch torchvision

2.2 win10

# cuda10.2 gpu版本
pip3 install torch===1.6.0 torchvision===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html

# cuda10.1版本【建议版本,可和tf2系列让cuda保持一致】
pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html

# cpu版本
pip3 install torch==1.6.0+cpu torchvision==0.7.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

【特别注意】【pytorch模型投入生产可使用libtorch转换到C++】Pytorch各种历史版本

3 备注

  • CPU上的所有张量(CharTensor除外)都支持与Numpy的相互转换。Torch张量和NumPy数组将共享它们的底层内存位置,因此当一个改变时,另外也会改变。
  • 评估模型时阻止grad属性计算:代码块包装在 with torch.no_grad()、requires_grad = False
  • nn.Module中parameters()获取模型可学习参数

4 简单总结

4.1 PyTorch使用TensorBoradX

from torch.utils.tensorboard import SummaryWriter

writer = SummaryWriter('save/logs')

# 写入网络
x=torch.autograd.Variable(torch.rand(1,3,224,224)) #随便定义一个输入
writer.add_graph(net, x)

# 写入loss,loss_value为具体loss值,step为第几步更新权重
writer.add_scalar('trainloss', loss_value, step)

writer.close()

4.2 PyTorch系列概念

from __future__ import print_function
import torch

# 5x3的tensor张量(矩阵)
x=torch.rand(5,3)

# 改变形状
x2=x.view(-1, 15)

# list转tensor
y=torch.from_numpy(np.array([[1,2,3,4],[5,6,7,8]]))

#tensor存放到gpu
z=y.cuda()

if torch.cuda.is_available():
	device = torch.device("cuda")
	y = torch.ones_like(x, device=device) # GPU上创建Tensor
	x = x.to(device) # .to方法切换设备
	k = x+y
	print(k)
	print(k.to("cpu", torch.double)) # .to在切换时更改dtype

闲来无事,偶尔的一些灵感和总结一些基础的供自己回顾,后续

Reference

PyTorch | Tensorboard工具学习:模型,数据及训练过程可视化

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值