Training a neural network can take a lot of time. I used to think the obvious fix was simply to make the model smaller or find faster hardware. Those can help, but I’ve learned that training time has several possible bottlenecks: the model’s architecture, the way it processes data and updates its weights, and how effectively it uses the hardware.
That led me to a more surprising question: What if a model generated several answers, but learned only from the best one?
The idea sounds simple. A model produces multiple candidate outputs. A scoring method picks the strongest candidate, and training focuses on that one. Instead of treating every attempt as equally useful, the model gives its learning signal to the answer that best meets the goal.
I found connections to selective backpropagation and rejection sampling. Selective backpropagation chooses which examples contribute to the model’s gradient updates.…