lightgbm-rs

LightGBM Rust binding

Require

You need an environment that can build LightGBM.

```

linux

apt install -y cmake libclang-dev libc++-dev gcc-multilib

OS X

brew install cmake libomp ```

On Windows

  1. Install CMake and VS Build Tools.
  2. Install LLVM and set an environment variable LIBCLANG_PATH to PATHTOLLVM_BINARY (example: C:\Program Files\LLVM\bin)

Please see below for details.

Usage

Example LightGBM train. ``` extern crate serdejson; use lightgbm::{Dataset, Booster}; use serdejson::json;

let data = vec![vec![1.0, 0.1, 0.2, 0.1], vec![0.7, 0.4, 0.5, 0.1], vec![0.9, 0.8, 0.5, 0.1], vec![0.2, 0.2, 0.8, 0.7], vec![0.1, 0.7, 1.0, 0.9]]; let label = vec![0.0, 0.0, 0.0, 1.0, 1.0]; let dataset = Dataset::frommat(data, label).unwrap(); let params = json!{ { "numiterations": 3, "objective": "binary", "metric": "auc" } }; let bst = Booster::train(dataset, &params).unwrap(); ```

Please see the ./examples for details.

|example|link| |---|---| |binary classification|link| |multiclass classification|link| |regression|link|

Develop

git clone --recursive https://github.com/vaaaaanquish/lightgbm-rs

``` docker build -t lgbmrs . docker run -it -v $PWD:/app lgbmrs bash

cargo build

```

Thanks

Much reference was made to implementation and documentation. Thanks.