Topologie a učení sítí
Topologie sítí a druhy učení
Otázka „jakou neuronovou síť mám použít" má v drtivé většině případů odpověď, která vyplyne z jediné věci: jaký tvar mají tvoje data. Obrázek, sekvence, tabulka. Nic jiného rozhodovat nemusíš, protože pro každý z těch tvarů existuje topologie, která na něj sedí.
Druhá otázka - „jak se to učí" - má tři odpovědi a rozhoduje o ní jiná věc: co k datům máš. Označení, nic, nebo odměnu za chování.
Tahle stránka je rozcestník. Předpokládá to umělý neuron a je dobré mít přečtené MLP, protože dopředná síť je referenční bod pro všechno ostatní. Konkrétní architektury mají vlastní stránky.
Pět topologií
Dopředná síť (feed-forward). Signál postupuje pouze vpřed, mezi vrstvami. Nejběžnější topologie - patří sem perceptron i MLP. Nemá žádnou paměť: tentýž vstup dá vždycky tentýž výstup, bez ohledu na to, co bylo předtím.
Rekurentní síť (recurrent). Obsahuje zpětné vazby, takže výstup neuronu se vrací zpátky na vstup. Vhodná pro zpracování sekvencí - text, řeč, časové řady. Příkladem je Hopfieldova síť (symetrické váhy wij = wji) nebo Boltzmannův stroj (pravděpodobnostní přechody stavů). Podrobně u rekurentních sítí a LSTM.
Síť s pevnými váhami. LAM, BAM, Hopfield. Asociativní paměti, které se neučí - váhy se spočítají jednorázově ze vzorů, které si má síť pamatovat. Dnes historická kategorie, ale ukazuje, že „neuronová síť" nemusí znamenat „trénování".
Konvoluční síť (CNN). Specializovaná dopředná síť pro obrazová data. Viz konvoluční sítě.
LSTM a GRU. Rekurentní sítě s hradlovacím mechanizmem, který řeší problém dlouhodobých závislostí. Viz rekurentní sítě a LSTM.
Souhrn i s tím, jak se která učí:
| Skupina | Topologie | Učení |
|---|---|---|
| Pevné váhy | LAM, Hopfield, BAM | bez učení |
| S učitelem | Perceptron, MLP, TDNN | supervised |
| Bez učitele | ART1/2, Kohonen (SOM) | unsupervised |
| Obrazová data | CNN, ResNet | supervised |
| Sekvence | RNN, LSTM, GRU | supervised |
Ta tabulka je nejužitečnější věc na stránce, protože z ní jde přečíst rozhodnutí. Máš obrázky a označení? Řádek CNN. Máš sekvenci a označení? Řádek LSTM. Nemáš označení? Řádek Kohonen.
Tři druhy učení
Učení znamená nastavení vah tak, aby síť dávala na trénovacích datech správné výstupy.
Učení s učitelem (supervised). Ke každému vstupu je znám požadovaný výstup. Příklady: perceptron, MLP, CNN.
Učení bez učitele (unsupervised). Síť hledá strukturu v datech samostatně. Příklady: Kohonenovy mapy, ART.
Posilované učení (reinforcement). Síť je odměňována nebo trestána za své akce v prostředí. Tohle je přesně rámec učícího se agenta - odměna je výstup kritiky, ne senzoru.
Rozdíl mezi těmi třemi je v tom, co dostaneš zpátky:
| Druh učení | Zpětná vazba | Kdy ji dostaneš |
|---|---|---|
| S učitelem | správná odpověď | ke každému vzorku hned |
| Bez učitele | žádná | nikdy |
| Posilované | číslo (odměna) | často se zpožděním, po mnoha akcích |
To zpoždění u posilovaného učení je celý jeho problém. Když prohraješ šachovou partii, víš, že jsi něco zkazil, ale ne který ze čtyřiceti tahů to byl. Tomu se říká problém přiřazení zásluh a je to důvod, proč je posilované učení výrazně těžší než ostatní dva druhy.
Hebbovo pravidlo
Nejjednodušší pravidlo učení bez učitele (Hebb, 1949): posiluje spojení mezi neurony, které jsou aktivní současně.
wij(t + 1) = wij(t) + α · yi · yj
kde α je rychlost učení a yi, yj aktivity propojených neuronů.
Ve vzorci není požadovaný výstup a to je definiční znak učení bez učitele. Pravidlo nesleduje správnost, jen souběžnost.
Podrobněji je Hebbovo pravidlo u umělého neuronu.
Jak si vybrat
| Data | Máš označení | Topologie |
|---|---|---|
| Tabulka čísel | ano | MLP, nebo rovnou klasické metody |
| Obrázky | ano | CNN |
| Text, řeč, časová řada | ano | LSTM/GRU, dnes spíš Transformer |
| Cokoliv | ne | SOM, shlukování |
| Prostředí, ve kterém agent jedná | odměna | posilované učení |
Jedno doporučení, které se běžně neříká, ale platí: u tabulkových dat zkus nejdřív náhodný les nebo gradient boosting, ne neuronovou síť. Na strukturovaných tabulkách je porážejí konzistentně a jsou rychlejší a interpretovatelnější. Neuronové sítě vyhrávají tam, kde jsou data nestrukturovaná - obraz, zvuk, text.
Co si odnést
Topologii určuje tvar dat. Obrázek → CNN, sekvence → LSTM, tabulka → MLP.
Druh učení určuje to, co k datům máš. Označení, nic, nebo odměnu.
Dopředná síť nemá paměť. Tentýž vstup dá vždycky tentýž výstup.
Rekurentní síť má zpětnou vazbu, a proto umí sekvence.
Sítě s pevnými váhami se neučí. Váhy se spočítají jednou ze vzorů.
Posilované učení má zpožděnou odměnu a s ní problém přiřazení zásluh.
Kam dál
- MLP a backpropagation - jak se učí ta nejběžnější topologie
- Konvoluční sítě - pro obrazová data
- Rekurentní sítě a LSTM - pro sekvence
- Kohonenovy mapy - učení bez učitele se zachováním topologie
- Inteligentní agenti - rámec, do kterého patří posilované učení