![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pytorch
文章平均质量分 52
baobei0112
这个作者很懒,什么都没留下…
展开
-
conda 环境配置
scikit-image scipy numba pillow matplotlib fire tensorboardX protobuf opencv-python opencv-contrib-python pybind11 vtk joblib easydict open3d-python terminaltables pytest-runner addict pycocotools imagecorruptions ob原创 2022-01-26 09:52:46 · 3130 阅读 · 0 评论 -
pytorch框架下的DDP应用(附完整的训练代码)
1. 简介DDP(DistributedDataParallel)和DP(DataParallel)均为并行的pytorch训练的加速方法。两种方法使用场景有些许差别:DP模式主要是应用到单机多卡的情况下,对代码的改动比较少,主要是对model进行封装,不需要对数据集和通信等方面进行修改。一般初始化如下:import torchimport torchvisionmodel = torchvision.models.resnet101(num_classes=10)model = t转载 2022-01-25 10:45:43 · 2861 阅读 · 0 评论 -
pytorch1.7 安装
pip install torch==1.x.x -i https://pypi.douban.com/simplepip install torchvision==0.x.x -i https://pypi.douban.com/simple安装korniapip install kornia==0.x.x -i https://pypi.douban.com/simplepytorch=1.3, kornia=0.3.1pytorch=1.7, kornia=0.5.1原创 2022-01-19 13:30:56 · 4532 阅读 · 1 评论 -
libtorch 常用api函数示例(史上最全、最详细)
其实pytorch的函数libtorch都有,只是写法上有些出入。libtorch的官方文档链接class tensor只是官方文档只是类似与函数申明,没有告诉干嘛的,只能通过函数名字猜了。比如我要一个一个函数和已知的一个torch::Tensor变量形状一样,只是填充指定的数值,我记得在哪里看到过的有个full开头的函数,然后我就搜素full,然后找到一个函数full_like好像是我需要的。(见0)目录pytorch/libtorch qq群: 1041467052 调试技巧: CM转载 2021-05-24 10:52:07 · 514 阅读 · 1 评论 -
在C++中加载TorchScript模型
在C++中加载TorchScript模型本教程已更新为可与PyTorch 1.2一起使用顾名思义,PyTorch的主要接口是Python编程语言。尽管Python是合适于许多需要动态性和易于迭代的场景,并且是首选的语言,但同样的,在 许多情况下,Python的这些属性恰恰是不利的。后者通常适用的一种环境是要求生产-低延迟和严格部署。对于生产场景,即使只将C ++绑定到Java, Rust或Go之类的另一种语言中,它也是经常选择的语言。以下各段将概述PyTorch提供的从现有Python模型到可以完全转载 2021-05-10 18:36:53 · 700 阅读 · 0 评论 -
基于PyTorch的C++API运行模型进行图像分类
TorchScript简介TorchScript是PyTorch模型的一种中间形式,可以在高性能环境(例如C ++)中运行。一个简单示例如下: import torch #import torchvision class MyCell(torch.nn.Module): def __init__(self): super(MyCell, self).__init__() def forward(self, x, h.转载 2021-05-10 18:34:26 · 306 阅读 · 0 评论 -
TorchScript使用的注意事项和常见错误
Pytorch1.3新出了移动端部署功能,想尝试一下,目前已将除安卓端部署以外的流程走通,但是因为pytorch量化不太好用,目前已经转向研究ONNX。在这里分享一下使用torch.jit将Python代码转成TorchScript的过程中遇到的问题,希望能找到一起踩坑的朋友~网上关于TorchScript的比较完整的资料并不多,我在留言提问的时候发现很多博主都已经弃坑了╮(╯▽╰)╭。而我因为不可抗力必须把这个坑趟下去,后续如果遇到更多的问题也会分享出来,如果有在研究TorchScript的朋友,转载 2021-05-10 10:18:45 · 1828 阅读 · 0 评论 -
POINTRCNN的pytorch模型转libtorch
error 1 : slice() cannot be applied to a 0-dim tensor位置:keep = torch.LongTensor(boxes.size(0))solution:改为:keep = torch.LongTensor(boxes.size(0), 1)error 2:File "/home/yutong/anaconda3/envs/torch/lib/python3.7/site-packages/torch/_jit_in...原创 2021-04-28 17:50:07 · 875 阅读 · 0 评论 -
TorchScript简介
TorchScript简介本教程是对TorchScript的简介,TorchScript是PyTorch模型(nn.Module的子类)的中间表示,可以在高性能环境(例如C ++)中运行。在本教程中,我们将介绍:PyTorch中的模型创作基础,包括: 模组 定义前向功能 将模块组成模块的层次结构 将PyTorch模块转换为TorchScript(我们的高性能部署运行时)的特定方法 跟踪现有模块 使用脚本直接编译模块 如何组合这两种方法 保存和加载TorchScri转载 2021-04-28 13:18:00 · 493 阅读 · 0 评论 -
转pytorch模型到TorchScript模型
TorchScript是什么TorchScript 可以看作Python的一个子集,主要的应用场景是把Python/PyTorch代码转换成等价的C++代码从而提高深度学习模型在线上生产环境部署的运行效率。Python代码会被编译成TorchScript编译器可以理解的一种格式(ScriptModule),C++的生产环境可以载入该格式的文件并用内置的JIT来执行对应的代码。TorchScript提供了两种方法来把Python代码转换成TorchScript representation,分别为:转载 2021-04-28 13:16:14 · 1257 阅读 · 0 评论 -
[已解决] RuntimeError: cuda runtime error (700) : an illegal memory access was encountered
这个error发生在我得到训练好的Decoder之后,对latent space采样并生成新数据的时候,如下RuntimeError: cuda runtime error (700) : an illegal memory access was encountered at ..\aten\src\THC\THCCachingHostAllocator.cpp:278 问题出在如何把数据sample存储在gpu上:torch.tensor(sample, device=device)。其中d..转载 2021-04-27 16:24:48 · 4821 阅读 · 0 评论 -
pytorch怎么使用c++调用部署模型?
Refs:https://www.zhihu.com/question/66532235一种思路是:ONNX + Caffe2,现将pytorch模型转为caffe2模型,然后再操作。看起来很复杂。参考:https://pytorch.org/tutorials/advanced/super_resolution_with_caffe2.html另一种思路是:基于Pytorch 1.0 Preview版+(注意当前该版本暂没有windows发行版),现将模型编译成c++可读的形式,然后重写.转载 2021-04-23 17:33:04 · 397 阅读 · 0 评论 -
pytorch官网上下载libtorch各个版本的url
下载各种版本libtorch(x86架构官网直接下载,arm架构需要源码编译安装)下载libtorch1.0(1.0.0和1.0.1)版本(cuda8.0、cuda9.0和cuda10.0 )Linux version:cpu版本(Mac仅有cpu版本,和linux的cpu版本链接一样)https://download.pytorch.org/libtorch/cpu/libtorch-shared-with-deps-1.0.0.zip 1cuda版本https://down...转载 2021-04-23 14:24:17 · 1605 阅读 · 1 评论 -
基于pytorch的保存和加载模型参数的方法
保存和加载模型参数有两种方式:方式一:torch.save(net.state_dict(),path):功能:保存训练完的网络的各层参数(即weights和bias)其中:net.state_dict()获取各层参数,path是文件存放路径(通常保存文件格式为.pt或.pth)net2.load_state_dict(torch.load(path)):功能:加载保存到path中的各层参数到神经网络注意:不可以直接为torch.load_state_dict(path),此函数转载 2021-04-15 17:27:04 · 231 阅读 · 0 评论 -
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
这篇文章主要介绍了解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧背景在公司用多卡训练模型,得到权值文件后保存,然后回到实验室,没有多卡的环境,用单卡训练,加载模型时出错,因为单卡机器上,没有使用DataParallel来加载模型,所以会出现加载错误。原因DataParallel包装的模型在保存时,权值参数前面会带有module字符,然而自己在单卡环境下,没有用DataParallel包装的模型...转载 2021-04-15 17:22:24 · 1111 阅读 · 0 评论 -
pytorch 多GPU
device_id = torch.cuda.device_count()device = torch.cuda.get_device_name(range(device_id))if torch.cuda.device_count()>1: model = nn.DataParallel(model) model = model.to(device)elif train_on_gpu: model = model.to(device)原创 2021-03-15 15:59:31 · 120 阅读 · 0 评论 -
subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1.
将anaconda环境下的 lib/python3.6/site-packages/torch/utils/cpp_extension.py文件将['ninja','-v']改成['ninja','--v'] 或者['ninja','--version']原创 2021-03-08 09:44:20 · 25939 阅读 · 32 评论 -
tensor 循环拼接 & 按行按索引取值
import torcha = torch.tensor([0,1,2,3,4],[5,6,7,8,9])a.shape = [2,5]假如2为batchsize,5为数据,目标: a循环拼接自己3次成[2,3,5],[[[0,1,2,3,4],[0,1,2,3,4],[0,1,2,3,4]]],[[5,6,7,8,9],[5,6,7,8,9],[5,6,7,8,9]]]通过下面命令可以实现:a.unsqueeze(1) = [2,1,5]a.rep.原创 2021-02-01 17:33:24 · 1518 阅读 · 0 评论