Skip to content
Tianqi Chen edited this page Mar 25, 2014 · 80 revisions

Introduction

XGBoost (short for eXtreme Gradient Boosting) is an efficient general purpose gradient boosting library. Via easy configuration, we can use different boosting models and objective functions to fit the real world data. To get started, read Binary Classification example.

Examples

Boosters

Parameter Setting

  • Detailed parameter settings are provided in Parameters

Project Layout

The project have three layers, the listed files are commented headers that are useful to use code these layers.

  • Booster core interface: booster/xgboost.h, booster/xgboost_data.h.
    • Provides a interface to a single gradient boosters, all implements hides behind this interface
    • Use this interface to add new implementation boosters, or use create booster to do specific tasks
  • Booster ensemble base class: booster/xgboost_gbmbase.h
    • Provides a base class that provides useful code for booster ensemble, provides the buffering scheme.
    • Use this class to create customized learner with self-defined loss function. Take class GBMBaseModel, use Predict to get predictions and calculate gradient and second order gradient, put the statistics back to DoBoost to update the model.
  • Booster task wrappers: regression, rank(TODO)
    • Provides direct wrapper to do specific learning tasks
Clone this wiki locally