PigeonColumba compressa

How small can a one-class specialist be?

Target-class AP vs. size for a 20-way generalist student and for specialists whose heads keep less and less of the teacher's label space.

Methods: Specialist heads

Line chart of target-class AP ('bird') against hidden width (log scale), one line per method, with a dashed reference line for the teacher and the Bayes-optimal classifier. Titled “How small can a one-class specialist be?”. The numbers are in the table below.
Target-class AP ('bird') against hidden width
Line chart of target-class AP ('bird') against parameters (nonzero) (log scale), one line per method, with a dashed reference line for the teacher. Titled “How small can a one-class specialist be?”. The numbers are in the table below.
Target-class AP ('bird') against parameters (nonzero)

Table

Mean over the seeds; ± is the standard deviation where more than one seed ran. The experiment took 83 s.

Hidden widthMethodTest accuracy (20-way)Target-class AP ('bird')Test NLLKL(Bayes || model)Parameters (nonzero)
2generalist 20-way, KD0.123 ± 0.0500.129 ± 0.0552.739 ± 0.1822.654 ± 0.18292
2binary head, labels only0.515 ± 0.33138
2binary head, KD0.516 ± 0.33238
2bird+siblings+rest head, KD0.343 ± 0.20547
2bird+siblings+superclasses head, KD0.215 ± 0.12356
4generalist 20-way, KD0.324 ± 0.0120.648 ± 0.0081.989 ± 0.0401.904 ± 0.040172
4binary head, labels only0.859 ± 0.00382
4binary head, KD0.878 ± 0.00782
4bird+siblings+rest head, KD0.599 ± 0.03297
4bird+siblings+superclasses head, KD0.600 ± 0.031112
8generalist 20-way, KD0.456 ± 0.0150.740 ± 0.0331.603 ± 0.0281.519 ± 0.029356
8binary head, labels only0.924 ± 0.003194
8binary head, KD0.935 ± 0.002194
8bird+siblings+rest head, KD0.855 ± 0.006221
8bird+siblings+superclasses head, KD0.756 ± 0.017248
16generalist 20-way, KD0.671 ± 0.0080.862 ± 0.0020.991 ± 0.0230.909 ± 0.023820
16binary head, labels only0.953 ± 0.012514
16binary head, KD0.969 ± 0.007514
16bird+siblings+rest head, KD0.932 ± 0.010565
16bird+siblings+superclasses head, KD0.902 ± 0.018616
32generalist 20-way, KD0.832 ± 0.0050.954 ± 0.0050.511 ± 0.0130.433 ± 0.0152,132
32binary head, labels only0.974 ± 0.0031,538
32binary head, KD0.983 ± 0.0021,538
32bird+siblings+rest head, KD0.978 ± 0.0021,637
32bird+siblings+superclasses head, KD0.965 ± 0.0061,736

Reference points

Teacher (the large model)
The full-size network trained on the labeled data; the smaller models here are measured against it. Test accuracy (20-way) 0.914, target-class AP ('bird') 0.989, test NLL 0.384, KL(Bayes || model) 0.309, parameters (nonzero) 140,052.
Bayes-optimal (the best any model can do on this problem)
Predictions from the exact class probabilities, which the lab can compute because it generated the data. Test accuracy (20-way) 0.973, target-class AP ('bird') 0.999, test NLL 0.079.

Birds in this experiment

The table's 25 smaller models hatch 3 kinds of bird. Each kind is drawn once, for one model: the smallest if the bird is healthy or bones, the one that keeps the most if it's starving.

Measured against this experiment's teacher: 140,052 parameters, 4481.7 kbit, target-class AP 0.989. Storage is 32 bits a parameter, the lab's rule for a dense fp32 net, which every model drawn here is. Species follows how many times smaller a model is. A bird stays healthy while its model keeps at least 95% of the reference's score, and turns to bones at 60% or less.

These are the lab's recorded results, so they aren't added to anyone's life list. Birds you hatch yourself, in the Coop or from a Field Guide run, are saved to your life list.