Learning to (Learn at Test Time)
This work addresses the problem of improving efficiency and performance in deep learning models for computer vision tasks, offering a novel approach that could impact model design, though it appears incremental in its application to existing architectures.
The paper tackles supervised learning by reformulating it as a two-loop process where an inner loop learns on individual instances with self-supervision and an outer loop optimizes this self-supervised task to improve predictions, resulting in a method that outperforms transformers with linear attention on ImageNet in accuracy and FLOPs, while regular transformers fail to run.
We reformulate the problem of supervised learning as learning to learn with two nested loops (i.e. learning problems). The inner loop learns on each individual instance with self-supervision before final prediction. The outer loop learns the self-supervised task used by the inner loop, such that its final prediction improves. Our inner loop turns out to be equivalent to linear attention when the inner-loop learner is only a linear model, and to self-attention when it is a kernel estimator. For practical comparison with linear or self-attention layers, we replace each of them in a transformer with an inner loop, so our outer loop is equivalent to training the architecture. When each inner-loop learner is a neural network, our approach vastly outperforms transformers with linear attention on ImageNet from 224 x 224 raw pixels in both accuracy and FLOPs, while (regular) transformers cannot run.