Class-Balanced Loss Based on Effective Number of Samples
Abstract
With the rapid increase of large-scale, real-world datasets, it becomes critical to address the problem of long-tailed data distribution (i.e., a few classes account for most of the data, while most classes are under-represented). Existing solutions typically adopt class re-balancing strategies such as re-sampling and re-weighting based on the number of observations for each class. In this work, we argue that as the number of samples increases, the additional benefit of a newly added data point will diminish. We introduce a novel theoretical framework to measure data overlap by associating with each sample a small neighboring region rather than a single point. The effective number of samples is defined as the volume of samples and can be calculated by a simple formula , where is the number of samples and is a hyperparameter. We design a re-weighting scheme that uses the effective number of samples for each class to re-balance the loss, thereby yielding a class-balanced loss. Comprehensive experiments are conducted on artificially induced long-tailed CIFAR datasets and large-scale datasets including ImageNet and iNaturalist. Our results show that when trained with the proposed class-balanced loss, the network is able to achieve significant performance gains on long-tailed datasets.
Cite
@article{arxiv.1901.05555,
title = {Class-Balanced Loss Based on Effective Number of Samples},
author = {Yin Cui and Menglin Jia and Tsung-Yi Lin and Yang Song and Serge Belongie},
journal= {arXiv preprint arXiv:1901.05555},
year = {2019}
}
Comments
Code is available at: https://github.com/richardaecn/class-balanced-loss