一问难求 2022-01-21 15:04 采纳率: 60%
浏览 2360
已结题

Runtime Error:尺寸不匹配

问题遇到的现象和发生背景

RuntimeError: Given groups=1, weight of size [16, 64, 3, 3], expected input[32, 512, 38, 38] to have 64 channels, but got 512 channels instead
SSD跑自制数据集,单类,黑白图片

问题相关代码,请勿粘贴截图
def _conv_forward(self, input: Tensor, weight: Tensor, bias: Optional[Tensor]):
    if self.padding_mode != 'zeros':
        return F.conv2d(F.pad(input, self._reversed_padding_repeated_twice, mode=self.padding_mode),
                        weight, bias, self.stride,
                        _pair(0), self.dilation, self.groups)
    return F.conv2d(input, weight, bias, self.stride,
                    self.padding, self.dilation, self.groups)
运行结果及报错内容

File "C:\Users\huayuan001.conda\envs\pyqxr\lib\site-packages\torch\nn\modules\conv.py", line 396, in _conv_forward
self.padding, self.dilation, self.groups)
RuntimeError: Given groups=1, weight of size [16, 64, 3, 3], expected input[16, 512, 38, 38] to have 64 channels, but got 512 channels instead

我的解答思路和尝试过的方法

解决方法1:使用debug找到通道不匹配的地方进行修改
解决方法2:是不是黑白图片通道数和voc数据集彩色图片通道数不一样

我想要达到的结果

解决此错误

  • 写回答

1条回答 默认 最新

  • 爱晚乏客游 2022-01-21 16:54
    关注

    维度不匹配。
    他希望你该层的输入为[32, 512, 38, 38],32位batch size,512为通道数,后面两位是H和W,但是你的卷积之后的通道数在该层只有64通道,16 batch size,h和w只有3,这就是通道数匹配不上

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 2月23日
    • 已采纳回答 2月15日
    • 创建了问题 1月21日

    悬赏问题

    • ¥15 问题描述:给定一个算术表达式,通过程序求出最后的结果
    • ¥15 spyder运行重复
    • ¥15 我考考你,这代码是对的还是错的?
    • ¥15 我用C语言easyx图形库绘制了一个3d游戏方框透视,但进入游戏时候鼠标准星对准方框边缘 鼠标光标就会弹出来这是啥情况怎样让光标对准绘制的方框点击鼠标不弹出光标好烦这样
    • ¥20 用Power Query整合的问题
    • ¥20 基于python进行多背包问题的多值编码
    • ¥15 相同型号电脑与配置,发现主板有一台貌似缺少了好多元器件似的,会影响稳定性和使用寿命吗?
    • ¥15 C语言:数据子序列基础版
    • ¥20 powerbulider 导入excel文件,显示不完整
    • ¥15 paddle训练自己的数据loss降不下去