主要可能出现的原因:1.传入传出的通道数不对;2.net最终全连接输出的class数目对不上labels;3. devices没有具体到某一个,而是一个list;4. 关了重新再连。建议先用一个单tensor如下,进行检验net的输入输出正确性,再放到dataset上。
X = torch.rand(size=(32, 3, 224, 224)).to(devices[0])
for layer in net:
X = layer(X)
print(layer.__class__.__name__,'output shape:\t', X.shape)
笔者首先尝试了前三个,结果还是报这个错,确认修改无误了把这玩意关了,再打开,正常运行了。。。