From Generalized zero-shot learning to long-tail with class descriptors

5 Apr 2020  ·  Dvir Samuel, Yuval Atzmon, Gal Chechik ·

Real-world data is predominantly unbalanced and long-tailed, but deep models struggle to recognize rare classes in the presence of frequent classes. Often, classes can be accompanied by side information like textual descriptions, but it is not fully clear how to use them for learning with unbalanced long-tail data. Such descriptions have been mostly used in (Generalized) Zero-shot learning (ZSL), suggesting that ZSL with class descriptions may also be useful for long-tail distributions. We describe DRAGON, a late-fusion architecture for long-tail learning with class descriptors. It learns to (1) correct the bias towards head classes on a sample-by-sample basis; and (2) fuse information from class-descriptions to improve the tail-class accuracy. We also introduce new benchmarks CUB-LT, SUN-LT, AWA-LT for long-tail learning with class-descriptions, building on existing learning-with-attributes datasets and a version of Imagenet-LT with class descriptors. DRAGON outperforms state-of-the-art models on the new benchmark. It is also a new SoTA on existing benchmarks for GFSL with class descriptors (GFSL-d) and standard (vision-only) long-tailed learning ImageNet-LT, CIFAR-10, 100, and Places365.

PDF Abstract
Task Dataset Model Metric Name Metric Value Global Rank Result Benchmark
Generalized Few-Shot Learning AwA2 DRAGON Per-Class Accuracy (1-shot) 67.1 # 4
Per-Class Accuracy (2-shots) 69.1 # 5
Per-Class Accuracy (5-shots) 76.7 # 3
Per-Class Accuracy (10-shots) 81.9 # 2
Per-Class Accuracy (20-shots) 83.3 # 1
Long-tail learning with class descriptors AWA-LT DRAGON + Bal'Loss Per-Class Accuracy 76.2 # 1
Long-Tailed Accuracy 92.2 # 4
Long-tail learning with class descriptors AWA-LT DRAGON Per-Class Accuracy 74.1 # 2
Long-Tailed Accuracy 94.1 # 1
Long-tail Learning CIFAR-100-LT (ρ=10) smDRAGON Error Rate 41.23 # 28
Long-tail Learning CIFAR-100-LT (ρ=100) smDRAGON Error Rate 56.50 # 54
Long-tail Learning CIFAR-10-LT (ρ=10) smDRAGON Error Rate 11.84 # 38
Long-tail Learning CIFAR-10-LT (ρ=100) smDRAGON Error Rate 20.37 # 20
Long-tail learning with class descriptors CUB-LT DRAGON + Bal'Loss Per-Class Accuracy 60.1 # 1
Long-Tailed Accuracy 66.5 # 2
Long-tail learning with class descriptors CUB-LT DRAGON Per-Class Accuracy 57.8 # 2
Long-Tailed Accuracy 67.7 # 1
Long-tail Learning ImageNet-LT smDRAGON Top-1 Accuracy 42.0 # 55
Long-tail learning with class descriptors ImageNet-LT-d DRAGON + Bal'Loss Per-Class Accuracy 53.5 # 1
Long-tail learning with class descriptors ImageNet-LT-d DRAGON Per-Class Accuracy 51.2 # 2
Long-tail Learning Places-LT smDRAGON Top-1 Accuracy 38.1 # 22
Generalized Few-Shot Learning SUN DRAGON Per-Class Accuracy (1-shot) 41.0 # 1
Per-Class Accuracy (2-shots) 43.8 # 1
Per-Class Accuracy (5-shots) 46.7 # 1
Per-Class Accuracy (10-shots) 48.2 # 1
Long-tail learning with class descriptors SUN-LT DRAGON + Bal'Loss Per-Class Accuracy 36.1 # 1
Long-Tailed Accuracy 38.5 # 3
Long-tail learning with class descriptors SUN-LT DRAGON Per-Class Accuracy 34.8 # 2
Long-Tailed Accuracy 40.4 # 1

Methods


No methods listed for this paper. Add relevant methods here