fabsig/GPBoost

Tree-Boosting, Gaussian Processes, and Mixed-Effects Models

What it solves

GPBoost addresses the limitations of both tree-boosting and latent Gaussian models. While tree-boosting is excellent for tabular data and non-linearities but assumes sample independence, latent Gaussian models (like Gaussian processes) are great for modeling dependencies and uncertainty but often rely on linear prior mean functions. GPBoost combines these two, allowing for non-linear predictor functions and the ability to handle spatial, spatio-temporal, or grouped data with high-cardinality categorical variables.

How it works

The library implements the GPBoost and LaGaBoost algorithms. For Gaussian likelihoods, it models the response variable as the sum of a non-linear mean function (an ensemble of trees) and random effects (Gaussian processes or grouped random effects). For non-Gaussian likelihoods, it uses a link function to relate the distribution parameter to the sum of the tree ensemble and random effects. The model is trained by iteratively learning covariance parameters and adding trees to the ensemble using functional gradient or Newton boosting steps.

Who it’s for

It is designed for data scientists and researchers working with tabular data that contains complex dependencies, such as longitudinal panel data, spatial econometric data, or datasets with high-cardinality categorical variables.

Highlights

  • Hybrid Modeling: Combines tree-boosting with Gaussian processes and mixed-effects models.
  • Flexible Likelihoods: Supports both Gaussian and non-Gaussian likelihoods via the LaGaBoost algorithm.
  • Broad Support: Provides interfaces for Python, R, and a C++ core.
  • ** wysokiej-Cardinality Handling**: Efficiently models high-cardinality categorical variables using grouped random effects.
  • Spatial Intelligence: Enables continuous and smooth predictions for spatial or spatio-temporal data.

Related

  • Project
  • Project
  • Project
  • Project
  • Project