我已经使用Sklearn API训练了模型并保存了模型
from xgboost.sklearn import XGBClassifier
model = XGBClassifier()
model.fit(X_train, y_train)
with open(path + '.pkl', 'wb') as file:
cPickle.dump(model, file)
有没有办法加载scala api?
如果我使用Python API(而不是Sklearn API)训练它,并使用:
保存它model.save_model("trained_model.model")
然后我可以使用:
加载scalaimport ml.dmlc.xgboost4j.scala.XGBoost
val model = XGBoost.loadModel("trained_model.model")
是否有类似的方法来加载Scala中的PKL形成的模型?
或者可以将Sklearned-api-Xgboost模型转换为Python-Api模型?在可以使用上述代码加载Python-Api模型之后。
有任何见解?
对于那些提出这个问题的人来说,解决方案是:
使用Sklearn API训练模型时,您可以保存为:
model._Booster.save_model("trained_model.model")
save_model
用于python api。
后来,该模型可以按照问题所述加载到Scala API中:
val model = XGBoost.loadModel("trained_model.model")