我是靠谱客的博主 顺心网络,最近开发中收集的这篇文章主要介绍RuntimeError: mat1 dim 1 must match mat2 dim 0 报错解决,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
原因是输入特征的维度不匹配导致
解决方案1:使用avg_pool2d函数将特征图转换成1维
self.linear3 = nn.Linear(96, 128)
'''
'''
#如果输入的每个特征图的大小是10x2,则用kernel_size=10x2, 对每个10x2的特征图进行avg_pool
out = F.avg_pool2d(out, (10,2))
out = out.view(out.size(0), -1)
out = self.linear3(out)
解决方案2:使用AdaptiveAvgPool2d自适应平均池化,不用额外计算特征图大小
self.linear3 = nn.Linear(96, 128)
self.avg = nn.AdaptiveAvgPool2d(1)#自适应平均池化
'''
'''
out = self.avg(out)
out = out.view(out.size(0), -1)
out = self.linear3(out)
最后
以上就是顺心网络为你收集整理的RuntimeError: mat1 dim 1 must match mat2 dim 0 报错解决的全部内容,希望文章能够帮你解决RuntimeError: mat1 dim 1 must match mat2 dim 0 报错解决所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复