scikit-learn 导出 JPMML
提示: 本文是模型部署方案的一部分
依赖
- Python 2.7, 3.4 or newer.
scikit-learn
0.16.0 or newer.sklearn-pandas
0.0.10 or newer.sklearn2pmml
0.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模型文件