在没有预训练权重的情况下使用来自 Keras 应用程序的模型

Use models from Keras Applications without pretrained weights

Keras Applications 提供了一些最流行的模型架构的实现,其中权重在一些最流行的数据集上进行了预训练。这些预定义模型对于迁移学习问题非常方便,这些问题与训练模型的数据集相似。

但是如果我有一个非常不同的问题并且想在新数据集上完全训练模型怎么办?如果我没有预训练权重,如何根据我自己的数据集从头开始使用应用程序中的模型进行训练?

您可以将 None 分配给权重变量,例如使用 inception V3 架构。

keras.applications.inception_v3.InceptionV3(include_top=False, weights='None', input_shape=input_shape = (img_width, img_height, 3))



include_top=False 将允许您使用自定义网络训练顶层。

weights='None' 表示我们在没有任何权重的情况下进行训练,如果您想使用 imagenet 权重进行训练,请将其设置为 weights='imagenet'