首页 > 解决方案 > 为什么微调的 vgg-16 在相同的数据集上比微调的 inception-v3 表现更好?

问题描述

我有一个我在现场收集的植物图像数据集。我用这个数据集训练了一个微调的 inception-v3 和一个 vgg16 模型。

这对于两个数据集都是一样的

opt = SGD(lr=0.001, momentum=0.09)
# Fine-tuning with a small learning rate
model.compile(loss = 'categorical_crossentropy',optimizer = opt,
              metrics=['accuracy'])

VGG16

我冻结了基础模型中的所有层,并训练了 50 个 epoch 以进行预热。然后我从层索引 15 开始解冻层并训练 100 个 epoch。

这就是结果。 在此处输入图像描述

在此处输入图像描述

初始v3

我冻结了基础模型中的所有层并训练了 20 个 epoch。接下来,我解冻层索引 249 以下的所有层,如keras 文档中所述,并训练了 100 多个 epoch。

这就是结果。

在此处输入图像描述 在此处输入图像描述

很明显,vgg16 的性能优于 inceptionv3。这是什么原因?

标签: pythontensorflowkerasdeep-learningneural-network

解决方案


推荐阅读