将pmml模型解析为scikit学习估计器的库。

sklearn-pmml-model的Python项目详细描述


SKLEARN PMML型号

PyPI versionCircleCIcodecovReadTheDocs

将pmml模型解析为scikit学习估计器的库。

安装

最简单的方法是使用pip:

$ pip install sklearn-pmml-model

状态

这个库是非常alpha的,目前只支持有限数量的模型。库当前支持以下型号:

  • Decision Treessklearn_pmml_model.tree.PMMLTreeClassifier
  • Random Forestssklearn_pmml_model.ensemble.PMMLForestClassifier
  • Linear Regressionsklearn_pmml_model.linear_model.PMMLLinearRegression
  • Ridge(^{})
  • Lassosklearn_pmml_model.linear_model.PMMLLasso
  • ElasticNetsklearn_pmml_model.linear_model.PMMLElasticNet

覆盖了specification的一小部分:

  • 数据字典
    • 数据字段(连续、分类、序号)
      • 间隔
  • 转换字典
    • 德里维德菲尔德
  • 树模型
    • 简单预测
    • SimpleResetPredicate
  • 分段(仅限“多数投票”,用于随机林)
  • 回归
    • 回归表
      • 数字预测器
      • 分类预测器
  • 一般回归模型(仅线性模型)
    • ppmatrix公司
      • ppcell
    • 参数矩阵
      • pcell

示例

最小工作示例如下所示:

fromsklearn.datasetsimportload_irisfromsklearn.model_selectionimporttrain_test_splitimportpandasaspdimportnumpyasnpfromsklearn_pmml_model.ensembleimportPMMLForestClassifier# Prepare datairis=load_iris()X=pd.DataFrame(iris.data)X.columns=np.array(iris.feature_names)y=pd.Series(np.array(iris.target_names)[iris.target])y.name="Class"Xtr,Xte,ytr,yte=train_test_split(X,y,test_size=0.33,random_state=123)clf=PMMLForestClassifier(pmml="models/randomForest.pmml")clf.predict(Xte)clf.score(Xte,yte)

更多的例子可以在后面的包中找到:treeensemblelinear_model

开发

先决条件

可以使用py.test运行测试。获取源的本地副本:

$ git clone http://github.com/iamDecode/sklearn-pmml-model
$ cd sklearn-pmml-model

创建并激活虚拟环境:

$ python3 -m venv venv
$ source venv/bin/activate

并安装依赖项:

$ pip install -r requirements.txt

最后一步是构建cython扩展:

$ python setup.py build_ext --inplace

测试

您可以通过运行py.test来执行测试:

$ python setup.py pytest

贡献

请随意作出贡献。请阅读CONTRIBUTING.md了解有关行为准则和提交请求的过程的详细信息。

许可证

此项目是根据bsd 2子句许可证授权的-有关详细信息,请参阅LICENSE文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
用Java将dpi元数据写入jpeg图像   文件为什么Java会自动解码URI编码的文件名中的%2F?   java多动态时间事件侦听器   java中如何递归查找不同级别的属性值   java Apache Spark MySQL JavaRDD。foreachPartition为什么我得到ClassNotFoundException   Java中的循环变量文件名   java如何参数化调用JNA库的C库名称和路径?   swing如何使gif在Java中运行一次并停止?   Big Sur上的MacOS应用程序,具有java子进程和可访问性API权限   在page类中定义的java Webelement在测试类中不可访问   如何使用java if else从JSON文件中删除重复的元素?   java Android studio dalvik vm找不到类   java在数组中正确使用协方差