我正在尝试使用 joblib 和 pickle 加载 XBGClassifier 模型。
使用 joblib 时
loaded_model = joblib.load('trained_model.sav')
我收到以下错误: AttributeError: module 'xgboost.compat' has no attribute 'XGBoostLabelEncoder'
并且使用泡菜
loaded_model = pickle.load(open('trained_model.sav', 'rb'))
我得到AttributeError:无法在我再次安装了xgboost,但它不起作用,可能是什么问题?
确保保存和加载环境中的xgboost版本相同。您需要在尝试加载模型的环境中更改 xgboost 的版本。
我在调试 Azure AutoML 生成模型的批处理终结点的评分脚本时遇到此错误。
版本:XGBoost 1.5.2
我进入了 compat.py 的本地副本并修改了两行代码:
from sklearn.preprocessing import LabelEncoder
至 from sklearn.preprocessing import LabelEncoder as XGBoostLabelEncoder
和 LabelEncoder = object
至 XGBoostLabelEncoder= object
。
这使得我的评分脚本能够运行并建模以输出分数。