pytorch RuntimeError: size mismatch, m1: [16 x 86016], m2: [25088 x 512] at /opt/conda/conda-bld/pyt
报错内容:
Traceback (most recent call last):File "/home/user1/main_arc_face.py", line 534, in <module>main()File "/home/user1/main_arc_face.py", line 315, in mainval_loss, prec1 = validate(val_loader, model, criterion)File "/home/user1/main_arc_face.py", line 455, in validateoutput = model(input)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/modules/module.py", line 493, in __call__result = self.forward(*input, **kwargs)File "/home/user1/arc_face/model.py", line 173, in forwardx = self.output_layer(x)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/modules/module.py", line 493, in __call__result = self.forward(*input, **kwargs)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/modules/container.py", line 92, in forwardinput = module(input)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/modules/module.py", line 493, in __call__result = self.forward(*input, **kwargs)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/modules/linear.py", line 92, in forwardreturn F.linear(input, self.weight, self.bias)File "/home/user1/miniconda3/lib/python3.7/site-packages/torch/nn/functional.py", line 1406, in linearret = torch.addmm(bias, input, weight.t())
RuntimeError: size mismatch, m1: [16 x 86016], m2: [25088 x 512] at /opt/conda/conda-bld/pytorch_1556653215914/work/aten/src/THC/generic/THCTensorMathBlas.cu:268
原因:调整了训练的图像输入,测试时的没有调整。导致训练没问题,测试报错。ArcFace不管是训练输入还是测试输入,都是112x112的(也可能不一定非得112,但是需要统一),所以训练改了测试也要改。transforms.Resize((112, 112)),
修复:
val_loader = torch.utils.data.DataLoader(CelebA(args.data,'val_40_att_list.txt',transforms.Compose([transforms.Resize((112, 112)),transforms.ToTensor(),normalize,])),batch_size=args.test_batch, shuffle=False,num_workers=args.workers, pin_memory=True)
是怎么想到这一点的呢?
从这个报错来看:m1: [16 x 86016], m2: [25088 x 512]
86016 = 512 x 14 x 12,而25088 = 112 x 112 x 2
设置一个小的数据集做测试,在模型定义的forward函数中 报错的位置(x = self.output_layer(x)) 输出数据的shape,对比训练和测试时候的shape变化异同,可以发现问题。
def forward(self,x):x = self.input_layer(x)x = self.body(x)# print(x.shape) x = self.output_layer(x)# print(x.shape) y = []for i in range(self.num_attributes):classifier = getattr(self, 'classifier' + str(i).zfill(2))y.append(classifier(x))return y
类似的问题在这里:pytorch RuntimeError size mismatch, m1: [64 x 100], m2: [784 x 128] at /pytorch/aten/src/TH/generic/THTensorMath.cpp:2070
pytorch RuntimeError: size mismatch, m1: [16 x 86016], m2: [25088 x 512] at /opt/conda/conda-bld/pyt相关推荐
- pytorch RuntimeError: size mismatch, m1: [64 x 784], m2: [784 x 10] at
from torch import nnclass Mnist_Logistic(nn.Module):def __init__(self):super().__init__()self.lin=nn ...
- PyTorch RuntimeError: size mismatch, m1:
在查看torch的FastRCNNPredictor官方实现时,想弄清楚一些细节,其中nn.Linear使用的时候需要给定(in_channels, num_classes). 随便打一点测试代码,报 ...
- pytorch搭建cnn报错:RuntimeError: size mismatch, m1: [10 x 43264], m2: [10816 x 2] at C...
具体报错信息: Traceback (most recent call last):File "E:/Program Files/PyCharm 2019.2/machinelearning ...
- 做项目遇到问题 2 AWS NLP 剽窃RuntimeError: size mismatch, m1: [10 x 3], m2: [2 x 10]检测部署报错
报错 RuntimeError: size mismatch, m1: [10 x 3], m2: [2 x 10] 原因: train.csv 为100x4 4列 第一列 标签是否剽窃 ...
- RuntimeError: size mismatch, m1: [80 x 4], m2: [320 x 50] at ..\aten\src\TH/generic/THTensorMath.cpp
RuntimeError: size mismatch, m1: [80 x 4], m2: [320 x 50] at -\aten\src\TH/generic/THTensorMath.cpp: ...
- RuntimeError: size mismatch, m1: [512 x 12800], m2: [2048 x 1024] at C
RuntimeError: size mismatch, m1: [512 x 12800], m2: [2048 x 1024] at C 说一下这错误,意思就是m1和m2两个数组尺寸不一样. 为啥 ...
- Pytorch-RuntimeError: size mismatch m1: [a x b], m2: [c x d]
Pytorch-RuntimeError: size mismatch m1: [a x b], m2: [c x d] 在进行深度学习的代码中,在采用线性层进行转化的时候可能出现size misma ...
- 【error】RuntimeError: size mismatch与全连接fc层
今天跑代码的时候遇到了这个错误: RuntimeError: size mismatch, m1:[1152 x 1] ,m2:[576 x 192] ,at /opt/conda/conda-bld ...
- RuntimeError: size mismatch
RuntimeError: size mismatch出现于pytorch框架下加载VGG11预训练模型时出现的错误.笔者初期认为,出现该错误的主要原因是输出和输入的维度不匹配.带着疑惑,我们通过输出 ...
- 深度学习 cnn pytorch框架报错 size mismatch, m1: [ x ], m2: [ x ] Captcha.ImageCaptcha设置生成图片的大小尺寸
看总结直接拉最后 这里很大程度是因为图片大小不一致,可以通过 resize命令来进行图片的归一化. 如果是通过captcha库里面的ImageCaptcha生成的验证码,百度上 没有任何资料说可以改变 ...
最新文章
- 新的一年,开始新的学习旅途
- sdut-1117 C语言实验——求绝对值(选择结构)
- ASP.NET MVC XML绑定Action参数列表
- Implementation:Bellman-ford
- bzoj3122 [Sdoi2013]随机数生成器(bsgs+扩欧+数列)
- jquery getjson php,jquery中调用php json函数的方法分享
- 虚拟机中部署ISA Server 2006 防火墙 网络设置(上)
- 计算机桌面工具栏出现闪烁,电脑任务栏图标一直闪动怎么解决
- 常见的激励函数和损失函数
- 关于数据依赖的公理系统之Armstrong公理系统推理证明
- [笑话]让古龙看了要痛哭的高考作文(作品相当强,但得了零分,据说被破格入取了)!!!...
- android-17手机,安卓手机好评排行:魅族17第四,小米10至尊第六,第一名意料之中...
- java mail 发送邮件_JavaMail实现收发邮件——(二)发送邮件
- C++实现DLL注入的完整过程
- graphql_GraphQL简介
- SQL Server高级教程
- 字符串低位优先排序(LSD)和高位优先排序(MSD)原理及C++实现
- 联想电脑一开机出现Checking Media Presence……
- 海量数据处理之 Bit-map 详细讲解
- 凡科建站产品体验报告
热门文章
- 在线QQ客服链接,只添加 qq号
- java画乌龟_简单的实现java多线程——龟兔赛跑
- ❤️肝下25万字的《决战Linux到精通》笔记,你的Linux水平将从入门到入魔❤️【建议收藏】
- LeetCode - 448 - 找出所有数组中消失的数字(find-numbers-disappeared-in-array)
- 晚安西南-----地破实验
- 计算机四级考448分算低吗,英语4级成绩,四级300多成绩单有用吗。
- 推荐个echarts网站
- 手机H5如何对接支付宝登陆授权以及支付(H5网站支付)
- nginx流媒体服务器性能,搭建nginx流媒体服务器(支持HLS)
- 标准的软件测试文档,软件测试上线的标准是什么?