pytorch 训练模型遇到的问题,以及解决方案

  • 问题 1
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 339 and 372 in dimension 2 at /pytorch/aten/src/TH/generic/THTensor.cpp:612

网上查找之后,应该是因为不同图片的size 维度不对造成的;于是我在dataset.py
生成data那里,每一张图都进行了crop 于是这个问题解决了。

  • 问题2
 input_img = input_img.crop(0, 0, 125, 125)
TypeError: crop() takes from 1 to 2 positional arguments but 5 were given

我在这里犯的低级错误
记得crop的时候里面那个box 加[0,0,125,125]

记得自己最终训练的时候,要使用中心裁剪或者随机裁剪,选出一个500 500大小的范围

总之要保证每一个batch里面的图片大小是一样的

  • loss.backward()
    AttributeError: ‘int’ object has no attribute ‘backward’

File “/root/superresolution_nn_112020/trainer.py”, line 227, in train
loss.backward()
AttributeError: ‘int’ object has no attribute ‘backward’

后来发现是自己输入格式写错了

就比如python train.py --load_name ‘tcl_x4_bright.pkl’ --epochs 100 --num_workers 1 --GT_dir ‘./HR’ --LR_dir ‘./LR’ --loss ‘ssim’ --batch_size 8

这样子是OK的 没事。
–loss [‘ssim’, ‘tv’]
这样子会报错

但是loss改成这样 --loss ‘ssim’, ‘tv’
也没事~

bingo
今日份debug完事,开心

你可能感兴趣的:(python,学习)