06 2022 档案
摘要:#仅作记录 Resnet骨架的搭建与参数加载 import torch.nn as nn import torch.utils.model_zoo as model_zoo # Imagenet resnet model_urls = { 'resnet18': 'https://download.
阅读全文
摘要:#1 就直接上我的代码吧,主要是对max函数与lambda函数的学习。 其中max函数的说明[1] 是一个最大值函数,返回输入数据(可迭代的,如列表字典等等)的最大值,同时可以通过key属性(输入为函数),输出需要的数据最大值 lambda函数的说明[2] 是一种轻量级的函数定义方法,刚好可以巧妙地
阅读全文
摘要:#问题 重新加载训练的时候出现了这样的问题。我的训练步骤是加载resnet,然后冻结resnet参数,解冻resnet中的bn层(为什么解冻我前面有博客),保存模型。之后再重新加载 #解决 根据pytorch论坛上的一个帖子[1],然后根据他的说法是,optimizer的定义放在了参数冻结之前,导致
阅读全文
摘要:#问题 训练网络往往需要加载预训练模型,主流的就是ResNet一类的预训练好的参数 但我在加载了预训练模型,并冻结与训练参数后,进行训练时,发现了两个问题 ##1 在进行test中model.train()的准确率要远高于model.eval()差别大概在7个点左右。 其中model.eval()
阅读全文
摘要:#问题 感谢pycharm,我还不知道有一天我会发现这种问题,我本来是查看一下batchnorm2d中tensor的requires_grad属性,然后我就顺着快捷栏点下来的。结果发现requires_grad_()与requires_grad完全不一样。 #代码 requires_grad for
阅读全文
摘要:#目标 在训练网络的时候,往往需要实现一个实时输出epoch、batch_id、loss的方法。当然我们可以一个epoch输出一次,但为了更好的了解loss的变化,我们可以每次迭代都输出一次。但每次print都会重启一行,这样一个epoch下来会输出很多行,非常的不方便。我们可以巧用print函数来
阅读全文
摘要:#问题 问题是这样的,我简单描述一下。我在处理NYU标签图的过程中被imwrite实实在在坑了一把。我处理的是40classes的标签图,其中从matlab中读出的矩阵格式是uint16 然后我准备通过imwrite的方式将其保存为png图像 cv2.imwrite(dir, labels[:, :
阅读全文
摘要:#内容 也就是稍微mark一下。平时的深度相机所采集的数据一般是一个三通道的RGB图像和一个单通道的depth图像(深度信息),但其实为了更好的让单通道的深度信息被CNN所处理,提出了基于depth的HHA编码方法。详细内容可以看这篇论文,有机会的话我更新在论文集合里,只能说大佬就是大佬,能想到这些
阅读全文
摘要:#记录 算是自己一点点小小的记录,以前很少看开源的代码,都自己闷头写,最后才发现自己写的就是shi。不看不学不练啊,读开源代码不代表不自己造轮子,而是要学会别人编程的思想并学习,自己检讨我自己。 最近确实压力很大,想把这篇文章水出来,可是一来没有人带,导师是拉项目大师,只会分配杂活,教你是不可能的,
阅读全文
摘要:#问题 关于在pytorch中冻结参数,我看网上大多都使用了 for param in net.parameters(): param.requires_grad = False 但我的需求是这样的,我创建了一个dict,里面含有对应的tensor的name与param,我想让根据这些名称对网络的参
阅读全文

浙公网安备 33010602011771号