ReLU – Rectified Linear Unit
Čo je ReLU?
ReLU (Rectified Linear Unit) je aktivačná funkcia používaná v umelých neurónových sieťach. Jej princíp je jednoduchý – pre kladné vstupné hodnoty vracia rovnakú hodnotu a záporné hodnoty transformuje na nulu. Táto jednoduchosť prináša pri trénovaní hlbokých neurónových sietí v oblasti deep learning výrazné výhody.
Matematický princíp ReLU
Funkcia ReLU je definovaná vzorcom f(x) = max(0, x). To znamená, že ak je vstup x kladný, výstup je rovný x. Ak je vstup záporný alebo nulový, výstup je nula. Táto nelinárnna transformácia umožňuje neurónovým sieťam modelovať komplexné vzťahy medzi dátami.
Oproti starším aktivačným funkciám ako sigmoid alebo tanh má ReLU výhodu v tom, že netrpí problémom miznúceho gradientu (vanishing gradient) pri kladných hodnotách. Gradient funkcie ReLU je buď 0 (pre záporné vstupy) alebo 1 (pre kladné vstupy), čo zjednodušuje a zrýchľuje proces učenia.
Výhody a obmedzenia ReLU
Medzi hlavné výhody ReLU patrí výpočtová efektívnosť – výpočet maxima dvoch čísel je rýchlejší ako exponenciálne operácie potrebné pre sigmoid. Siete s ReLU aktiváciou tiež rýchlejšie konvergujú počas trénovania.
ReLU má však aj obmedzenia. Najznámejším je problém „mŕtvych neurónov“ (dying ReLU), keď neurón začne produkovať len nulové výstupy a prestane sa učiť. Tento jav nastáva, keď sa váhy nastavia tak, že vstup do neurónu je trvalo záporný.
…ReLU sa stala dominantnou aktivačnou funkciou v deep learning až po roku 2012, keď sieť AlexNet s touto funkciou vyhrala súťaž ImageNet?
Varianty ReLU
Na riešenie problému mŕtvych neurónov vzniklo niekoľko modifikácií. Leaky ReLU prepúšťa malý záporný gradient (napríklad 0,01x) namiesto nuly. Parametric ReLU (PReLU) sa tento koeficient učí počas trénovania. ELU (Exponential Linear Unit) používa exponenciálnu funkciu pre záporné hodnoty.
Výber konkrétneho variantu závisí od typu úlohy a architektúry siete. V konvolučných sieťach pre spracovanie obrazu sa štandardná ReLU používa najčastejšie, zatiaľ čo v niektorých generatívnych modeloch sa osvedčili jej modifikácie.
Použitie ReLU v praxi
ReLU je štandardnou voľbou pre skryté vrstvy v hlbokých neurónových sieťach. Používa sa v konvolučných sieťach pre rozpoznávanie obrazu, rekurentných sieťach pre spracovanie sekvencií aj v transformerových architektúrach. Frameworky ako TensorFlow a PyTorch poskytujú ReLU ako základnú aktivačnú funkciu.
Zdroje a odkazy
Použité zdroje:
- Deep Learning Book – Deep Learning: https://www.deeplearningbook.org/front_matter.pdf
Odporúčané zdroje:
- PyTorch Documentation – prehľad aktivačných funkcií: https://pytorch.org
Uvedené informácie sú orientačné a môžu sa líšiť v závislosti od verzie, implementácie a prostredia.