如何将重新输出的图像与输入图像的原始大小连接起来?



我有17个类的图像数据集。有些班级的大小有很大的不同。一个类中的图像平均为25x200,另一个类中的图像平均为25x25。我的想法是将预训练的resnet18的输出和原始图像的大小联系起来,因为我认为这是一个有价值的分类信息。

更具体地说-我想使用resnet18,但最后一层是(fc):线性(in_features=512, out_features=17, bias=True)我还想添加图像。形状可能对更好的分类很重要。

这是这种问题的合理解决方案,是否有办法在PyTorch中实现?

我猜你想使用自适应池层产生的嵌入来固定输出大小。首先你需要去掉最后一个线性图层(见这篇文章):

model = models.resnet152(pretrained=True)
newmodel = torch.nn.Sequential(*(list(model.children())[:-1]))

然后你可以得到嵌入并使用pytorch。Cat用于连接:

out = model(X)
emb = torch.cat([out, X.shape])

相关内容

  • 没有找到相关文章