开发者社区 > 大数据与机器学习 > 人工智能平台PAI > 正文

麻烦请教下机器学习PAI如何才能在本地进行加载到python进行模型预测?

麻烦请教下机器学习PAI使用PAI-designer训练好的模型导出成XML格式的PMML文件,如何才能在本地进行加载到python进行模型预测?

展开
收起
真的很搞笑 2023-12-10 17:43:35 42 0
2 条回答
写回答
取消 提交回答
  • 应该要仔细看看导出的PMML格式和开源的格式是否一模一样才行。比如Sklearn、Xgboost等开源算法框架训练的算法模型。、 ,此回答整理自钉群“机器学习PAI交流群(答疑@值班)”

    2023-12-11 22:26:29
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    要将机器学习PAI使用PAI-designer训练好的模型导出成XML格式的PMML文件,您可以按照以下步骤进行操作:

    1. 在机器学习PAI控制台中,找到您已经训练好的模型,并进入模型详情页面。
    2. 在模型详情页面中,选择“模型导出”选项卡,然后点击“导出模型”按钮。
    3. 在弹出的对话框中,选择“PMML”作为导出格式,并填写相关信息(如导出路径、文件名等)。
    4. 点击“确定”按钮,等待模型导出完成。
    5. 将导出的PMML文件复制到本地计算机上。
    6. 在Python中使用sklearn库中的pmml模块来加载PMML文件并进行预测。具体代码如下:
    from sklearn2pmml import sklearn2pmml, make_pmml_pipeline
    from sklearn.datasets import load_iris
    from sklearn.ensemble import RandomForestClassifier
    from sklearn.model_selection import train_test_split
    from sklearn.metrics import accuracy_score
    import pandas as pd
    
    # 加载数据集
    iris = load_iris()
    X = iris.data
    y = iris.target
    
    # 划分训练集和测试集
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
    
    # 创建随机森林分类器
    clf = RandomForestClassifier(n_estimators=100, random_state=42)
    
    # 训练模型
    clf.fit(X_train, y_train)
    
    # 将模型转换为PMML格式并保存到本地文件
    sklearn2pmml(clf, "random_forest.pmml", with_repr=True)
    
    # 加载PMML文件并进行预测
    pipeline = make_pmml_pipeline("random_forest.pmml")
    predictions = pipeline.predict(X_test)
    accuracy = accuracy_score(y_test, predictions)
    print("Accuracy: {:.2f}%".format(accuracy * 100))
    

    以上代码中,我们首先使用sklearn2pmml函数将训练好的随机森林分类器转换为PMML格式并保存到本地文件中。然后,我们使用make_pmml_pipeline函数加载PMML文件,并将其应用于测试集数据进行预测。最后,我们计算并输出预测结果的准确性得分。

    2023-12-11 13:29:36
    赞同 展开评论 打赏

相关产品

  • 人工智能平台 PAI
  • 热门讨论

    热门文章

    相关电子书

    更多
    大规模机器学习在蚂蚁+阿里的应用 立即下载
    阿里巴巴机器学习平台AI 立即下载
    机器学习及人机交互实战 立即下载