Duh*_*uha 5 python load machine-learning save xgboost
我在加载 xgboost 模型时遇到问题。当我使用model.save_model("xgbt.bin")以下代码保存我的 xgboost 模型并尝试加载它时:
load_model=xgboost.Booster.load_model("xgbt.bin")
然后我通过此打印 load_model 的类型
print(type(load_model)),它是 print <class 'NoneType'>
当我尝试时也prediction=load_model.predict(api_data)
发生了此错误:
AttributeError: 'NoneType' object has no attribute 'predict'
小智 5
XGBoost 框架将模型直接存储到 XGBoost 对象。该函数load_model本身返回打印的 NoneType 对象:
def load_model(self, fname: Union[str, bytearray, os.PathLike]) -> None
Run Code Online (Sandbox Code Playgroud)
加载模型,如下所示,将正确返回您想要的对象:
import xgboost as xgb
xgb_model = xgb.Booster()
xgb_model.load_model(path_to_file)
Run Code Online (Sandbox Code Playgroud)
现在您可以像平常一样预测:
predicted_values = xgb_model.predict(validation_data)
Run Code Online (Sandbox Code Playgroud)