python - 将 PMML 模型导入 Python (Scikit-learn)

标签 python r scikit-learn pmml

似乎有一些选项可以将 PMML 模型从 scikit-learn 中导出,例如 sklearn2pmml,但其他方向的信息很少。我的案例是一个 XGboost 模型,之前在 R 中构建,并使用 r2pmml 保存到 PMML,我想在 Python 中使用它。 Scikit 通常使用 pickle 来保存/加载模型,但是否也可以使用 PMML 将模型导入到 scikit-learn 中?

最佳答案

您不能通过通用表示(例如 PMML)连接不同的专用表示(例如 R 和 Scikit-Learn native 数据结构)。尝试将 R 数据结构直接转换为 Scikit-Learn 数据结构可能会更幸运。

XGBoost 实际上是上述规则的一个异常(exception),因为它的 R 和 Scikit-Learn 实现只是原生 XGBoost 库的薄包装。在经过训练的 R XGBoost 对象中有一个 blob raw,这是其原生 XGBoost 表示中的模型。将其保存到文件中,然后使用 xgb.Booster.load_model(fname) 方法在 Python 中加载。

如果您知道需要在 Scikit-Learn 中部署 XGBoost 模型,那么为什么要在 R 中训练它?

关于python - 将 PMML 模型导入 Python (Scikit-learn),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40048987/

相关文章:

r - 用向量(条件)对矩阵的值进行子集化

Python 惰性字典评估

R-sq 值,一个数据集中多个趋势的线性回归

r - data.table 中的条件连接?

machine-learning - Scikit Learn - 使用 GridSearchCV 训练新模型

python - 标准化包含过大值的数据集

python - 出现错误 : Reshape your data either using array

python - 使用没有过期或安全信息的 boto3 获取公共(public)可访问 s3 对象的 url

python - Django 1.2 对象级权限 - 第三方解决方案?

python - 以编程方式将列表的内容写入目录