请教:
如何在回测中载入已经保存好经过训练的XGBoost模型?
我在研究中训练好了XGBoost的模型,且在研究环境下的根目录保存了文件(使用的代码:model.save_model('xgb.model'),其中model为经过训练的模型),保存的文件名为:
xgb.model
我尝试在回测中载入上述保存好经过训练的模型文件,回测中使用了代码:
model = xgb.Booster(model_file='xgb.model')
但是运行回测时提示错误如下:
File "/tmp/strategy/usercode.py", line 289, in selectstocks
model = xgb.Booster(model_file='xgb.model')
File "xgboost/core.py", line 889, in __init
self.load_model(model_file)
File "xgboost/core.py", line 1300, in load_model
_check_call(_LIB.XGBoosterLoadModel(self.handle, c_str(fname)))
File "xgboost/core.py", line 165, in _check_call
raise XGBoostError(_LIB.XGBGetLastError())
xgboost.core.XGBoostError: b'[19:20:46] lib-dynload/_ctypes.cpython-36m-x86_64-linux-gnu.so(+0x13885) [0x7f0f4d87e885]\n[bt] (8) /opt/conda/bin/python(_PyObject_FastCallDict+0x8b) [0x5654aaaf05bb]\n[bt] (9) /opt/conda/bin/python(+0x19cd6e) [0x5654aab79d6e]\n\n'
请教:为什么会出现上述错误提示?
如何正确地在回测中载入已经保存好经过训练的XGBoost模型?
2019-07-30