【问题标题】:Keras Tuner Save Best ModelKeras Tuner 保存最佳模型
【发布时间】:2021-03-07 16:25:15
【问题描述】:

我目前正在尝试使用 keras Tuner 为我的 CNN 创建一个模型,但我在保存模型以供将来使用时遇到了一些问题。

按照我的习惯,我可以定期使用model.save(filename) 保存我的模型以接收.model 文件;但是,当使用以下代码尝试此操作时:

tuner = RandomSearch(
    build_model,
    objective = "val_accuracy",
    max_trials = 5,
    executions_per_trial = 1,
    directory = LOG_DIR
)

tuner.search(x= x_train, y= y_train, epochs= 1, batch_size=64, validation_data= (x_test, y_test))

bestModels = tuner.get_best_models(num_models=1)
highestScoreModel= models[0]

highestScoreModel.fit(x=x_train, y=y_train, batch_size=64, epochs=5, verbose=1, validation_split=0.2)

highestScoreModel.save("Trained_Model")

我收到了一个Trained_Model 文件夹,其中没有模型,只有参数。如果有人可以帮助我保存实际经过训练的模型,我将不胜感激。

=================编辑/更新================

我现在找到了一种通过筛选生成的试用文件来获取 trial_id 的方法。不过,当我跑步时:

trial_id = getID()
tuner.save_model(trial_id=trial_id, model=highestScoreModel, step=0)

似乎什么都没有发生,没有保存文件出现。再次感谢您在此问题上的任何帮助。

【问题讨论】:

    标签: python keras conv-neural-network keras-tuner


    【解决方案1】:

    试试这个

    Tuner.save_model(trial_id, model, step=0)
    

    在哪里

    • trial_id 是您的型号试用号
    • model 是你训练好的模型
    • step 是纪元数

    【讨论】:

    • 谢谢你,我刚刚意识到这是在文档中,很抱歉这个问题!不过,我在获取模型的跟踪 ID 时遇到了一些问题,有什么建议吗?
    猜你喜欢
    • 2018-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 2019-08-04
    • 2018-08-02
    • 2019-06-13
    相关资源
    最近更新 更多