Imbalance-XGBoost: Leveraging Weighted and Focal Losses for Binary
  Label-Imbalanced Classification with XGBoost
  The paper presents Imbalance-XGBoost, a Python package that combines the
powerful XGBoost software with weighted and focal losses to tackle binary
label-imbalanced classification tasks. Though a small-scale program in terms of
size, the package is, to the best of the authors' knowledge, the first of its
kind which provides an integrated implementation for the two losses on XGBoost
and brings a general-purpose extension on XGBoost for label-imbalanced
scenarios. In this paper, the design and usage of the package are described
with exemplar code listings, and its convenience to be integrated into
Python-driven Machine Learning projects is illustrated. Furthermore, as the
first- and second-order derivatives of the loss functions are essential for the
implementations, the algebraic derivation is discussed and it can be deemed as
a separate algorithmic contribution. The performances of the algorithms
implemented in the package are empirically evaluated on Parkinson's disease
classification data set, and multiple state-of-the-art performances have been
observed. Given the scalable nature of XGBoost, the package has great
potentials to be applied to real-life binary classification tasks, which are
usually of large-scale and label-imbalanced.
