LightGBM Rust binding
You need an environment that can build LightGBM.
```
apt install -y cmake libclang-dev libc++-dev gcc-multilib
brew install cmake libomp ```
On Windows
LIBCLANG_PATH
to PATHTOLLVM_BINARY (example: C:\Program Files\LLVM\bin
)Please see below for details.
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, ¶ms).unwrap(); ```
Please see the ./examples
for details.
|example|link| |---|---| |binary classification|link| |multiclass classification|link| |regression|link|
git clone --recursive https://github.com/vaaaaanquish/lightgbm-rs
``` docker build -t lgbmrs . docker run -it -v $PWD:/app lgbmrs bash
```
Much reference was made to implementation and documentation. Thanks.