Hypernetwork je architektura hlubokého učení, ve které jedna neuronová síť (hyperstíť) generuje váhy (parametry) pro jinou neuronovou síť (hlavní neboli cílovou síť).
Zatímco u běžných modelů jsou váhy pevně dané po skončení trénování, u hyperstítí jsou váhy dynamické – mění se v závislosti na vstupu, který hyperstíť dostane. Tento koncept poprvé popularizoval David Ha a kol. v roce 2016.
V klasickém přístupu se učíme parametry $\theta$ tak, aby minimalizovaly chybu. U hyperstítí se učíme parametry $\phi$ pro hyperstíť $H$, která pak vypočítá váhy pro hlavní síť $M$: $$\theta = H(x, \phi)$$ Kde $x$ může být kontextová informace, instrukce nebo specifický styl.
V oblasti AI generování (umění) se hyperstítě používají jako lehké doplňky k velkým modelům.
Hyperstítě umožňují modelům rychle se přizpůsobit novým úlohám. Pokud se změní podmínky (např. jiný jazyk nebo jiný senzor u robota), hyperstíť vygeneruje nové, vhodnější váhy pro hlavní síť „za běhu“.
Místo ukládání milionů parametrů velké sítě stačí uložit parametry menší hyperstítě, která dokáže váhy velké sítě kdykoliv zrekonstruovat.
| Metoda | Změna vah | Výhoda | Nevýhoda |
|---|---|---|---|
| Fine-tuning | Mění se přímo váhy hlavního modelu. | Nejvyšší přesnost. | Nutnost ukládat celou kopii velkého modelu. |
| LoRA | Přidávají se malé adaptéry k vrstvám. | Extrémně efektivní a rychlé. | Pevně integrované do architektury. |
| Hypernetworks | Váhy jsou generovány externí sítí. | Velká flexibilita a dynamika. | Náročnější na stabilitu trénování. |
Hyperstítě směřují k tzv. podmíněným výpočtům (Conditional Computation). V budoucnu by velké modely v cloudech typu GCP nemusely běžet celé, ale hyperstíť by dynamicky upravovala jejich strukturu podle toho, co uživatel právě potřebuje, čímž by se drasticky snížila energetická náročnost výpočtů.
— Související pojmy: Hluboké učení, ChatGPT, Vertex AI, Gemini