Python之sklearn2pmml:sklearn2pmml库函数的简介、安装、使用方法之详细攻略daiding
        【摘要】  Python之sklearn2pmml:sklearn2pmml库函数的简介、安装、使用方法之详细攻略 
  
目录 
sklearn2pmml库函数的简介 
1、一个典型的工作流总结 
sklearn2pmml库函数的安装 
sklearn2pmml库函数的使用方法 
1、一个简单的鸢尾物种分类决策树模型 
2、更精细的逻辑回归模型 
  
sklea...
    
    
    
    Python之sklearn2pmml:sklearn2pmml库函数的简介、安装、使用方法之详细攻略
目录
sklearn2pmml库函数的简介
sklearn2pmml是用于将Scikit学习管道转换为PMML的Python库。这个库是JPMML-SkLearn命令行应用程序的一个瘦包装。有关支持的评估器和转换器类型的列表,请参考JPMML-SkLearn特性。
1、一个典型的工作流总结
- 创建一个PMMLPipeline对象,并像往常一样用管道步骤填充它。类sklearn2pmml.pipeline。PMMLPipeline扩展了sklearn.pipeline类。管道具有以下功能:
- 如果PMMLPipeline。fit(X, y)方法是用panda调用的。DataFrame或熊猫。Series对象作为X参数,然后它的列名用作特性名。否则,特征名称默认为“x1”、“x2”,..“x {number_of_features}”。
- 如果PMMLPipeline。fit(X, y)方法是用panda调用的。Series对象作为y参数,然后将其名称用作目标名称(对于监督模型)。否则,目标名称默认为“y”。
- 像往常一样安装和验证pipeline。
- 可选地,通过调用PMMLPipeline.verify(X)方法来计算验证数据并将其嵌入到PMMLPipeline对象中,该方法使用的是一个较小但有代表性的训练数据子集。
- 通过调用实用程序方法sklearn2pmml,将PMMLPipeline对象转换为本地文件系统中的PMML文件。pmml_destination_path sklearn2pmml(pipeline)。
sklearn2pmml库函数的安装
pip install sklearn2pmml
 pip install --user -i https://pypi.tuna.tsinghua.edu.cn/simple sklearn2pmml

sklearn2pmml库函数的使用方法
1、一个简单的鸢尾物种分类决策树模型
  
   - 
    
     
    
    
     
      import pandas
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      iris_df = pandas.read_csv("Iris.csv")
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      iris_X = iris_df[iris_df.columns.difference(["Species"])]
     
    
- 
    
     
    
    
     
      iris_y = iris_df["Species"]
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      from sklearn.tree import DecisionTreeClassifier
     
    
- 
    
     
    
    
     
      from sklearn2pmml.pipeline import PMMLPipeline
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      pipeline = PMMLPipeline([
     
    
- 
    
     
    
    
     
      	("classifier", DecisionTreeClassifier())
     
    
- 
    
     
    
    
     
      ])
     
    
- 
    
     
    
    
     
      pipeline.fit(iris_X, iris_y)
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      from sklearn2pmml import sklearn2pmml
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      sklearn2pmml(pipeline, "DecisionTreeIris.pmml", with_repr = True)
     
    
 
2、更精细的逻辑回归模型
  
   - 
    
     
    
    
     
      import pandas
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      iris_df = pandas.read_csv("Iris.csv")
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      iris_X = iris_df[iris_df.columns.difference(["Species"])]
     
    
- 
    
     
    
    
     
      iris_y = iris_df["Species"]
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      from sklearn_pandas import DataFrameMapper
     
    
- 
    
     
    
    
     
      from sklearn.decomposition import PCA
     
    
- 
    
     
    
    
     
      from sklearn.feature_selection import SelectKBest
     
    
- 
    
     
    
    
     
      from sklearn.impute import SimpleImputer
     
    
- 
    
     
    
    
     
      from sklearn.linear_model import LogisticRegression
     
    
- 
    
     
    
    
     
      from sklearn2pmml.decoration import ContinuousDomain
     
    
- 
    
     
    
    
     
      from sklearn2pmml.pipeline import PMMLPipeline
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      pipeline = PMMLPipeline([
     
    
- 
    
     
    
    
     
      	("mapper", DataFrameMapper([
     
    
- 
    
     
    
    
     
      		(["Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width"], [ContinuousDomain(), SimpleImputer()])
     
    
- 
    
     
    
    
     
      	])),
     
    
- 
    
     
    
    
     
      	("pca", PCA(n_components = 3)),
     
    
- 
    
     
    
    
     
      	("selector", SelectKBest(k = 2)),
     
    
- 
    
     
    
    
     
      	("classifier", LogisticRegression(multi_class = "ovr"))
     
    
- 
    
     
    
    
     
      ])
     
    
- 
    
     
    
    
     
      pipeline.fit(iris_X, iris_y)
     
    
- 
    
     
    
    
     
      pipeline.verify(iris_X.sample(n = 15))
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      from sklearn2pmml import sklearn2pmml
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      sklearn2pmml(pipeline, "LogisticRegressionIris.pmml", with_repr = True)
     
    
 
文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。
原文链接:yunyaniu.blog.csdn.net/article/details/111502804
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        
        
        - 点赞
- 收藏
- 关注作者
 
             
           
评论(0)