python 调用pmml模型文件
我们首先看代码
# -*- coding: utf-8 -*- """ Created on Wed Oct 20 15:04:12 2021 @author: chenguimei """ from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.pipeline import Pipeline from sklearn.preprocessing import StandardScaler import pandas as pd from xgboost import XGBClassifier seed = 123 iris = datasets.load_iris() target = 'Species' features = iris.feature_names iris_df = pd.DataFrame(iris.data, columns=features) iris_df[target] = iris.target X, y = iris_df[features], iris_df[target] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=seed) pipeline = Pipeline([ ('scaling', StandardScaler()), ('xgb', XGBClassifier(n_estimators=5, seed=seed)) ]) pipeline.fit(X_train, y_train) y_pred = pipeline.predict(X_test) y_pred_proba = pipeline.predict_proba(X_test) #生成pmml文件 from nyoka import xgboost_to_pmml xgboost_to_pmml(pipeline, features, target, "xgb-iris.pmml") #调用pmml from pypmml import Model model = Model.load("xgb-iris.pmml") model.predict(X_test)
最后结果:
但是,
但是。。。。
想要跑通上面这段代码,却踩了不少坑
首先执行
model = Model.load("xgb-iris.pmml")
会报错,如果报的是FileNotFoundError: [WinError 2] 系统找不到指定的文件,你以为是路径错了,其实不是,解决方法是安装Java1.8版本,注意不要安装错了,Java官网可能有Java17版本,切记不要安装,只能安装Java1.8版本,在官网找不到,就百度找安装包。安装之后要注意设置环境变量,设置教程https://www.cnblogs.com/maoning/p/10701349.html,注意,不管是个人账号,还是系统账号,都要设置环境变量。
把这些东西做好,重启python,就能跑出结果来。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人