@bonniernews/xgboost
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

XGBoost-Node

eXtreme Gradient Boosting Package in Node.js

XGBoost-Node is a Node.js interface of XGBoost. XGBoost is a library from DMLC. It is designed and optimized for boosted trees. The underlying algorithm of XGBoost is an extension of the classic gbm algorithm. With multi-threads and regularization, XGBoost is able to utilize more computational power and get a more accurate prediction.

The package is made to run existing XGBoost model with Node.js easily.

Features

  • Runs XGBoost Model and make predictions in Node.js.

  • Both dense and sparse matrix input are supported, and missing value is handled.

  • Supports Linux, macOS.

Install

Install from npm

npm install xgboost

Install from GitHub

git clone --recursive git@github.com:nuanio/xgboost-node.git
npm install

Documentation

Roadmap

  • [x] Matrix API
  • [x] Model API
  • [x] Prediction API
  • [x] Async API
  • [ ] Windows Support
  • [ ] Training API
  • [ ] Visualization API

Examples

Train a XGBoost model and save to a file, more in doc.

Load the model with XGBoost-Node:

const xgboost = require('xgboost');
const model = xgboost.XGModel('iris.xg.model');

const input = new Float32Array([
  5.1,  3.5,  1.4,  0.2, // class 0
  6.6,  3. ,  4.4,  1.4, // class 1
  5.9,  3. ,  5.1,  1.8  // class 2
]);

const mat = new xgboost.matrix(input, 3, 4);
console.log(model.predict(mat));
// {
//   value: [
//     0.991, 0.005, 0.004, // class 0
//     0.004, 0.990, 0.006, // class 1
//     0.005, 0.035, 0.960, // class 2
//   ],
//   error: undefined,      // no error
// }

const errModel = xgboost.XGModel('data/empty');
console.log(errModel);
console.log(errModel.predict());

Contributing

Your help and contribution is very valuable. Welcome to submit issue and pull requests. Learn more

Package Sidebar

Install

npm i @bonniernews/xgboost

Weekly Downloads

10

Version

2.0.0

License

Apache-2.0

Unpacked Size

6.98 MB

Total Files

874

Last publish

Collaborators

  • daghall
  • andreas.samuelsson
  • norla
  • mattiasobn
  • chrissode
  • jzachrisson
  • hilleso
  • adam.hakansson
  • amundsentb
  • jonaek
  • drgeobn
  • mikael.mattsson
  • morre
  • takolander
  • vitryssen
  • herbola
  • nifo
  • johark
  • aliceboberg
  • varneynz
  • gusliden
  • mxtr
  • karlbergc
  • martindanielson
  • joelekman
  • chavah
  • matsrorbecker
  • axeljohanssonbonniernews
  • markusn
  • linuss
  • joelabrahamsson
  • jonaswalden
  • indeedshouts
  • marcusgronblad