PigeonColumba compressa

Patient & consistent teaching

Beyer et al.: treat KD as function matching: query the teacher on fresh augmented inputs every step and train for a long time. Does it keep paying?

Methods: Function matching (patient, consistent teaching)

Line chart of test accuracy (20-way) against training steps (log scale), one line per method, with a dashed reference line for the teacher. Titled “Patient & consistent teaching”. The numbers are in the table below.
Test accuracy (20-way) against training steps
Line chart of agreement with teacher against training steps (log scale), one line per method. Titled “Patient & consistent teaching”. The numbers are in the table below.
Agreement with teacher against training steps

Table

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

Training stepsMethodTest accuracy (20-way)Target-class AP ('bird')Agreement with teacherTest NLLKL(Bayes || model)Parameters (nonzero)
1,500fixed teacher targets0.776 ± 0.0020.922 ± 0.0010.791 ± 0.0020.681 ± 0.0100.601 ± 0.0092,132
1,500online mixup (consistent)0.753 ± 0.0080.913 ± 0.0010.771 ± 0.0100.731 ± 0.0210.648 ± 0.0212,132
1,500online mixup + jitter0.739 ± 0.0110.905 ± 0.0000.760 ± 0.0100.781 ± 0.0250.699 ± 0.0252,132
1,500labels only (scratch)0.777 ± 0.0010.922 ± 0.0010.791 ± 0.0020.680 ± 0.0090.600 ± 0.0082,132
6,000fixed teacher targets0.838 ± 0.0010.960 ± 0.0000.850 ± 0.0000.513 ± 0.0040.436 ± 0.0042,132
6,000online mixup (consistent)0.838 ± 0.0020.959 ± 0.0030.859 ± 0.0040.484 ± 0.0040.402 ± 0.0042,132
6,000online mixup + jitter0.832 ± 0.0030.949 ± 0.0090.857 ± 0.0030.498 ± 0.0060.418 ± 0.0072,132
6,000labels only (scratch)0.836 ± 0.0010.960 ± 0.0000.848 ± 0.0010.518 ± 0.0030.439 ± 0.0032,132
24,000fixed teacher targets0.838 ± 0.0040.960 ± 0.0010.849 ± 0.0010.675 ± 0.0300.597 ± 0.0262,132
24,000online mixup (consistent)0.872 ± 0.0020.974 ± 0.0010.894 ± 0.0020.390 ± 0.0060.310 ± 0.0042,132
24,000online mixup + jitter0.864 ± 0.0000.971 ± 0.0050.893 ± 0.0010.405 ± 0.0000.324 ± 0.0002,132
24,000labels only (scratch)0.839 ± 0.0030.965 ± 0.0010.849 ± 0.0010.674 ± 0.0290.601 ± 0.0292,132

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 12 smaller models hatch 2 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, accuracy 0.914. 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.