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 — bez toho, aby sa student trénoval výlučne na surových ground-truth labeloch.
Od roku 2015, keď Hinton a kolektív formalizovali techniku, sa destilácia stala jedným z pilierov modernej MLOps praxe. V ére veľkých jazykových modelov (LLM) získala ešte väčší význam: väčšina komerčne nasadených modelov v roku 2026 je buď plnohodnotne destilovaná, alebo prešla aspoň jednou fázou distilačného trénovania.
1. Intuícia a základný princíp
Namiesto učenia výlučne 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 obsahujú vzťahy medzi triedami, ktoré hardcoded labely jednoducho nenesú — a práve tieto vzťahy zlepšujú generalizáciu studenta.
Príklad pre klasifikáciu obrázkov:
- hard label: „je to mačka" →
[1, 0, 0, ...] - soft target teacher-a:
{mačka: 0.82, líška: 0.12, pes: 0.04, ...}
Soft target hovorí nielen čo je správna odpoveď, ale aj čo je si teacher istý alebo nie. Pre studenta je to hustejší tréningový signál než binárna odpoveď.
Pre LLM to platí rovnako: teacher nesie celé rozdelenie pravdepodobností cez vocabulary (napr. 100 000+ tokenov), čo je výrazne bohatší signál než iba one-hot ground truth. Student sa tým učí aj distribúciu neistoty — nie len najvyššie skóre.
2. Matematické jadro
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_ssú logity teacher-a resp. studenta,Tje teplota (temperature) — väčšia hodnota „zmäkčuje" distribúciu a zviditeľňuje vzťahy medzi triedami,KLje Kullback-Leibler divergencia medzi distribúciami,CEje klasická cross-entropy voči ground truth labelom,alphaurčuje pomer medzi destilačnou a supervisovanou časťou straty.
Faktor T^2 sa bežne používa na stabilizáciu gradientov: pri vyššej teplote sú gradienty KL termu prirodzene menšie, násobenie kvadrátom teploty ich preto rescaluje na porovnateľnú veľkosť so CE termom.
V praxi sa teplota T pohybuje medzi 2–10, pričom vyššia teplota zvýrazňuje vzťahy medzi triedami, ale môže sťažiť konvergenciu. alpha sa typicky nastavuje experimentálne; hodnoty okolo 0.5–0.9 (väčší dôraz na distilačný signál) sú bežné pri trénovaní z väčšieho LLM.
3. Typické varianty destilácie
Destilácia nie je jedna technika — je to rodina prístupov líšiacich sa tým, čo sa prenáša a ako:
Podľa toho, čo sa prenáša:
- Logit distillation: student kopíruje výstupné distribúcie teacher-a — najjednoduchšia forma, funguje aj bez prístupu k internému stavu teacher-a.
- Feature distillation: student napodobňuje aj medzivrstvy (aktivácie, attention mapy, skryté reprezentácie) — vyžaduje white-box prístup k teacher-u, ale dáva silnejší signál.
- Relation distillation: student sa učí vzťahy medzi vzorkami v priestore reprezentácií (napr. gram matice, podobnostné matice) — robustnejšie pri veľkom rozdiely kapacity.
Podľa prístupu k teacher-u:
- White-box distillation: máš prístup k logitom, activáciám, parametrom teacher-a. Bohatší signál, typický pri internom trénovaní.
- Black-box distillation: máš prístup len k výstupom teacher-a (napr. cez API). Bežné pri destilácii proprietárnych modelov — student sa trénuje na syntetických dátach generovaných teacher-om.
Podľa fázy trénovania:
- Offline distillation: teacher je fixovaný, najprv sa vygenerujú soft labels, potom sa trénuje student. Efektívne, ale vyžaduje ukladanie veľkých dát.
- Online distillation: teacher a student sa trénujú súčasne, alebo sa teacher aktualizuje počas trénovania studenta. Zložitejšie, ale niekedy výkonnejšie.
- Self-distillation: model sa učí z vlastnej „lepšej" verzie — checkpoint z predchádzajúcej epochy, ensemble branch, alebo beam search výstupy.
Špecifické pre LLM:
- Sequence-level distillation: teacher generuje celé sekvencie, na ktorých sa student ďalej trénuje (fine-tuning na syntetických dátach).
- Token-level KL distillation: student minimalizuje KL divergenciu voči celej distribúcii teacher-a na každom tokene.
4. Knowledge distillation v ére LLM (2024–2026)
Destilácia sa stala de facto štandardom pri vývoji menších LLM. Prakticky každý otvorene dostupný model s menej ako 10 miliardami parametrov publikovaný v rokoch 2024–2026 obsahuje aspoň jednu distilačnú fázu.
Kľúčové príklady z praxe:
- DeepSeek-R1-Distill (2025): Série modelov (1.5B–70B) destilovaných z DeepSeek-R1 pomocou sekvenčnej destilácie — student sa trénoval na myšlienkových reťazcoch (chain-of-thought) generovaných teacher-om. Výsledky ukázali, že 7B destilovaný model prekonáva v niektorých benchmarkoch pôvodne trénované modely rovnakej veľkosti.
- Gemma 3 (2025): Google použil kombináciu destilácie z interných teacher modelov a RLHF na dosiahnutie vysokého výkonu v malých veľkostiach (1B–27B).
- Phi-4 / Phi-4-mini (Microsoft, 2025): Silne spoliehajú na syntetické dáta generované väčšími modelmi — čo je forma black-box sekvenčnej destilácie.
- Llama-3.2 1B/3B (Meta, 2024): Explicitne destilované z Llama-3.1 8B a 70B pomocou logit distillation.
Trend v roku 2026:
Masívne sa rozšírila prax, kde teacher je proprietárny frontier model (GPT-4o, Claude, Gemini) prístupný výlučne cez API — čiže black-box destilácia cez syntetické dáta. Tento prístup je efektívny, ale otvára právne a etické otázky týkajúce sa podmienok používania API.
Paralelne sa objavuje reasoning distillation — prenášanie nie len prediktívneho správania, ale celých chain-of-thought procesov z modelov trénovaných na dlhom uvažovaní (o1, R1, DeepSeek-V3).
5. Čo sa sleduje v praxi (metriky)
Pri destilácii nestačí sledovať iba accuracy. Každá metrika hovorí o inom kompromise:
| Metrika | Čo meria | Nástroj / formát |
|---|---|---|
| Accuracy / F1 / BLEU / ROUGE | Kvalita na danej úlohe | Task-specific benchmarky |
| pass@k | Správnosť pri kódovaní | HumanEval, LiveCodeBench |
| p50 / p95 latencia | Čas odozvy | Inference benchmark |
| Throughput | Kapacita systému | req/s alebo tok/s |
| VRAM / RAM footprint | Nároky na hardware | nvidia-smi, profiler |
| Cena na 1M tokenov | Ekonomika nasadenia | Provider kalkulačka |
| Kalibrácia (ECE) | Spoľahlivosť pravdepodobností | Reliability diagram |
| Safety / refusal rate | Bezpečnostný profil | Adversarial eval sada |
Cieľ je typicky: malý pokles kvality za výrazný zisk v rýchlosti a cene — ale konkrétne čísla závisia od produktového kontextu. Produkčné systémy v roku 2026 bežne prijímajú 2–5% pokles na hlavnom benchmarku výmenou za 5–10× nižšiu cenu inferencie.
6. Implementačné poznámky
Minimálny funkčný príklad (PyTorch, logit distillation):
import torch
import torch.nn.functional as F
def distillation_loss(student_logits, teacher_logits, labels, T=4.0, alpha=0.7):
# Distilačná strata: KL divergencia na soft targets
soft_student = F.log_softmax(student_logits / T, dim=-1)
soft_teacher = F.softmax(teacher_logits / T, dim=-1)
kl_loss = F.kl_div(soft_student, soft_teacher, reduction="batchmean") * (T ** 2)
# Supervisovaná strata: cross-entropy na ground truth
ce_loss = F.cross_entropy(student_logits, labels)
return alpha * kl_loss + (1 - alpha) * ce_loss
Pre LLM sekvenčnú destiláciu sa postup líši: teacher sa spustí raz nad tréningovými promptmi a vygeneruje odpovede (vrátane logitov pri white-box prístupe, alebo iba textov pri black-box). Potom sa student trénuje na týchto pároch prompt-odpoveď, prípadne s distilačnou stratou na token úrovni.
Praktické odporúčania:
- Začni s temperature
T=4aalpha=0.7, potom experimentuj. - Sleduj kalibráciu studenta zvlášť — soft targets nezaručujú správnu kalibráciu.
- Ak používaš feature distillation, použij projekčnú vrstvu medzi teacher a student featurami — priame napojenie funguje zriedkavo kvôli rozdielu dimenzií.
- Pre veľké LLM: ukladaj teacher logity na disk (dataset logitov), aby si nemusel teacher spúšťať viackrát.
7. Riziká a obmedzenia
- Teacher prenáša aj chyby: student môže zdediť systematické omyly alebo biasy teacher-a — vrátane hallucináций. Ak teacher halucinuje, student to nasleduje.
- Distribution shift: mimo tréningovej distribúcie môže student degradovať výraznejšie než teacher — teacher sa s neistotou vyrovná vďaka kapacite, student nie.
- Kalibrácia: pravdepodobnosti studenta nemusia byť dobre kalibrované ani po trénovaní na soft targets. Treba overovať zvlášť.
- Capacity gap: príliš veľký rozdiel medzi teacher-om a student-om vedie k slabej destilácii. Niekedy pomáha „reťazová" destilácia cez medzičlánky.
- Bezpečnosť a zarovnanie: destilácia môže oslabiť guardrails — safety tréning teacher-a sa neprenáša automaticky. Student vyžaduje vlastné safety hodnotenie.
- Právne riziká (2025–2026): destilácia z proprietárnych API modelov môže porušovať ToS a je predmetom prebiehajúcich súdnych sporov. Vždy over licenčné podmienky teacher-a pred produkčným nasadením.
8. Kedy použiť a kedy nie
Použiť:
- keď potrebuješ lacnejšiu inferenciu pri zachovaní prijateľnej kvality,
- keď cieliš na edge, on-prem alebo nízkolatenčné prostredie,
- keď máš jasné KPI pre latenciu, náklady a quality floor,
- keď chceš preniesť reasoning schopnosti veľkého modelu do menšieho.
Nepoužiť (alebo opatrne):
- pri úlohách, kde je každý percentuálny bod kvality kritický a neprijateľný na zľavu,
- keď nemáš kvalitné eval sady pre kontrolu regresií a safety profilu,
- keď teacher sám nie je stabilný, dobre kalibrovaný alebo licenčne čistý,
- keď je capacity gap príliš veľký (teacher 405B → student 1B bez medzičlánkov).
9. Quick Reference
| Parameter / pojem | Praktický význam |
|---|---|
| Teacher | Väčší model s vyššou kvalitou — zdroj znalostí |
| Student | Menší model — cieľ destilácie, optimalizovaný na cenu/latenciu |
| Soft targets | Distribúcia pravdepodobností teacher-a namiesto one-hot labelov |
Temperature T |
Reguluje „mäkkosť" distribúcie; typicky 2–10 |
alpha |
Pomer distilačnej vs. supervisovanej straty; typicky 0.5–0.9 |
| White-box distillation | Prístup k logitom a aktiváciám teacher-a |
| Black-box distillation | Iba výstupy teacher-a (text, skóre cez API) |
| Offline vs. online | Fixovaný teacher vopred vs. súbežný tréning |
| Sequence distillation | Student trénovaný na syntetických textoch od teacher-a |
| Capacity gap | Riziko: príliš veľký rozdiel kapacity = slabá destilácia |
| Povinnosť pred nasadením | Benchmark kvality + latencia + kalibrácia + safety eval |
10. Zdroje
Zakladajúce práce:
- Hinton, Vinyals, Dean (2015): Distilling the Knowledge in a Neural Network. arXiv:1503.02531
- Sanh et al. (2019): DistilBERT, a distilled version of BERT. arXiv:1910.01108
- Jiao et al. (2019): TinyBERT: Distilling BERT for Natural Language Understanding. arXiv:1909.10351
- Gou et al. (2021): Knowledge Distillation: A Survey. IJCV.
Novšie práce (2022–2026):
- Gu et al. (2023): MiniLLM: Knowledge Distillation of Large Language Models. arXiv:2306.08543 — ukázal, že minimalizácia reverznej KL divergencie funguje lepšie pre LLM než dopredná KL.
- Agarwal et al. (2024): On-Policy Distillation of Language Models. — GKD (Generalized Knowledge Distillation), kombinácia online generovania a sekvenčnej destilácie.
- DeepSeek-AI (2025): DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning. arXiv:2501.12948 — obsahuje sekciu o reasoning distilácii.
- Meta AI (2024): The Llama 3 Herd of Models. arXiv:2407.21783 — popis distilačného prístupu pri Llama 3.2 1B/3B.
Zhrnutie
Destilácia znalostí je v roku 2026 štandardnou súčasťou životného cyklu produkčného modelu — nie výnimočná optimalizácia, ale bežná prax. Technicky je kľúčová kombinácia KL distilačnej straty a supervisovanej straty s vhodne nastavenou teplotou. Pre LLM dominuje sekvenčná a token-level destilácia, čoraz častejšie z black-box teacher-ov cez syntetické dáta. O úspechu rozhoduje nie len kvalita na hlavnom benchmarku, ale aj latencia, pamäť, kalibrácia, bezpečnostný profil a — v roku 2026 čoraz viac — licenčná čistota celého procesu.