如何在Keras中使用中级微调?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Keras中使用中级微调?相关的知识,希望对你有一定的参考价值。

我的任务是调整来自Keras的预训练网络,用于航拍图像的分类(我们有30类航空图像的数据库,每个图像包含200-400个图像)。现在,我真正理解的是下一部分。

我们必须使用较小的图像数据库进行中级微调,其中包含21个航空类别。

我怎样才能做到这一点?

我是否应该尝试在VGG16网络之上微调较小的数据库,然后保存模型并在其上训练较大的数据库?

答案

我猜他们希望你通过冻结它的第一个X层并仅更新最后几层的权重(可能只是最后一层,不确定“中级微调”意味着什么来微调训练模型)。

您需要采用训练有素的模型,并将其最后一层用30个输出替换为新的21个输出层。然后,您需要冻结所有其他图层(新图层除外)并在新数据集上训练模型。

在Keras你只需要为每一层设置:“trainable = False”。 How can I "freeze" Keras layers?

以上是关于如何在Keras中使用中级微调?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用keras微调inception v3做多类分类?

在 keras 中使用批量标准化进行微调

在 keras 中微调预训练模型

[WTL/ATL]_[中级]_[自定义TrackBar]

[WTL/ATL]_[中级]_[自定义TrackBar]

如何在 keras 中进行深度学习中的多标签分类?