scikit-learn 导出 JPMML
提示: 本文是模型部署方案的一部分
依赖
- Python 2.7, 3.4 or newer.
 scikit-learn0.16.0 or newer.sklearn-pandas0.0.10 or newer.sklearn2pmml0.14.0 or newer.
步骤
- 使用sklearn训练一个模型
 - 使用sklearn原生API将模型导出为 
pickle格式 - 使用 JPMML-SkLearn命令将原始
pickle格式文件转换成JPMML文件 
我们开始吧
训练模型 & 导出pickle
1  | import pandas  | 
此时,我们得到了原始模型文件

转换JPMML
我们需要jpmml-sklearn的帮助,来转换原始模型文件。目前该子项目的最新版本为1.5.4,我们可以下载编译好的jar包,或者自己编译。

这里笔者选择自行编译:
1  | git clone https://github.com/jpmml/jpmml-sklearn.git  | 
将我们上面得到的原始文件拷贝到jpmml-sklearn目录下, 执行:
1  | java -jar target/jpmml-sklearn-executable-1.5-SNAPSHOT.jar --pkl-input pipeline.pkl.z --pmml-output pipeline.pmml  | 
我们成功的得到了pmml模型文件
