我的任务是将Keras的预训练网络用于航空图像分类(我们有一个包含30种航空图像类别的数据库,每个类别包含200-400个图像)。 现在,我不太了解的是下一部分。
我们必须使用较小的图像数据库进行中级微调,该数据库包含21种航拍类别。
我该如何实现?
我应该尝试在VGG16网络顶部微调较小的数据库,然后保存模型并在其之上训练较大的数据库吗?
答案 0 :(得分:0)
我猜想他们希望您冻结前X层并仅更新最后几层的权重(也许只是最后一层,不确定“中级精细化”,调整”)。
您需要采用经过训练的模型,并用30个输出替换其最后一层,以新的21个输出层代替。然后,您需要冻结所有其他层(新层除外),并在新数据集上训练模型。
在Keras中,您只需要为每个图层设置:“ trainable = False”。 How can I "freeze" Keras layers?