将权重从 TensorFlow 检查点加载到 Keras 模型

Ali*_*Osm 5 python keras tensorflow

我已经使用 Keras 模型训练了 TensorFlow,并使用keras.callbacks.ModelCheckpoint我保存了权重,如下所示:

cp_callback = keras.callbacks.ModelCheckpoint(checkpoint_path,
                                          save_weights_only=True,
                                          verbose=1)
model.fit(X_train, Y_train, callbacks=[cp_callback], epochs=50, batch_size=256)
Run Code Online (Sandbox Code Playgroud)

但是,在尝试加载保存的权重时,我的模型没有任何变化,在构建模型架构并编译之后,我加载权重如下:

model.load_weights('./checkpoints/cp.ckpt')
Run Code Online (Sandbox Code Playgroud)

但什么也没发生,测试准确率是随机猜测的,而我的真实测试准确率是80.49%

该模型由带有 l2 kernel_regularizer 和 glorot kernel_initializer 的 keras dence 层组成,我也使用 TensorFlow 版本 1.12.0,有什么想法吗?