PyTorch学习
文章平均质量分 68
songyuc
这个作者很懒,什么都没留下…
展开
-
【可视化】可视化&绘图的学习笔记
Keywords: 可视化 visio1 Visualization可视化这里我们将会记录一下关于Visualization的学习笔记~2 模型Visualization使用TensorBoard,可以参考教程《PyTorch TensorBoard Support》;首先需要安装TensorBoard使用conda命令安装,conda install pytorch torchvision -c pytorch原创 2021-05-10 12:30:46 · 546 阅读 · 0 评论 -
PyTorch Cookbook by Eric
1 致谢感谢网友ShellCollector的帮助,原文链接如下:https://blog.csdn.net/jacke121/article/details/808245752 前言今天在学习FaceBoxes~感觉PyTorch中的维度操作挺多的,于是想着想要记一下笔记~2 张量——torch.Tensor2.1 张量的复制操作获得不进行反向传播的tensor副本(“类似于.copy()”)tensor.clone().detach_()2.2 张量的索引操作掩码选择——tor原创 2021-03-30 18:09:14 · 2345 阅读 · 0 评论 -
PyTorch中hook函数的学习笔记
register_backward_hook()作用是获取神经网络反向传播过程中,各个模块 输入端和输出端的梯度值 。原创 2021-01-13 14:46:07 · 101 阅读 · 0 评论 -
PyTorch中“CUDA out of memory”的调试笔记
1 问题描述“RuntimeError: CUDA out of memory.”是PyTorch写作中常见的一种运行错误,这里我们将记录一下调试过程中发现的一些解决方案;2 解决方案2.1 模型较大——可以降低batch_size一种常见的原因就是模型的参数量较多,此时降低batch_size是一种可行的方法2.2 读取loss值时没有使用item()函数这是我之前在写作中出现的一个错误,我需要使用loss值作为训练过程时的输出,不过在取的张量的值之后,没有只用item()函数,而是直接用in原创 2021-01-10 16:27:33 · 672 阅读 · 0 评论 -
PyTorch出现错误“RuntimeError: Found dtype Double but expected Float”
1 错误描述今天在调试PyTorch代码时出现“RuntimeError: Found dtype Double but expected Float”的错误,相关提示信息如下File “/home/…/train.py”, line 78, in mainrunning_loss = trainer.train_one_epoch(epoch, qa=qa)File “/home/…/model/…py”, line 347, in train_one_epochloss.backward()原创 2020-12-04 02:54:11 · 30088 阅读 · 9 评论 -
目标检测——各个框架下Tensor和矩阵的维度次序
1 致谢感谢网友凌风玉提供的资料,博文链接:https://blog.csdn.net/oLingFengYu/article/details/880336682 不同框架下Tensor和矩阵的维度次序N: batch;C: channelH: heightW: widthPytorch中Tensor的通道顺序:NCHW...原创 2020-06-11 16:19:44 · 327 阅读 · 0 评论 -
PyTorch中Tensor的学习笔记
1 致谢感谢PyTorch官方提供的文档,链接:https://pytorch.org/docs/stable/tensors.html2 如何创建一个Tensor2.1 使用torch.tensor()直接创建Tensor示例代码如下:torch.tensor([[1, 2, 3], [4, 5, 6]])3 PyTorch中Tensor的索引3.2 可以使用boolTensor对Tensor进行“过滤”boolTensor对Tensor有“过滤”的效果,示例的效果下原创 2020-06-10 11:57:28 · 207 阅读 · 0 评论 -
目标检测——在训练PyTorch模型遇到显存不足的情况怎么办?(legecy)
1 前言在目标检测中,可能会遇到显存不足的情况,我们在这里记录一下解决方案;2 如何减少PyTorch模型需要的显存2.1 减小batch_size的数量最小的数量可以设置为2;2.2 可以减小分辨率减小分辨率是节省显存的一种可行的做法,(但是南溪是不推荐这种做法的,如果实在显存不够,可以减小batch_size的大小,因为降低分辨率从本质上看,是对图像进行下采样,这样必然...原创 2020-03-09 16:11:10 · 7495 阅读 · 2 评论 -
PyTorch报错“RuntimeError: one of the variables needed for gradient computation has been modified by……”
1 问题描述今天在写作DeepLabV3+的代码时,遇到了一个问题,程序报错:RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [2, 64, 253, 765]], ...原创 2020-03-08 03:35:18 · 15170 阅读 · 8 评论 -
PyTorch——解决报错“RuntimeError: running_mean should contain *** elements not ***”
1 问题描述在使用PyTorch编程的时候,经常遇到一种报错就是:“RuntimeError: running_mean should contain *** elements not ***”;这次我具体的报错信息是: File "/home/***/software/python/anaconda/anaconda3/envs/conda-general/lib/pyth...原创 2020-02-21 17:49:53 · 49085 阅读 · 9 评论 -
VGG的学习笔记~
1 前言今天在学习VGG的PyTorch的官方实现的代码~2 备注2.1 VGG中使用的什么激活函数呢?VGG使用的激活函数都是ReLU;3 PyTorch代码阅读笔记请点击我分享的Colab链接:https://colab.research.google.com/drive/1zejteikrxkpxreySs5x7Xaz922U5KssB...原创 2020-01-07 17:28:28 · 240 阅读 · 0 评论 -
PyTorch——torch.Tensor与np.ndarray(NumPy)之间的类型转换
1 前言今天在写Digit Recognizer的代码~在对提交文件submission.csv进行写入操作的时候,总会有报错,其中一个原因是其实pandas对np.ndarray数据更加友好,所以这里我们就来记录一下torch.Tensor与np.ndarray(NumPy)之间进行数据类型转换的操作~2torch.Tensor与np.ndarray之间的类型转换torch....原创 2019-12-26 17:45:58 · 3017 阅读 · 0 评论 -
使用transforms.Normalize((0.5,), (0.5,))异常报错“Process finished with exit code -1073741676 (0xC0000094)”
目录1 问题描述2 EDA分析3 解决方案1 问题描述今天在使用transforms.Normalize((0.5,), (0.5,))对MNIST数据集中的图像进行归一化时,程序执行到这里异常退出了,提示:Process finished with exit code -1073741676 (0xC0000094)我自己写了一段代码,进行测试是没有问题的:...原创 2019-12-19 14:09:06 · 5957 阅读 · 6 评论 -
目标检测——使用OpenCV读取图片要注意进行维度变换
注意:使用cv2.imread()读取彩色图片时,OpenCV获得的张量的数据顺序为h*w*c,其中张量的最后一个维度才是通道,所以在送入到torch中之前,需要对张量的维度顺序进行变换;一个可行的方式为img = img.transpose(2, 0, 1)# 变换前: np.ndarray h*w*c# 变换后: np.ndarray c*h*w...原创 2019-12-18 17:37:55 · 3069 阅读 · 0 评论 -
使用PyTorch前向运算时出现“RuntimeError: Expected object of scalar type Long but got scalar type Float for ……”
1 问题描述今天在使用PyTorch搭建模型时,出现了一个问题:RuntimeError: Expected object of scalar type Long but got scalar type Float for argument #2 'weight' in call to _thnn_conv2d_forward是在val阶段的forward函数的第一句出现的,...原创 2019-12-18 14:29:23 · 8867 阅读 · 1 评论 -
PyTorch——PyTorch也支持通过累加操作实现大的BatchSize的训练
1 前言这几天在学习的时候,一直在想一个问题,为什么PyTorch不支持大的BatchSize的计算呢?按照道理来说,这并不是一个问题,因为梯度值是可以累加的,如果设置的BatchSize较大,而GPU的显存一次性无法装入这么多的数据进行训练的话,只要分批次计算loss就可以了;后来发现原来PyTorch也是支持通过累加梯度实现大BatchSize训练的操作的。2PyTo...原创 2019-12-16 12:45:30 · 1201 阅读 · 0 评论 -
PyTorch中的Variable类型
1 前言今天在学习PyTorch~之前在莫烦的教程中看到了Variable类型的变量,后来看PyTorch的《Deep Learning with PyTorch: A 60 Minute Blitz》教程时,作者们都没有使用Variable类型,于是我就感觉很奇怪,于是就请教了一下度娘~2PyTorch中的Variable类型我感觉对于当前版本的PyTorch,Variable...原创 2019-12-03 17:39:22 · 1032 阅读 · 0 评论 -
目标检测——如何获取图片的唯一ID
1 前言今天在学习PyTorch~在进行训练时,有一个需求就是,我们需要用一个整形的数字作为样本图片的唯一ID,我想到的方法就是使用Hash算法对图片的内部路径进行编码~2 在Python中获取图片的唯一编码3 将编码转换为torch.Tensor我曾经试过将获得的Hash编码转成IntTensor,不过没有成功,因为用hashlib生成的Hash值太长了,用IntTensor...原创 2019-12-02 13:33:58 · 2472 阅读 · 0 评论 -
PyTorch中为什么需要使用squeeze()和unsqueeze()操作?
1 问题描述今天在学习FaceBoxes~在看到模型推理部分的代码时,总会出现squeeze()和unsqueeze()操作,从网上的资料上来看,就是升维和降维的操作,但是为什么需要进行这样的操作呢?2 PyTorch中的squeeze()和unsqueeze()操作看到“西北小生_”的博文,给予了我一定的启发《torch.squeeze()和torch.unsqueeze()》,...原创 2019-11-28 16:10:25 · 3194 阅读 · 4 评论 -
Pytorch——torch.Tensor.data操作的含义
1 致谢感谢陈助教的帮助!2 前言今天在学习FaceBoxes~看到一句代码不是很懂,prior_data = priors.data因为data是torch.Tensor类的一个成员变量,感觉这样操作没有什么意义呀?我也测试过通过data生成的Tensor,两者的数值和类型是完全一样的;3Pytorch中torch.Tensor.data操作的含义这里要感...原创 2019-11-28 17:39:13 · 10542 阅读 · 2 评论 -
《深度学习笔记》——初识PyTorch的学习笔记
1 致谢感谢网友爱吃鱼的不止大脸猫的帮助,原文链接如下:https://www.jianshu.com/p/4905bf8e06e52 PyTorch数据类型torch.Tensor:Torch中的张量类型,.requires_grad属性默认是False;3 PyTorch文件介绍pt文件:保存PyTorch模型的文件;...原创 2019-11-19 23:57:39 · 210 阅读 · 0 评论 -
【PyTorch】夏侯南溪的安装教程
1 致谢感谢网友夜幕下的光123提供的帮助,原文链接如下:https://blog.csdn.net/songchunxiao1991/article/details/951920632 前言今天在学习张老师发的代码~张老师给的MTCNN代码是用PyTorch实现的,所以我们需要在Ubuntu系统上安装PyTorch~3 Ubuntu上Pytorch的安装教程step 1:这里我...原创 2021-01-21 20:03:42 · 1646 阅读 · 3 评论 -
目标检测——夏侯南溪模型搭建篇(legacy)
目录1 前言2 文件夹结构的设计3 如何编写CNN模型代码3.1 数据准备3.2 数据载入操作3.3 定义模型整体结构3.3.1 输入样本的预处理操作3.3.2 定义网络结构3.3 训练模型3.4 模型推理4 模型搭建备忘1 前言今天在学习MTCNN的代码~2 文件夹结构的设计2.1 文件夹命名使用小写字母命名,单词之间用短线“-”...原创 2019-11-04 12:28:51 · 821 阅读 · 0 评论 -
Pytorch——搭建深度神经网络的基本流程
1 致谢感谢莫烦老师的帮助,莫烦老师的教程对于初学者还是很有帮助的,莫烦老师Pytorch教程的链接如下:https://morvanzhou.github.io/tutorials/machine-learning/torch/2搭建深度神经网络的基本流程2.1 定义自己的神经网络类由Pytorch官方文档可知,自定义Net类必须显式地继承torch.nn.Module...原创 2019-09-23 17:15:01 · 787 阅读 · 0 评论 -
深度学习——Optimizer算法学习笔记(AdamW)
1 致谢感谢赵老师的讲授!2 前言今天在学习Pytorch~记得Johnson助教好像讲过有一个优化算法最好用的,不过忘了是哪一个了,然后就回顾了一下赵老师讲课的视频;3 最常用的Optimization算法是Adam方法最常用的Optimization算法是Adam方法。4 常见的Optimization算法4.1 SGD方法就是最普通的随机梯度下降方法。4.2 SGD wit...原创 2019-09-23 13:53:49 · 9929 阅读 · 2 评论 -
CUDA——Windows上CUDA的安装教程
1 致谢感谢网友没有人喜欢一个人、Young和无飞天下提供的帮助,原文链接如下:https://blog.csdn.net/u010618587/article/details/82940528https://www.cnblogs.com/xiaojianliu/p/9286066.htmlhttps://jingyan.baidu.com/article/3065b3b65...原创 2019-09-12 10:57:44 · 11633 阅读 · 2 评论 -
深度学习————如何在Python中求解函数的解析表达式
1 致谢感谢杨老师的教导!2 在Python中求解函数的解析表达式首先写出函数的表达式,然后使用SymPy函数库求解函数偏导数的解析表达式(符号微分),然后再使用SymPy库将求得的符号微分转换为对应的Python代码放入Pytorch代码中使用。...原创 2019-08-29 12:46:14 · 1385 阅读 · 0 评论