Skip to content

Java library and command-line application for converting LightGBM models to PMML

License

Notifications You must be signed in to change notification settings

soar200/jpmml-lightgbm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JPMML-LightGBM

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

Prerequisites

  • Java 1.8 or newer.

Installation

Enter the project root directory and build using Apache Maven:

mvn clean install

The build produces an executable uber-JAR file target/jpmml-lightgbm-executable-1.2-SNAPSHOT.jar.

Usage

A typical workflow can be summarized as follows:

  1. Use LightGBM to train a model.
  2. Save the model to a text file in a local filesystem.
  3. Use the JPMML-LightGBM command-line converter application to turn this text file to a PMML file.

The LightGBM side of operations

Using the lightgbm package to train a regression model for the example boston housing dataset:

from sklearn.datasets import load_boston

boston = load_boston()

from lightgbm import LGBMRegressor

lgbm = LGBMRegressor(objective = "regression")
lgbm.fit(boston.data, boston.target, feature_name = boston.feature_names)

lgbm.booster_.save_model("lightgbm.txt")

The JPMML-LightGBM side of operations

Converting the text file lightgbm.txt to a PMML file lightgbm.pmml:

java -jar target/jpmml-lightgbm-executable-1.2-SNAPSHOT.jar --lgbm-input lightgbm.txt --pmml-output lightgbm.pmml

Getting help:

java -jar target/jpmml-lightgbm-executable-1.2-SNAPSHOT.jar --help

License

JPMML-LightGBM is dual-licensed under the GNU Affero General Public License (AGPL) version 3.0, and a commercial license.

Additional information

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

Interested in using JPMML software in your application? Please contact info@openscoring.io

About

Java library and command-line application for converting LightGBM models to PMML

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 89.1%
  • Python 9.3%
  • R 1.6%