Under review for ICLR 2023 "Gradient Boosting Performs Gaussian Process Inference"
Implementation of KGB is done in KGB-Experiments/gbdt_uncertainty/training.py and synthetic-regression.ipynb in GP_DoEverything function.
m -- border_count in CatBoostRegressor, n -- depth in CatBoostRegressor, in GP_DoEverything sigma --
Download from UCI YearPredictionMSD and CT Slice Localization data sets, put them into /datasets/ folder
run 'cd KGB-Experiments/gbdt_uncertainty' and then 'python3 generate_odd_regression.py' in order to (re-)generate ood data
To run training run 'cd ..' and then 'python3 train_models.py regression 1'
To get results run 'python3 aggregate_results_regression.py X' where X: std_single, std_ensemble, rmse, prr_auc.
First two output rmse+std, second outputs only rmse for both signle model and ensemble and the last option outputs PRR for error and AUC-ROC for OOD detection.