Tensorflow 随笔 (三)

上图我们可以发现,对于 simple_cnn 来说,数据增强有很明显的作用,可以显著提高 val_acc,也就是模型的泛化性。

对于 pre-trained model(此处用作 feature extraction)来说,此处用的是 mobilenetV2,因为模型是在 imagenet 大型数据集上做的预训练,已经见过很多图片数据了,同时模型能更新参数的部分只有 top-classifier,所以此处的数据增强效果并不是特别显著,数据增强的作用主要是让模型能见到更多的数据多样性,以此减轻过拟合,增强泛化。

我们接着对模型进行了 finetune 训练,相比于 freeze feature extraction 部分来说,我们 unfreeze 了顶部几层卷积,使模型更加适合目前的任务,相比来说提高了几个百分点。

上图我们可以看到,模型在训练几个 epoch 之后,val_acc 已经达到饱和,此时我们接着训练,会发现 val_loss 在上升,此处是因为模型置信度下降引起的。
评论