Back to archive
#ai#llm#glossary#aigen

Knowledge Distillation

Duży model dobrze wykonuje zadanie, ale jest zbyt kosztowny w codziennym użyciu. Mniejszy model mógłby próbować odtworzyć jego zachowanie. Potrzebuje jednak przykładów lub ocen pokazujących coś więcej niż samą listę poprawnych etykiet.

Knowledge Distillation to uczenie modelu studenta z użyciem wyjść lub przewidywań modelu nauczyciela. Student rzeczywiście zmienia swoje parametry; samo wysłanie zapytania do nauczyciela nie jest treningiem.

Jeżeli nauczyciel daje A szansę 0,60, B 0,35, a C 0,05, etykieta „A” pomija informację, że B jest bliską alternatywą. Student może uczyć się odtworzyć cały taki rozkład. Inny wariant wykorzystuje pełne teksty wygenerowane przez nauczyciela.

Nauczyciel nie musi być pojedynczym większym modelem, ale klasycznie służy jako źródło zachowania do naśladowania. Destylacja może przenosić również błędy. KL Divergence pomaga mierzyć zgodność przewidywań, a On-policy self-distillation jest bardziej szczególną konstrukcją danych i nauczyciela.

Mechanizm i szczegóły

W Distilling the Knowledge in a Neural Network, §2 Hinton, Vinyals i Dean opisują uczenie na miękkich rozkładach prawdopodobieństwa. Zwiększona Temperature ujawnia więcej informacji o relacjach między kandydatami. Ten sam parametr stosuje się po stronie nauczyciela i studenta przy porównywaniu rozkładów. Autorzy łączą taki cel z uczeniem na poprawnych etykietach, gdy są dostępne.

Więcej informacji niż jedna odpowiedź

Własny przykład: nauczyciel przypisuje umownym tokenom A, B i C szanse 0,60; 0,35; 0,05. Etykieta „A” wskazuje tylko zwycięzcę. Cały rozkład mówi także, że B było znacznie bardziej prawdopodobne niż C. Student może próbować odtworzyć te proporcje za pomocą Cross-entropy albo odpowiednio skierowanej KL Divergence. To dodatkowy sygnał treningowy, nie dowód poprawności etykiet nauczyciela.

W modelach generujących tekst trzeba odróżnić porównywanie rozkładów kolejnego tokena od uczenia na całych wygenerowanych sekwencjach. Kim i Rush, Sequence-Level Knowledge Distillation, §2.2–3.2 opisują oba podejścia dla tłumaczenia maszynowego. W wariancie sekwencyjnym student trenuje na wyjściach znalezionych przez beam search nauczyciela. Sam tekst takiej odpowiedzi nie zawiera pełnych prawdopodobieństw wszystkich alternatywnych tokenów.

Wynik zależy od nauczyciela, danych i możliwości studenta. Nie oznacza skopiowania wszystkich umiejętności ani zagwarantowanej poprawy w każdym zadaniu. Osobna notatka On-policy self-distillation opisuje szczególny wariant w TTPO; jej warunki nie są ogólną definicją Knowledge Distillation.