我正在设计一个分析系统的架构。我已经在scikit-learn中开发了一个分类集成模型。我希望将这个模型部署到生产环境中,以便可以实时对新进入的数据进行分类。理想情况下,系统应该支持手动将“模型”上传到生产系统中。我对分析生产系统没有任何经验。任何建议都会非常有帮助。
我已经查看了Py2PMML,但它并不支持所有模型。我主要在寻找提升树回归模型。附注:我不是在请求代码或样本。只需要正确的方向指引。
回答:
目前还没有官方方法将scikit模型导出为PMML。推荐的方法是使用pickle或joblib.dump
。请参考文档中的模型持久化部分。想法是将模型保存到磁盘上:
>>> from sklearn.externals import joblib>>> joblib.dump(model, 'saved_model.pkl')
然后将它上传到生产服务器并使用以下命令加载:
>>> model = joblib.load('saved_model.pkl')
重要的是,你要尽量保持环境相似,在一个版本的scikit-learn中保存的模型可能无法在另一个版本中加载。