![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
debug
每天不停debug
这个作者很懒,什么都没留下…
展开
-
pytorch 训练编解码网络进行图像重建时mse loss不下降
将transform.normalize()的参数修改为mean = [0.5], std = [0.5]输入图像为灰度图像,所以只有单通道,修改前loss降至0.7左右不再下降,修改后可以降至0.07之前试过修改激活函数、优化器等都不能解决问题但为何如此,还没有搞明白。解决了再来更新...原创 2022-02-10 21:15:59 · 2580 阅读 · 2 评论 -
网络训练过程中loss不下降,稳定在ln(类别数)
神经网络再训练过程中,loss不下降,稳定再ln(类别数),如二分类问题稳定在0.69,十分类问题稳定在2.30,出现这种情况:①检查卷积层中间层输出,可能出现了weight NaN,导致卷积输出NaN,此时网络预测结果全部相同,所有目标被判为同一类;②检查网络最后一层是否添加了relu或softmax等激活函数③调整参数,如降低学习率,修改optimizer,如从SGD换为Adam④调整网络权重初始化方式⑤在网络中添加BN层...原创 2021-09-11 20:38:55 · 477 阅读 · 2 评论 -
关于pytorch transforms
实验中发现在transform中使用翻转后数据量并没有增加,查阅资料后了解到,transforms并不是直接扩充样本量,而是将定义的各种变换以指定概率直接作用在原图片上,没有生成新样本。且在每次迭代过程中,各种变换随机发生,因此每次Epoch读进来的数据都是不一样的,相当于扩充了样本量。...原创 2021-07-23 14:24:44 · 268 阅读 · 0 评论 -
神经网络训练时Loss不下降
具体表现:训练时loss小范围震荡,三分类问题准确率一直在1/3,训练几个epoch后网络对每个batch输出的得分完全一致尝试很多方法,最终发现问题所在:没有写optimizer.zero_grad()其作用为:在进行下一次batch梯度计算的时候,前一个batch的梯度计算结果不应保留。所以在下一次梯度更新的时候,先使用optimizer.zero_grad把梯度信息设置为0。...原创 2021-06-30 10:35:51 · 1139 阅读 · 0 评论 -
RuntimeError: The size of tensor a (16) must match the size of tensor b (9) at non-singleton
原因:BATCHSIZE=16有一个数据集大小为697697➗16=43……9解决方案:设置Dataloader的drop_last为True,drop_last决定不足一个batch_size的数据是否保留。原创 2021-03-30 21:30:24 · 9045 阅读 · 3 评论 -
报错 SyntaxError: unexpected EOF while parsing
出现这种报错,一般是报错对应行 代码少写了一个括号,仔细检查一下原创 2021-03-30 20:28:38 · 143 阅读 · 0 评论 -
pytorch 加载模型报错:‘function‘ object has no attribute ‘copy‘
报错原因:保存模型时应是:torch.save(model.state_dict(), model_path)如果写成:torch.save(model.state_dict, model_path)就会报错:state_dict = state_dict.copy()AttributeError: 'function' object has no attribute 'copy'...原创 2021-03-26 15:45:48 · 3980 阅读 · 2 评论 -
pytorch 报错:RuntimeError: cuda runtime error (100) : no CUDA-capable device is detected
报错原因:原代码中针对多卡情况指定了GPU ’1‘,而实际单卡情况下为’0‘。解决办法:找到代码中如下语句,删除。os.environ["CUDA_VISIBLE_DEVICES"] = '1'原创 2021-03-10 20:52:32 · 2902 阅读 · 2 评论 -
pytorch + tensorboard:No dashboards are active for the current data set.
tensorboard --logdir='./logs'改为:tensorboard --logdir "./logs"即将路径 等号(=) 改为 空格+双引号( “”)修改后成功显示:原创 2021-02-02 16:53:32 · 115 阅读 · 0 评论 -
pytorch报错: expected dtype Double but got dtype Float
RuntimeError: expected dtype Double but got dtype Float (validate_dtype at ..\aten\src\ATen\native\TensorIterator.cpp:143)(no backtrace available)pytorch训练网络时报错如上,定位在loss.backward()语句,随后在import语句后加入torch.set_default_tensor_type(torch.DoubleTensor).原创 2021-02-01 16:58:24 · 896 阅读 · 1 评论