Constructing Confidence Intervals for 'the' Generalization Error -- a Comprehensive Benchmark Study
<|reference_start|>Constructing Confidence Intervals for 'the' Generalization Error -- a Comprehensive Benchmark Study: When assessing the quality of prediction models in machine learning, confidence intervals (CIs) for the generalization error, which measures predictive performance, are a crucial tool. Luckily, there exist many methods for computing such CIs and new promising approaches are continuously being proposed. Typically, these methods combine various resampling procedures, most popular among them cross-validation and bootstrapping, with different variance estimation techniques. Unfortunately, however, there is currently no consensus on when any of these combinations may be most reliably employed and how they generally compare. In this work, we conduct the first large-scale study comparing CIs for the generalization error - empirically evaluating 13 different methods on a total of 18 tabular regression and classification problems, using four different inducers and a total of eight loss functions. We give an overview of the methodological foundations and inherent challenges of constructing CIs for the generalization error and provide a concise review of all 13 methods in a unified framework. Finally, the CI methods are evaluated in terms of their relative coverage frequency, width, and runtime. Based on these findings, we are able to identify a subset of methods that we would recommend. We also publish the datasets as a benchmarking suite on OpenML and our code on GitHub to serve as a basis for further studies.<|reference_end|>
@article{schulz-kümpel2024constructing,
    title={Constructing Confidence Intervals for 'the' Generalization Error -- a
  Comprehensive Benchmark Study},
    author={Hannah Schulz-K"umpel, Sebastian Fischer, Thomas Nagler, Anne-Laure
  Boulesteix, Bernd Bischl, Roman Hornung},
    journal={arXiv preprint arXiv:2409.18836},
    year={2024},
    archivePrefix={arXiv},
    eprint={2409.18836},
    primaryClass={stat.ML cs.LG}
}