Back to Spark

PMML model export - RDD-based API

docs/mllib-pmml-model-export.md

4.1.11.9 KB
Original Source
  • Table of contents {:toc}

spark.mllib supported models

spark.mllib supports model export to Predictive Model Markup Language (PMML).

The table below outlines the spark.mllib models that can be exported to PMML and their equivalent PMML model.

<table> <thead> <tr><th>spark.mllib model</th><th>PMML model</th></tr> </thead> <tbody> <tr> <td>KMeansModel</td><td>ClusteringModel</td> </tr> <tr> <td>LinearRegressionModel</td><td>RegressionModel (functionName="regression")</td> </tr> <tr> <td>RidgeRegressionModel</td><td>RegressionModel (functionName="regression")</td> </tr> <tr> <td>LassoModel</td><td>RegressionModel (functionName="regression")</td> </tr> <tr> <td>SVMModel</td><td>RegressionModel (functionName="classification" normalizationMethod="none")</td> </tr> <tr> <td>Binary LogisticRegressionModel</td><td>RegressionModel (functionName="classification" normalizationMethod="logit")</td> </tr> </tbody> </table>

Examples

<div class="codetabs"> <div data-lang="scala" markdown="1"> To export a supported `model` (see table above) to PMML, simply call `model.toPMML`.

As well as exporting the PMML model to a String (model.toPMML as in the example above), you can export the PMML model to other formats.

Refer to the KMeans Scala docs and Vectors Scala docs for details on the API.

Here a complete example of building a KMeansModel and print it out in PMML format: {% include_example scala/org/apache/spark/examples/mllib/PMMLModelExportExample.scala %}

For unsupported models, either you will not find a .toPMML method or an IllegalArgumentException will be thrown.

</div> </div>