【发布时间】:2021-05-25 23:23:56
【问题描述】:
我是 AI 和 python 的新手,我正在尝试构建一个架构来训练一组图像。后来的目标是过度拟合。但到目前为止,我无法理解如何正确获取输入和输出。每当我尝试训练网络时,我都会一直看到错误:
mat1 and mat2 shapes cannot be multiplied (48x13456 and 16x64)
我的网络:
net2 = nn.Sequential(
nn.Conv2d(3,8, kernel_size=5, padding=0),
nn.ReLU(),
nn.MaxPool2d(kernel_size=2, stride=2),
nn.Conv2d(8,16, kernel_size=5, padding=0),
nn.ReLU(),
nn.MaxPool2d(kernel_size=2, stride=2),
nn.Flatten(),
nn.Linear(16,64),
nn.ReLU(),
nn.Linear(64,10)
)
这是我正在处理的任务的一部分,我真的不明白为什么它没有运行。任何提示!
【问题讨论】:
-
你输入的形状是什么?
-
我不确定@Darina 是什么意思,但我认为 torch.Size([48, 3, 128, 128])
-
我不是 Torch 专家,可能是错的,但在我看来,问题出在线性层的维度上。看看这篇很不错的文章:towardsdatascience.com/…
标签: python pytorch artificial-intelligence conv-neural-network