一、报错信息
RuntimeError: Given groups=1, weight of size [512, 1024, 1, 1], expected input[8, 320, 20, 20] to have 1024 channels, but got 320 channels instead
RuntimeError: Given groups=1, weight of size [256, 1024, 1, 1], expected input[8, 96, 40, 40] to have 1024 channels, but got 96 channels instead
RuntimeError: Given groups=1, weight of size [128, 512, 1, 1], expected input[8, 32, 80, 80] to have 512 channels, but got 32 channels instead
二、原因分析
我的网络理论上三个输出通道分别是32,96,320.但是训练时候会弹出上面三个错误,此类信息都是说明通道不匹配。
三、调试方法
1.运行后出现上述错误之后,在点击相关错误跳转到具体网络模块,通常为网络正向传播过程中某个特征层处,比如feat1、feat2、feat3。
2.然后在相应的特征层处设置断点,进行debug断点调试,验证网络正向输出的三个特征层是否为32,96,320.
3.通常是一样的,但是在三个正向传播过程中的函数的网络是和三个正向传播输出的特征层是不一样,这个时候的通道就是和运行过程中的通道一致,将其修改为和网络正向传播过程中三个特征层的通道数一致的通道即可完成调试,进行正常训练。
版权声明:本文为qq_45825952原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。