wikillm

Concept · 3 papers · updated 2026-11-01

Gradient-boosted decision trees

Tree ensembles trained by gradient boosting. XGBoost was usually the best single model and the quickest to tune in a 2021 benchmark on 11 tabular datasets. LightGBM served as the final classifier in a 2018 histology study. NODE, a 2019 differentiable tree model, reports beating tuned XGBoost on four of six datasets.

tabular-dataensemblesbenchmarkdecision-treestransfer-learning

Markdown9 min read

AI-compiled overview, updated 2026-11-01, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

Overview

Gradient-boosted decision trees (GBDT) are the tree-based models the paper treats as the reference for tabular data, meaning one row per record and one column per feature 2106.03253 §1. The paper uses XGBoost as its implementation and baseline 2106.03253 §2 §3.2. The cited sources do not describe the boosting procedure itself, so this page covers only what the benchmarks measure and what they leave unstated.

A second paper, 1909.06312, is not boosting. It builds a neural network out of differentiable decision trees and compares it with CatBoost and XGBoost 1909.06312 §4.1. It is listed here because it is the main alternative to GBDT in the same tabular setting.

A third paper, 1802.00752, is a different setting: image classification of 400 histology slides. It uses LightGBM only as the final classifier over features from frozen image networks 1802.00752 §2.5. Its boosting values come from the code, not the paper, so they are listed separately below.

Variants

Three variants have cards in this wiki. Other libraries are named in the papers but are not compiled here.

XGBoost

The single-model baseline. Each dataset is tuned with Hyperopt for 1,000 steps over the search space in app. B 2106.03253 §3.1.2. On the test set it was usually the best single model, with a mean relative deterioration of 3.34% 2106.03253 tab. 3. Card: Tabular Data: Deep Learning is Not All You Need.

LightGBM on pooled CNN features

The classifier in a histology pipeline. Its trees see one feature vector per augmented view of a slide, not raw pixels. The features come from three frozen ImageNet encoders, and the paper trains one multiclass model per encoder, crop size, fold and seed 1802.00752 §2.4 §2.5. The authors say that fine-tuning a pretrained network worked poorly for them, but give no numbers 1802.00752 §2.2. The fused blend reaches 87.2% four-class accuracy under 10-fold cross-validation tab. 1. Card: Deep Convolutional Neural Networks for Breast Cancer Histology Image Analysis.

CatBoost in the classical ensemble

CatBoost is tuned with the same protocol 2106.03253 app. B. It appears only inside the "Simple Ensemble" with XGBoost and SVM, which scored 3.15% 2106.03253 §3.2 tab. 3. No separate CatBoost result is reported tab. 2.

Differentiable oblivious trees (NODE)

NODE stacks layers of oblivious trees, where every level of a tree uses the same feature and threshold, so a tree is a table of responses [arxiv:1909.06312 §2]. The feature choice and each split are soft (entmax with alpha = 1.5), and all parameters are fit together by mini-batch gradient descent [arxiv:1909.06312 §3.1] §3.3. The paper links the design to the oblivious trees used in CatBoost 1909.06312 §1. Implement entmax as the paper states. The official repository's class default is a different function, so check its card before reusing that code: Neural Oblivious Decision Ensembles for Deep Learning on Tabular Data.

When to use which

The 2021 benchmark covers only the 11 datasets in tab. 1, with 7k to 1,018k samples and 10 to 2,000 features 2106.03253 tab. 1. Hardware, training time and library versions are not stated 2106.03253 §3.2. The 2019 paper covers six datasets and reports its own timings 1909.06312 tab. 4.

SituationUseWhy
Tabular data, one model, limited tuning timeXGBoostUsually the best single model 2106.03253 §3.2. On Shrutime it reached good performance in fewer search iterations than the deep models 2106.03253 fig. 2
Tabular data, you can train several models, and accuracy on average matters mostEnsemble of XGBoost with the deep modelsLowest author-reported mean, 2.32% against 3.34% for XGBoost 2106.03253 tab. 3. Compute cost of the ensemble is not stated
Training and inference time matterXGBoostOn YearPrediction, the 2019 paper reports NODE training in 7 min 42 s on a 1080Ti and XGBoost in 1 min 13 s on the same GPU. Inference was 8.56 s for NODE and 4.45 s for XGBoost 1909.06312 tab. 4
You need a differentiable tree model that can train inside a larger networkNODEThis is the use case the 2019 paper names for it 1909.06312 §5
Learning-to-rank data such as Yahoo or MicrosoftTuned XGBoostIn the 2019 paper's tuned regime NODE did not win there. The authors suspect oblivious trees are a poor inductive bias for Yahoo 1909.06312 §4.1 tab. 2
You need the best result on one specific datasetCheck that dataset's row in tab. 2The ensemble was not best everywhere. XGBoost alone was best on Eye Movements 2106.03253 tab. 2
Few labelled images (hundreds), a strong pretrained encoder, and many augmented views affordableLightGBM on pooled features from frozen encodersThis is the only setting the 2018 paper reports, with 400 images 1802.00752 §2.1. It gives no numeric comparison with other classifiers on the same features 1802.00752 §3, so the tree model's own contribution is not measured
Deep network as the only modelDepends on the paper's protocolThe 2021 benchmark reports single deep models at 7.56% to 14.21% mean relative deterioration 2106.03253 tab. 3. The 2019 paper reports NODE ahead of tuned XGBoost on four of six datasets 1909.06312 tab. 2. See Contradictions

Hyperparameters

XGBoost

The XGBoost search space as written in the appendix. "Log-uniform [a, b]" is a log-scale uniform draw, and "Discrete uniform" draws integers [arxiv:2106.03253 app. B]. The paper does not map these names to library arguments, so check the library documentation before use 2106.03253 app. B.

HyperparameterSearch space
Number of estimatorsUniform [100, 4000]
EtaLog-uniform [e^-7, 1]
Max depthDiscrete uniform [1, 10]
SubsampleUniform [0.2, 1]
Colsample bytreeUniform [0.2, 1]
Colsample bylevelUniform [0.2, 1]
Min child weightLog-uniform [e^-16, e^5]
AlphaUniform choice of {0, log-uniform [e^-16, e^2]}
LambdaUniform choice of {0, log-uniform [e^-16, e^2]}
GammaUniform choice of {0, log-uniform [e^-16, e^2]}

Shared protocol 2106.03253 §3.1.2: 1,000 search steps per dataset, selection by smallest validation loss, and test results as the mean of four seeds with standard error of the mean. Inputs are standardized using training statistics only 2106.03253 §3.1.1.

LightGBM (histology pipeline)

The paper names LightGBM but gives almost no values 1802.00752 §2.5. The values below come from the authors' code at commit 3eedb3c, so they are not stated in the paper train_lgbm.py.

HyperparameterValue in codeWhere
ObjectiveMulticlass, 4 classestrain_lgbm.py
Learning rate0.1train_lgbm.py
Boosting rounds70, fixed, no early stoppingtrain_lgbm.py
num_leaves191train_lgbm.py
max_depth7train_lgbm.py
feature_fraction0.46train_lgbm.py
bagging_fraction0.69, no effect (see below)train_lgbm.py
bagging_freq0, bagging offtrain_lgbm.py
Seeds per fold51802.00752 §2.5 train_lgbm.py

Bagging is disabled, so the bagging fraction has no effect. The code's log comments give 0.66 instead train_lgbm.py. Folds are 10 stratified splits at image level, so the 50 descriptors of one image stay together 1802.00752 §2.5. The paper's folds come from a committed file, and regenerating them does not reproduce the reported numbers [code: utils.py#L3, #L83].

NODE

The two papers search different spaces for NODE. Neither is a default.

Hyperparameter2019 paper, tuned grid 1909.06312 app. A.2.32021 benchmark search space 2106.03253 app. B
Layers{2, 4, 8}Discrete uniform [1, 10]
Total trees{1024, 2048}, counted across all layersChoice of {256, 512, 1024, 2048}
Tree depth{6, 8}Discrete uniform [4, 9]
Tree output dimension{2, 3}Discrete uniform [1, 5]
Batch sizeLargest that fits GPU memoryUniform choice of {512, 1024, 2048, 4096, 8192}

The 2019 paper fixes the learning rate at 1e-3 1909.06312 app. A.2.3. The 2021 benchmark lists two learning-rate ranges for NODE [arxiv:2106.03253 app. B].

Results

2021 benchmark

Author-reported, on 11 datasets, lower is better 2106.03253 tab. 2 tab. 3.

  • Mean relative deterioration: XGBoost 3.34%, the Simple Ensemble 3.15%, and the deep ensemble with XGBoost 2.32%. The deep ensemble without XGBoost scored 6.91% 2106.03253 tab. 3. The averages are taken over each model's unseen datasets.
  • Unseen datasets: XGBoost beat the deep models on 8 of the 11 datasets that their own papers did not use, with p<0.005 2106.03253 §3.2.
  • Per dataset: XGBoost was best on Eye Movements (56.07 ± 0.65). The deep ensemble with XGBoost was best on CoverType, Gesture, YearPrediction, MSLR, Shrutime and Blastchar 2106.03253 tab. 2.
  • Search cost: on Shrutime, XGBoost reached good performance in fewer search iterations. The authors also report XGBoost training as more than an order of magnitude faster, without figures 2106.03253 §3.2 fig. 2.

2019 paper (NODE)

Author-reported, on six datasets, ten seeds per method. Lower is better 1909.06312 tab. 1 tab. 2.

  • Default hyperparameters: NODE had the best value on all six datasets, against default CatBoost and XGBoost 1909.06312 tab. 1.
  • Tuned hyperparameters: NODE was best on Epsilon, YearPrediction, Higgs and Click. Tuned XGBoost was best on Microsoft and Yahoo [arxiv:1909.06312 tab. 2]. Tuned XGBoost was therefore ahead on two of the six datasets.
  • Runtime: the authors describe NODE inference as on par with heavily optimised GBDT libraries, while its training time is longer [arxiv:1909.06312 tab. 4].

2018 histology paper (LightGBM)

Author-reported, on the 400 ICIAR 2018 images, under 10-fold stratified cross-validation 1802.00752 §2.1 §3.

  • Four-class, blended: 87.2 ± 2.6% accuracy, from the average of six encoder and crop models. The best single model, ResNet at 400 px, scored 84.2 ± 4.2% 1802.00752 tab. 1.
  • Two-class (non-carcinoma vs carcinoma): 93.8 ± 2.3% accuracy and ROC AUC 0.973 1802.00752 §3 fig. 4a. The paper does not say how this task is derived. The code merges the four-class blend into two classes crossvalidate_blending.py, so these numbers come from that merge, not from a separate binary model.
  • The paper gives no numeric comparison with earlier methods 1802.00752 §4.

Implementation sketch

The sketch covers the outer tuning loop used in the 2021 benchmark. NODE's inner training is different and is covered in its card 1909.06312 §3.3.

Pseudocode
# Tune XGBoost on one dataset  [arxiv:2106.03253 §3.1.2] [app. B]
# Input:  train and valid splits
# Output: configuration with the smallest validation loss

def tune_xgboost(train, valid):
    best_config, best_loss = None, math.inf
    history = []
    # 1,000 search steps per dataset  [§3.1.2]
    for step in range(1000):
        # Propose from the search space in [app. B]; estimator not stated
        config = propose(XGBOOST_SPACE, history)
        loss = validation_loss(fit_xgboost(config, train), valid)
        history.append((config, loss))
        # Keep the smallest validation loss  [app. B]
        if loss < best_loss:
            best_config, best_loss = config, loss
    return best_config

Contradictions

  • Scope of the win. The abstract says XGBoost outperforms the deep models "across the datasets". Section 3.2 says 8 of 11 unseen datasets, and Table 2 shows TabNet ahead of XGBoost on Rossmann, CoverType and Higgs 2106.03253 §3.2 tab. 2.
  • Relative figures. The text gives 3.4%, 11.8% and 7.5% for XGBoost, DNF-Net and 1D-CNN. Table 3 gives 3.34, 11.96 and 7.56 2106.03253 §3.2 tab. 3.
  • Rank of XGBoost. The text calls XGBoost second best. Table 3 places the Simple Ensemble (3.15) ahead of XGBoost (3.34) 2106.03253 §3.2 tab. 3.
  • Significance level. Section 3.1.2 sets the Friedman test at 95% (p < 0.05). Section 3.2 quotes p < 0.005 2106.03253 §3.1.2 §3.2.
  • NODE against tuned XGBoost. The 2019 paper reports NODE ahead on four of six datasets 1909.06312 tab. 2. The 2021 benchmark reports NODE at 14.21% mean relative deterioration, the worst of its four deep models, against 3.34% for XGBoost 2106.03253 tab. 3. Both papers put NODE ahead of XGBoost on YearPrediction 1909.06312 tab. 2 2106.03253 tab. 2. The averages cover different datasets and tuning budgets. The 2019 paper uses 50 TPE steps for CatBoost and XGBoost 1909.06312 app. A.2, and the 2021 benchmark uses 1,000 Hyperopt steps 2106.03253 §3.1.2.
  • Choice function ablation. The 2019 paper's text says entmax was best in all experiments 1909.06312 §4.2. Its own table shows sparsemax ahead of entmax on YearPrediction with two layers, 76.81 against 77.05 1909.06312 tab. 3.
  • Epsilon metric. The 2019 paper labels Epsilon as classification error 1909.06312 §4.1. The 2021 benchmark labels it cross-entropy × 100 2106.03253 tab. 2. Check the label before comparing the two numbers.
  • Fusion gain (2018 paper). The text says the fused model beats every constituent by 4 to 5 points. Table 1 gives a gap of 3.0 to 4.7 points against the individual model means 1802.00752 §3 tab. 1. The text also gives 600 models, while the code trains 300 1802.00752 §2.5 train_lgbm.py.

Papers

Source and license

Compiled from the papers listed on this page, all published under CC BY, CC BY-SA or CC0, with citations. See each paper's page for its authors and license.