Best practical method of knowledge distillation available?
TL;DR: Knowledge distillation generally performs worse than traning model from scratch on data from what I’ve seen online. Is there a method of KD where this doesn’t happen and I get close to performance of a model if it was trained from scratch?
So I’ve recently been interested in make DL models more useful for everyday tasks. And considering their size trying to run these models on consumer devices without much loss in quality but rn from what I’ve seen, this just feels like trying fit an elephant into his pants.
Basically it tears everytime I try. I found quantization to be cool but I need to reduce its size even more tbh. So I found knowledge distillation. But from what I’ve seen, though theoretically it is fantastic. Practically knowlege distillation sucks. And is probably worse than just straight up traning the model from scratch on the dataset.
So is there a used and proven method of knowledge distillation that I can use? Which will give me at least very close accuracy to a model trained from scratch on dataset?
I think you can try a similar way for another task, for me, the approach can be generalized to different tasks
for me the approach can be generalized to different tasks
Can you elaborate?