import pandas as pd
import numpy as np
import datetime
import matplotlib.pyplot as plt
import seaborn as sns
import os
import xgboost as xgb
# step1:获取.model和.fmap模型文件
'''
fmap(feature map file):实现feature id和feature name的对应
格式为 featmap.txt: <featureid> <featurename> <q or i or int>\n
Feature id从0开始直到特征的个数为止,从小到大排列。
i表示是二分类特征
q表示数值变量,如年龄,时间等。q可以缺省
int表示特征为整数(when int is hinted, the decision boundary will be integer)
可根据以下语句通过读取pkl文件的feature_name生成,或者根据feature顺序通过别的方式生成
'''
# 若建模时仅通过pkl生成了.pkl文件,可通过下述代码转为.model(booster格式)文件
def pkl_to_model_and_fmap(model_path='xgb.txt', f_model='v.model'
xgb生成的pkl文件转pmml文件用于跨平台部署并预测
于 2022-05-20 15:23:32 首次发布
本文详细介绍了如何将XGBoost模型转换成.model和.fmap文件,接着转换为PMML格式,以及使用转换后的模型进行预测。首先,通过pkl_to_model_and_fmap函数将pickle模型转为.model和.fmap。然后,利用Java环境和JPMML库将.model和.fmap文件转为PMML,此过程需要安装Java、Maven和JPMML-xgboost。最后,使用PyPMML加载PMML模型,对测试样本进行预测,验证转换的准确性。

最低0.47元/天 解锁文章
1187

被折叠的 条评论
为什么被折叠?



