This is the official implementation of the paper Towards Better Selective Classification.
In this work, we confirm that the superior performance of state-of-the-art methods such as SelectiveNet, Deep Gamblers, and Self-Adaptive Training is owed to training a more generalizable classifier rather than their proposed selection mechanisms. We propose an entropy-based regularizer that improves the performance and achieves new state-of-the-art results.
Create and activate a conda environment. Install the dependencies as listed in requirements.txt
:
conda create --name sel_cls python=3.7
conda activate sel_cls
pip install -r requirements.txt
Self-Adaptive Training (SAT):
bash run_${dataset}.sh
Self-Adaptive Training (SAT) + Entropy Minimization (EM):
bash run_${dataset}_entropy.sh
For technical details, please check the conference version of our paper.
@inproceedings{
feng2023towards,
title={Towards Better Selective Classification},
author={Leo Feng and Mohamed Osama Ahmed and Hossein Hajimirsadeghi and Amir H. Abdi},
booktitle={International Conference on Learning Representations},
year={2023},
url={https://openreview.net/forum?id=5gDz_yTcst}
}
This code is based on the official code base of Self-Adaptive Training (which is based on the official code base of Deep Gambler).