OGBoost: A Python Package for Ordinal Regression Gradient Boosting

Mansour T. A. Sharabiani, Alex Bottle, Alireza S. Mahani

Main Article Content

Abstract

This paper introduces OGBoost, a scikit-learn-compatible Python package for ordinal regression gradient boosting. Ordinal variables (e.g., rating scales, quality assessments) lie between nominal and continuous data, requiring specialized methods that respect their inherent ordering. OGBoost employs a novel coordinate-descent optimization approach within the cumulative link framework, jointly optimizing a continuous regression function via functional gradient descent and a threshold vector via standard gradient descent. Key features include: (i) latent score predictions via decision_function for enhanced ranking performance; (ii) heterogeneous boosting ensembles by enabling any combination of scikit-learn regressors as base learners; and (iii) cross-validation-based early stopping for improved robustness. We provide a comprehensive review of existing ordinal regression software and present empirical comparisons across 17 public datasets, demonstrating that OGBoost significantly outperforms representative methods including OrdinalGBT, scikit-learn's gradient boosting classifier, and scikit-lego's ordinal classifier. Formal statistical tests confirm OGBoost's superiority on concordance index (achieving best performance on all 17 datasets), with consistent performance advantages across classification accuracy, mean absolute error, and Spearman correlation. The package integrates seamlessly with scikit-learn machine learning workflows and is available via pip install ogboost.

Article Details

Article Sidebar