Skip to content

jpmml/jpmml-h2o

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

JPMML-H2O Build Status

Java library and command-line application for converting H2O.ai models to PMML.

Features

Prerequisites

  • H2O 3.24.0 or newer
  • Java 1.8 or newer

Installation

Enter the project root directory and build using Apache Maven:

mvn clean install

The build produces a library JAR file pmml-h2o/target/pmml-h2o-1.2-SNAPSHOT.jar, and an executable uber-JAR file pmml-h2o-example/target/pmml-h2o-example-executable-1.2-SNAPSHOT.jar.

Usage

A typical workflow can be summarized as follows:

  1. Use H2O to train a model.
  2. Download the model in Model ObJect, Optimized (MOJO) data format to a file in a local filesystem.
  3. Use the JPMML-H2O command-line converter application to turn the MOJO file to a PMML file.

The H2O side of operations

Using the h2o package to train a regression model for the example Boston housing dataset:

from h2o import H2OFrame
from h2o.estimators.glm import H2OGeneralizedLinearEstimator
from pandas import DataFrame, Series
from sklearn.datasets import load_boston

import h2o
import pandas

boston = load_boston()

df = pandas.concat((DataFrame(data = boston.data, columns = boston.feature_names), Series(boston.target, name = "MEDV")), axis = 1)

h2o.connect()

df = H2OFrame(df)

glm = H2OGeneralizedLinearEstimator(family = "gaussian")
glm.train(boston.feature_names.tolist(), "MEDV", df)

glm.download_mojo(path = "mojo.zip")

The Java side of operations

Converting the MOJO file mojo.zip to a PMML file mojo.pmml:

java -jar pmml-h2o-example/target/pmml-h2o-example-executable-1.2-SNAPSHOT.jar --mojo-input mojo.zip --pmml-output mojo.pmml

Getting help:

java -jar pmml-h2o-example/target/pmml-h2o-example-executable-1.2-SNAPSHOT.jar --help

Documentation

License

JPMML-H2O is licensed under the terms and conditions of the GNU Affero General Public License, Version 3.0.

If you would like to use JPMML-H2O in a proprietary software project, then it is possible to enter into a licensing agreement which makes JPMML-H2O available under the terms and conditions of the BSD 3-Clause License instead.

Additional information

JPMML-H2O is developed and maintained by Openscoring Ltd, Estonia.

Interested in using Java PMML API software in your company? Please contact info@openscoring.io

About

Java library and command-line application for converting H2O.ai models to PMML

Resources

License

Stars

Watchers

Forks

Packages

No packages published