我需要微调像ResNet50这样的最先进的CNN模型的最后几层卷积层吗?

我的毕业项目是使用迁移学习在CNN模型上进行COVID-19的诊断,通过胸部X光图像。经过几天使用Keras调谐器库和贝叶斯优化器对超参数进行微调,例如全连接层的数量、层中的节点数量、学习率和丢弃率,我得到了非常好的结果,多类别分类测试准确率为98%,二元分类为99%。然而,我冻结了原始基础模型的所有层。我只在经过详尽的超参数优化后微调了最后的全连接层。大多数文章和论文都表示他们不仅微调了全连接层,还微调了一些卷积层。我做错了什么吗?我担心这太好了,不可能是真的。

我的数据集不是很大,只有从Kaggle的COVID-19竞赛中获取的7000张图像。

我在训练和分类之前对图像使用了图像增强技术,如N-CLAHE,这显著提高了准确率,相较于不增强图像的情况。

我对多个最先进的模型做了同样的处理,例如VGG-16和ResNet50,它们都给了我极好的结果。


回答:

如果你指的是“只微调了最后的全连接层”,那么没有,你没有做错。

你可以选择微调任何你选择的层,但最重要的是模型的最后几层,这就是你所做的,所以你可以继续进行下去。

Related Posts

如何对SVC进行超参数调优?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

如何在初始训练后向模型添加训练数据?

我想在我的scikit-learn模型已经训练完成后再…

使用Google Cloud Function并行运行带有不同用户参数的相同训练作业

我正在寻找一种方法来并行运行带有不同用户参数的相同训练…

加载Keras模型,TypeError: ‘module’ object is not callable

我已经在StackOverflow上搜索并阅读了文档,…

在计算KNN填补方法中特定列中NaN值的”距离平均值”时

当我从头开始实现KNN填补方法来处理缺失数据时,我遇到…

使用巨大的S3 CSV文件或直接从预处理的关系型或NoSQL数据库获取数据的机器学习训练/测试工作

已关闭。此问题需要更多细节或更清晰的说明。目前不接受回…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注