from keras.applications.resnet import ResNet50
pre_model = ResNet50(include_top=False, input_shape=(64,64,3))
include_top 代表是否运用全连接层
input_shape 代表输入的大小, 不同网络有限制,可以参考官网说明
将前面的卷积层给停用
数据较少不建议使用自己训练的
数据较多可以使用部分训练
数据大的时候可以自己重新训练模型
for layers in pre_model.layers:
layers.trainable =False
开始训练
构建全连接层
x = keras.layers.Flatten()(pre_model.output)
x = keras.layers.Dense(1024, activation="relu")(x)
x = keras.layers.Dropout(0.2)(x)# 输出层
x = keras.layers.Dense(1, activation='sigmoid')(x)