赞
踩
声明: 这里仅仅提供一个思路,暂时没有绝对正确通用的解决方案
作者:{ 墨理 }
感谢通过私信、评论交流,协力探讨解决问题的同学 UP 、Penser
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0
探讨结论:
Sizes of tensors dimension 说明 错误的发生是因为 tensors 的维度 不一致;
我的 第一反应是检查数据是不是混入非 3 通道的 数据;
但是呢正确做法是
输入 报错前后 数据变量 的 shape 和 size 来观察 ,根据经验往往会发现 某个tensor 数据 只有 3个维度 ,而其它是 4个 维度 ;
这种情况,需要 给 该 tensor expand 一个 维度;会用到 pytorch 张量 维度扩充 的 方法;
batchsize 需要设置 为 1 ;
这种情况,其实一个良好的代码是不应该有 batchsize 大小限制的,只能是 1 ,那岂不是很扯;
然而我们下午就很不巧因为这个问题探讨了很久,结果发现 batchsize 设置 为 1 ,这个错误就消失了;
裁剪修正,使得训练数据集和目标或者最终所需要对比配对的数据集图像的尺寸一致
这位小伙伴在这篇博客下进行的交流,一周后,给出的解决方法截图如下
因为大家所做实验会是不同研究方向,数据集也未必一致,因此解决思路未必通用
按照逻辑来说,目前最终归纳 几种 尝试 解决方法如下:
这是目前已知的可能解决该问题的经验之谈,其它方法 如确实能够解决问题,欢迎补充;
各位大佬,如能解决,欢迎评论区补充你的解决方案;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。