小编Abr*_*Ben的帖子

微调resnet50时如何冻结某些图层

我正在尝试使用keras调整resnet 50。当我冻结resnet50中的所有图层时,一切正常。但是,我想冻结部分resnet50,而不是全部。但是,当我这样做时,我会遇到一些错误。这是我的代码:

base_model = ResNet50(include_top=False, weights="imagenet", input_shape=(input_size, input_size, input_channels))
model = Sequential()
model.add(base_model)
model.add(Flatten())
model.add(Dense(80, activation="softmax"))

#this is where the error happens. The commented code works fine
"""
for layer in base_model.layers:
    layer.trainable = False
"""
for layer in base_model.layers[:-26]:
    layer.trainable = False
model.summary()
optimizer = Adam(lr=1e-4)
model.compile(loss="categorical_crossentropy", optimizer=optimizer, metrics=["accuracy"])

callbacks = [
    EarlyStopping(monitor='val_loss', patience=4, verbose=1, min_delta=1e-4),
    ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=2, cooldown=2, verbose=1),
    ModelCheckpoint(filepath='weights/renet50_best_weight.fold_' + str(fold_count) + '.hdf5', save_best_only=True,
                    save_weights_only=True)
    ]

model.load_weights(filepath="weights/renet50_best_weight.fold_1.hdf5")
model.fit_generator(generator=train_generator(), steps_per_epoch=len(df_train) // batch_size,  epochs=epochs, verbose=1,
                  callbacks=callbacks, validation_data=valid_generator(), validation_steps …
Run Code Online (Sandbox Code Playgroud)

neural-network keras resnet

3
推荐指数
1
解决办法
4335
查看次数

使用 keras.preprocess.image.ImageDataGenerator 时如何定义我自己的自定义图像预处理函数

我发现有一些图像预处理功能没有包含在 keras.preprocess.image.ImageDataGenerator

那么如何将我自己的自定义预处理功能添加到ImageDataGenerator.

image-processing deep-learning keras

3
推荐指数
1
解决办法
2214
查看次数