pytorch
文章平均质量分 66
Mr_health
这个作者很懒,什么都没留下…
展开
-
神经网络参数初始化
参数初始化原创 2022-07-25 17:44:52 · 1633 阅读 · 0 评论 -
pytorch模型
pytorch模型原创 2022-07-25 16:45:55 · 930 阅读 · 0 评论 -
关于pytorch反向传播的思考
关于pytorch反向传播的思考原创 2022-07-08 17:23:05 · 160 阅读 · 0 评论 -
pytorch中交叉熵损失函数的细节
1. 一般分类任务实现:二分类在二分类中,pytorch主要可以应用的损失函数分为以下四个:F.cross_entropy()与torch.nn.CrossEntropyLoss() F.binary_cross_entropy()与torch.nn.BCELoss()之所以将四个函数分成两类,是因为:前者输入是非onehot label + logit,函数会自动将logit通过softmax映射为概率 后者输入的是onehot label + prob(概率,一般是经过softmax后原创 2022-02-10 19:13:39 · 7376 阅读 · 0 评论 -
pytorch使用data_prefetcher提升数据读取速度
直接给出代码:class data_prefetcher(): def __init__(self, loader): #loader 1:real #loader 2:fake self.stream = torch.cuda.Stream() self.loader = iter(loader) self.preload() def preload(self): try:原创 2022-02-09 11:12:43 · 4589 阅读 · 1 评论 -
pytorch的多GPU训练的两种方式
方法一:torch.nn.DataParallel1. 原理如下图所示:小朋友一个人做4份作业,假设1份需要60min,共需要240min。这里的作业就是pytorch中要处理的data。与此同时,他也可以先花3min把作业分配给3个同伙,大家一起60min做完。最后他再花3min把作业收起来,一共需要66min。这个小朋友就是主GPU。他的过程是:分发 ->并行运算->结果回收。这就是pytorch要使用的第一种并行方法:torch.nn.DataPa.原创 2022-02-08 14:08:02 · 7802 阅读 · 2 评论 -
pytorch转onnx相关问题
这些问题是在转谱归一化spectral_norm中遇到的。首先遇到的就是torch.mv算子和torch.dot算子不支持的问题。目前pytorch已经官方实现了谱归一化:spectral_norm,其中包含了torch.mv、 torch.dot算子,转onnx会出现错误解决办法:将torch.mv和torch.dot用torch.matmul代替,不过可能需要自己改变一下tensor的维度。(通过unsqueeze之类的)我再解决了上述两个算子后,能够跑torch.onnx.export原创 2021-07-23 16:12:00 · 1354 阅读 · 1 评论 -
cycleGAN解析
前言在上一篇博文中我们讲述了pix2pix的方法,见Pix2Pix原理解析,pix2pix的方法适用于成对数据的风格迁移,如下图左边。但是在大多数情况,对于A风格的图像,我们并没有与之相对应的B风格图像,我们所拥有的是一群处于风格A(源域)的图像和一群处于风格B(目标域)的图像,这样pix2pix2的方法就不管用了。CycleGAN的创新点在于能够在源域和目标域之间,无须建立训练数据间一对一的映射,就可实现这种迁移。基本架构cyclegan的原理如下图所示。整个架构结构整理如下:(1)原创 2021-01-12 20:14:08 · 4898 阅读 · 0 评论 -
pytorch可视化输出的图像
最近在学习GAN,跑了两个目前是sota的开源代码:https://github.com/Tencent/Real-SR以及https://github.com/ManuelFritsche/real-world-sr,前者是在esrgan的基础上做了一定的改动,后者包含dsgan和esrgan-fs两部分,其中esrgan-fs与腾讯的代码均在BasicSR增添了自己的改进,总体的框架基本不变。.在学习的时候,主要是dsgan部分和esrgan部分对输入图片和可视化的操作有一点不同,在此做以记录...原创 2020-10-20 16:16:37 · 4646 阅读 · 0 评论 -
【pytorch】squeeze函数和unsqueeze函数
squeeze(): 去除size为1的维度,包括行和列。至于维度大于等于2时,squeeze()不起作用 unsqueeze():在指定维度增加一个维度import torcha = torch.rand(4, 1, 3)print('a.shape:',a.shape)print('a:',a)b = a.squeeze() #除去维度为1的维度 print('b.shape:',b.shape)print('b:',b)c = a.unsqueeze(0) #在指定.原创 2020-09-28 10:39:03 · 396 阅读 · 0 评论 -
【GAN网络】tensorflow和pytorch实现损失函数
import tensorflow as tf#batch_size = 3,真实数据real_logits=tf.constant([[1.25], [2.5], [-1.7]]) #GAN的话是两分类,因此最后只有一个节点,经过D映射后表示为真的概率 real_prob=tf.nn.sigmoid(real_logits) #真实数据经过D后被判别为真的概率read_labels=tf.ones_like(.原创 2020-09-18 15:00:06 · 1645 阅读 · 1 评论 -
【mmdetection】使用心得
目录1.关于使用环境2.训练非jpg的数据3.关于cuda out of memory4.多尺度训练理解1.关于使用环境截止到2019年底,一共三台机器在跑:1、第一台台式机:anaconda + 1080ti + python 3.7 + cuda9.0 + pytorch 1.2 跑起来ok2、第二台台式机: anaconda + 2080ti + python 3...原创 2019-12-15 20:26:48 · 5092 阅读 · 9 评论 -
【detectron】ubuntu16.04配置detectron2
参考:https://github.com/facebookresearch/detectron2/blob/master/INSTALL.md https://github.com/pytorch/pytorch https://pytorch.org/安装anaconda(自行百度)安装pytorch1、创建环境:conda c...原创 2019-10-23 17:47:52 · 2777 阅读 · 2 评论