YaoXie2 / Resnet50InCub200

resnet50code
11 stars 2 forks source link

关于ResNet50在CUB_200_2011数据集上精度的一些问题 #1

Open Wangzifu98 opened 2 years ago

Wangzifu98 commented 2 years ago

关于精度我有一些疑问,我也复现了只用ResNet50的预训练模型在CUB200数据集上的分类结果

net

model = torchvision.models.resnet50(pretrained=True)
model.fc = nn.Linear(2048, num_class)

并在Epoch34获得了0.8607的测试精度

epoch:34, loss:0.5829, acc:0.8607

对此我有一些疑问 例如FT ResNet-50模型的paper精度为84.1 但是我只用ResNet就轻松达到了86的精度 这样岂不是提出的方法还不如只用主干网络的效果 考虑到模型泛化的问题 又尝试了其他几个常用细粒度数据集 都发现只用主干网络反而比提出的网络模型效果要好

epoch:18, loss:0.3178, acc:0.9238 (StandCars数据集) paper精度91.7

epoch:23, loss:0.3678, acc:0.9067 (Aircraft数据集) paper精度88.5

bftan1949 commented 2 years ago

请问只使用ResNet50有可能使准确率达到90%左右吗?

bftan1949 commented 2 years ago

关于精度我有一些疑问,我也复现了只用ResNet50的预训练模型在CUB200数据集上的分类结果

net

model = torchvision.models.resnet50(pretrained=True)
model.fc = nn.Linear(2048, num_class)

并在Epoch34获得了0.8607的测试精度 #epoch:34, loss:0.5829, acc:0.8607 对此我有一些疑问 例如FT ResNet-50模型的paper精度为84.1 但是我只用ResNet就轻松达到了86的精度 这样岂不是提出的方法还不如只用主干网络的效果 考虑到模型泛化的问题 又尝试了其他几个常用细粒度数据集 都发现只用主干网络反而比提出的网络模型效果要好 #epoch:18, loss:0.3178, acc:0.9238 (StandCars数据集) paper精度91.7 #epoch:23, loss:0.3678, acc:0.9067 (Aircraft数据集) paper精度88.5

请问您可以发布下86精度的模型细节吗?我这里只能到80

Wangzifu98 commented 1 year ago

请问只使用ResNet50有可能使准确率达到90%左右吗?

应该不太可能

Wangzifu98 commented 1 year ago

没有细节 我就仅仅使用了resnet50的预训练模型

chiyan2022 commented 1 year ago

你问题解决了吗,我也是能跑到86%+

bftan1949 commented 1 year ago

你问题解决了吗,我也是能跑到86%+

我加了很多trick, 包括知识蒸馏, 标签平滑等, 但最终结果也只能跑到86%+, 只用数据集中的图片+resnet50感觉是没办法达到90%的, 但是在CUB数据集中, 它除了照片还包含了很多其他信息, 比如人为标注的框, 如果加上这些信息, 估计可以比86%要高, 可以试一试