Knowledge distillation

Knowledge distillation (destilácia znalostí) je technika kompresie modelu, kde silný model (teacher) odovzdáva svoje správanie menšiemu modelu (student). Cieľ je dosiahnuť čo najlepší kompromis medzi kvalitou, latenciou a nákladmi.


1. Intuícia a základný princíp

Namiesto učenia iba z tvrdých značiek (0/1) sa student učí aj z jemnej informácie, ktorú teacher nesie v rozdelení pravdepodobností tried. Práve tieto „soft targets" často obsahujú vzťahy medzi triedami, ktoré zlepšujú generalizáciu studenta.

Príklad:

  • hard label: „je to mačka";
  • soft target: „mačka 0.82, líška 0.12, pes 0.04...".

2. Matematické jadro (najčastejšia forma)

Typická distilačná strata kombinuje dve časti:

L = alpha * T^2 * KL( softmax(z_t / T) || softmax(z_s / T) )
    + (1 - alpha) * CE(y, softmax(z_s))

kde:

  • z_t, z_s sú logity teacher/studenta,
  • T je teplota (temperature),
  • KL je Kullback-Leibler divergencia,
  • CE je klasická cross-entropy voči ground truth,
  • alpha určuje pomer medzi destilačnou a supervisovanou časťou.

Poznámka: násobenie T^2 sa bežne používa na stabilizáciu gradientov pri vyššej teplote.


3. Typické varianty destilácie

  • Logit distillation: student kopíruje výstupné distribúcie teacher-a.
  • Feature distillation: student napodobňuje aj medzivrstvy (reprezentácie).
  • Sequence distillation (LLM): teacher generuje texty/odpovede, na ktorých sa student ďalej trénuje.
  • Self-distillation: model sa učí z „lepšej" verzie seba (checkpoint, ensemble, teacher branch).
  • Task-specific distillation: destilácia na konkrétnu úlohu (QA, klasifikácia, sumarizácia, ASR).

4. Čo sa sleduje v praxi (metriky)

Pri distilácii nestačí pozerať iba accuracy.

  • Quality: accuracy/F1/BLEU/ROUGE/pass@k podľa typu úlohy.
  • Latency: p50/p95 čas inferencie.
  • Throughput: requesty za sekundu.
  • Memory footprint: VRAM/RAM počas inferencie.
  • Cena: náklad na 1k/1M requestov alebo tokenov.

Cieľ je obyčajne: „malý pokles kvality za výrazný zisk v rýchlosti a cene".


5. Riziká a obmedzenia

  • Teacher prenáša aj chyby: student môže zdediť systematické omyly teacher-a.
  • Distribution shift: mimo tréningovej distribúcie môže student degradovať viac než teacher.
  • Kalibrácia: pravdepodobnosti studenta nemusia byť dobre kalibrované.
  • Capacity limit: príliš malý student nezachytí komplexné správanie.
  • Bezpečnosť/zarovnanie (LLM): distilácia môže oslabiť guardrails, ak sa netestuje aj safety profil.

6. Kedy použiť a kedy nie

Použiť:

  • keď potrebuješ lacnejšiu inferenciu,
  • keď cieliš na edge/on-prem prostredie,
  • keď máš jasné KPI pre latenciu a náklady.

Nepoužiť (alebo opatrne):

  • pri úlohách, kde je každý percentuálny bod kvality kritický,
  • keď nemáš kvalitné eval sety pre kontrolu regresií,
  • keď teacher sám nie je stabilný alebo dobre kalibrovaný.

7. Quick Reference

Parameter Praktický význam
Teacher veľký model s vyššou kvalitou
Student menší model optimalizovaný na cenu/latenciu
Kľúčový hyperparameter T (temperature) + alpha
Hlavný cieľ minimalizovať stratu kvality pri veľkom zisku výkonu
Najčastejšie riziko prenos chýb a degradácia mimo distribúcie
Povinnosť pred nasadením benchmark kvalita + latencia + safety

8. Zdroje

  • Hinton, Vinyals, Dean (2015): Distilling the Knowledge in a Neural Network.
  • Sanh et al. (2019): DistilBERT.
  • Jiao et al. (2019): TinyBERT.
  • Gou et al. (2021): Knowledge Distillation: A Survey.

Zhrnutie

  • Distilácia je praktický spôsob, ako dostať výkon veľkého modelu do menšieho modelu.
  • Technicky je kľúčová kombinácia KL distilačnej straty a supervisovanej straty.
  • O úspechu rozhoduje nie len kvalita, ale aj latencia, pamäť, cena a robustnosť po nasadení.