Follow

PMML Export Functionality in R: Supported Packages

R_PMML_Zementis.png

A PMML package for R that exports all kinds of predictive models is available directly from CRAN.

The pmml package offers support for the following model types:

  • ksvm (kernlab): Support Vector Machines
  • nnet: Neural Networks
  • rpart: C&RT Decision Trees 
  • lm & glm (stats): Linear and Binary Logistic Regression Models 
  • arules: Association Rules
  • kmeans and hclust: Clustering Models
  • multinom (nnet): Multinomial Logistic Regression Models
  • glm (stats): Generalized Linear Models for classification and regression with a wide variety of link functions
  • randomForest: Random Forest Models for classification and regression
  • coxph (survival): Cox Regression Models to calculate survival and stratified cumulative hazards
  • naiveBayes (e1071): Naive Bayes Classifiers
  • glmnet: Linear ElasticNet Regression Models
  • ada: Stochastic Boosting
  • svm (e1071): Support Vector Machines
The pmml package can also export data transformations built with the pmmlTransformations package (see below). It can also be used to merge two disctinct PMML files into one. For example, if transformations and model were saved into separate PMML files, it can combine both files into one, as described in Chapter 5 of the PMML book - PMML in Action.

How does it work?

Simple, once you build your model using any of the supported model types, pass the model object as an input parameter to the pmml function as shown in the figure below:
Screen_Shot_2013-08-20_at_2.54.04_PM.png 
Example - sequence of R commands used to build a linear regression model using lm and the Iris dataset:
Screen_Shot_2013-08-19_at_10.41.46_AM.png

Documentation

For more on the pmml package, please take a look at the paper we published in The R Journal. For that, just follow the link below:

1) Paper: PMML: An Open Standard for Sharing Models

Also, make sure to check out the package's documentation from CRAN:

2) CRAN: pmml Package

R PMML Transformations Package

 
This is a brand new R package. Called pmmlTranformations, this package transforms data and when used in conjunction with the pmml package, it allows for data transformations to be exported together with the predictive model in a single PMML file. Transformations currently supported are:
  • Min-max normalization
  • Z-score normalization
  • Dummy-fication of categorical variables
  • Value Mapping
  • Discretization (binning)
  • Variable renaming
If you would like to contribute code to the pmmlTransformations package, please feel free to contact us.

How does it work?

The pmmlTransformations package works in tandem with the pmml package so that data pre-processing can be represented together with the model in the resulting PMML code. 
In R, as shown in the figure below, this process includes three steps:
  1. With the use of the pmmlTransformations package, transform the raw input data as appropriate
  2. Use transformed and raw data as inputs to the modeling function/package (hclust, nnet, glm, ...)
  3. Output the entire solution (data pre-processing + model) in PMML using the pmml package

Screen_Shot_2013-08-20_at_2.59.55_PM.png

Example - sequence of R commands used to build a linear regression model using lm with transformed data

Screen_Shot_2013-08-19_at_10.48.42_AM.png

Documentation

For more on the pmmlTransformations package, please take a look at the paper we wrote for the KDD 2013 PMML Workshop. For that, just follow the link below:

1) KDD Paper: The R pmmlTransformations Package

Also, make sure to check out the package's documentation from CRAN:

2) CRAN: pmmlTransformations Package

0 Comments

Article is closed for comments.
Powered by Zendesk