克隆前和克隆后的 keras 模型表现不同

fro*_*ine 2 predict neural-network sequential python-3.x keras

我正在进行手动网格搜索以找到 keras 模型的最佳参数。对于每个参数组合,我检查其验证精度是否优于先前训练的模型而不是克隆该模型,以便在检查所有参数组合后,可以使用具有最佳验证精度的模型在测试集上进行预测。问题是:为什么预测函数对于克隆模型的行为不同:'

  1. 我运行 Model.fit (...)

  2. 比 Model.predict (X_test) -- 它给我标签编码输出并且:当我像这样克隆这个模型时:

  3. BestModel = keras.models.clone_model(model.model)

  4. BestModel.predict (X_test) 给出概率。

ps:我的目标类首先是标签编码,然后是一个热编码形式。

小智 5

Keras 仅复制模型的结构,而不复制权重。您还需要将它们复制过来。例如

BestModel.set_weights(Model.get_weights())
Run Code Online (Sandbox Code Playgroud)