cog-imperial / OMLT

Represent trained machine learning models as Pyomo optimization formulations
Other
257 stars 56 forks source link

[WIP] Lgbm linear reader #151

Open bammari opened 3 weeks ago

bammari commented 3 weeks ago

This PR allows for users to utilize the linear-tree formulations in OMLT with trained linear LightGBM models (e.g. tree ensembles with linear models in the leaf nodes rather than constants).

The EnsembleDefinition class allows users to pass trained LightGBM Boosters. Additionally, users can pass JSONs generated from the dump_model() method from LightGBM.

Legal Acknowledgement\ By contributing to this software project, I agree my contributions are submitted under the BSD license. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.