代码之家  ›  专栏  ›  技术社区  ›  PyRsquared

如何将xgboost模型保存为json的json?

  •  0
  • PyRsquared  · 技术社区  · 4 年前

    培训完xgboost模型后,我想将其和其他一些自定义字段保存为json对象,如下所示。这样我就可以在以后加载json对象,使用model对象进行预测,以及检查其他自定义字段。

    model = xgb.train(params=tree_params, dtrain=data)
    my_model_dict = {
        "model": ...<json serializable model object>...,  # need help here
        "features": model.feature_names,
        "tree_params": tree_params,
        ...
    }
    json.dumps(my_model_dict, file_path)
    
    my_model_dict = json.load(file_path)
    model = my_model_dict["model"]
    predictions = model.predict(new_data)
    

    是否可以将xgboost模型对象转换为可json序列化的对象 然后可以加载它来进行标准的xgboost预测?

    我很感激我可以使用json将原始模型单独保存为json

    model.save_model("my_model.json")
    model = xgb.Booster("my_model.json")
    model.predict(new_data)
    

    但我真正想做的是创建一个包含模型和其他自定义字段的字典,这些字段可以保存为json,然后加载以进行预测。

    0 回复  |  直到 4 年前