Spis treści
ReLU
Wygląd
Funkcja ReLU, prostowana jednostka liniowa[1] (ang. rectified linear unit), jednostronnie obcięta funkcja liniowa – funkcja aktywacji zdefiniowana jako nieujemna część jej argumentu[2][3]:

ReLU jest jedną z najpopularniejszych funkcji aktywacji sztucznych sieci neuronowych[4] i znajduje zastosowanie w komputerowym widzeniu[5] przy użyciu głębokich sieci neuronowych[6][7][8].
Zalety
[edytuj | edytuj kod]Do zalet funkcji ReLU należą:
- Rzadka aktywacja: w sieci z losowo zainicjowanymi wagami tylko około 50% neuronów w warstwach ukrytych jest aktywowanych (tzn. ma niezerową wartość wyjściową)[9].
- Lepsza propagacja gradientu: mniejsze ryzyko wystąpienia problemu zanikającego gradientu w porównaniu z sigmoidalnymi funkcjami aktywacji, które nasycają się w obu kierunkach[5][9].
- Wydajność obliczeniowa[10]: funkcja jest bardzo prosta obliczeniowo – wymaga jedynie porównania z zerem i operacji dodawania.
- Niezmienność ze względu na skalę (jednorodność)[11]:
- .
Potencjalne problemy
[edytuj | edytuj kod]Możliwe wady funkcji ReLU to między innymi:
- Nieróżniczkowalność w zerze: funkcja jest różniczkowalna w każdym innym punkcie, jednak w punkcie jej pochodna jest niezdefiniowana[12]. W praktyce można umownie przyjąć, że pochodna w tym punkcie wynosi 0 lub 1.
- Wyjście nie jest skoncentrowane wokół zera: wyjścia ReLU są zawsze nieujemne. Może to utrudnić sieci uczenie się podczas propagacji wstecznej, ponieważ aktualizacje gradientu mają tendencję do przesuwania wag w jednym kierunku (dodatnim lub ujemnym)[13]. Problem ten można częściowo rozwiązać za pomocą normalizacji wsadowej[14].
- Funkcja jest nieograniczona z góry: wartości ReLU mogą rosnąć bez ograniczeń, co w niektórych przypadkach może prowadzić do problemów, takich jak eksplodujący gradient[14].
- Nadmiarowość parametryzacji: z powodu niezmienności ze względu na skalę, sieć neuronowa może uzyskać identyczną funkcję wyjściową poprzez przeskalowanie wag i biasów przed aktywacją ReLU o czynnik , a wag warstwy następnej o czynnik [15].
- Problem „umierającego ReLU” (ang. „Dying ReLU”): neurony z aktywacją ReLU mogą zostać zepchnięte do stanów, w których stają się nieaktywne dla niemal wszystkich danych wejściowych[16]. W tym stanie żadne gradienty nie przepływają wstecz przez neuron, więc utyka on w wiecznie nieaktywnym stanie („umiera”). Jest to forma problemu zanikającego gradientu. W niektórych przypadkach duża liczba neuronów w sieci może utknąć w martwym stanie, skutecznie zmniejszając pojemność modelu i potencjalnie nawet zatrzymując proces uczenia. Problem ten pojawia się zazwyczaj, gdy współczynnik uczenia jest zbyt wysoki. Można go złagodzić, stosując warianty takie jak „Leaky ReLU”, gdzie dla przypisuje się niewielkie dodatnie nachylenie. W zależności od zadania może to jednak wiązać się ze spadkiem ogólnej wydajności modelu.
Zobacz też
[edytuj | edytuj kod]Przypisy
[edytuj | edytuj kod]- ↑ Aurélien Géron , Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow, Krzysztof Sawka (tłum.), Wydanie II, aktualizacja do modułu TensorFlow 2, Gliwice: Helion, 2020, ISBN 978-83-283-6002-0 [dostęp 2025-04-09] (pol.).
- ↑ Jason Brownlee , A Gentle Introduction to the Rectified Linear Unit (ReLU) [online], MachineLearningMastery.com, 8 stycznia 2019 [dostęp 2025-04-08] (ang.).
- ↑ A Practical Guide to ReLU [online], medium.com (ang.).
- ↑ Prajit Ramachandran , Barret Zoph , Quoc V. Le , Searching for Activation Functions, arXiv, 27 października 2017, DOI: 10.48550/arXiv.1710.05941 [dostęp 2025-04-08] .
- ↑ a b Xavier Glorot , Antoine Bordes , Yoshua Bengio , Deep sparse rectifier neural networks [online], 2021 .
- ↑ D. Hansel , C. van Vreeswijk , How noise contributes to contrast invariance of orientation tuning in cat visual cortex, „The Journal of Neuroscience: The Official Journal of the Society for Neuroscience”, 22 (12), 2002, s. 5118–5128, DOI: 10.1523/JNEUROSCI.22-12-05118.2002, ISSN 1529-2401, PMID: 12077207, PMCID: PMC6757721 [dostęp 2025-04-08] .
- ↑ Jonathan Kadmon , Haim Sompolinsky , Transition to chaos in random neuronal networks, arXiv, 26 sierpnia 2015, DOI: 10.48550/arXiv.1508.06486 [dostęp 2025-04-08] .
- ↑ Rainer Engelken , Fred Wolf , L.F. Abbott , Lyapunov spectra of chaotic recurrent neural networks, arXiv, 3 czerwca 2020, DOI: 10.48550/arXiv.2006.02427 [dostęp 2025-04-08] .
- ↑ a b Xavier Glorot , Antoine Bordes , Yoshua Bengio , Deep Sparse Rectifier Neural Networks, JMLR Workshop and Conference Proceedings, 14 czerwca 2011, s. 315–323 [dostęp 2025-06-08] (ang.).
- ↑ Tomasz Szandała , Review and Comparison of Commonly Used Activation Functions for Deep Neural Networks, arXiv, 15 października 2020, DOI: 10.48550/arXiv.2010.09458 [dostęp 2025-06-08] .
- ↑ Vinod Nair , Geoffrey E. Hinton , Rectified linear units improve restricted boltzmann machines, ICML'10, Madison, WI, USA: Omnipress, 21 czerwca 2010, s. 807–814, DOI: 10.5555/3104322.3104425, ISBN 978-1-60558-907-7 [dostęp 2025-06-08] .
- ↑ The Multilinear Structure of ReLU Networks [online], ar5iv [dostęp 2025-06-08] (ang.).
- ↑ Yuan Zhou , Dandan Li , Shuwei Huo , Sun-Yuan Kung , Soft-Root-Sign Activation Function [online], arXiv.org, 1 marca 2020 [dostęp 2025-06-08] (ang.).
- ↑ a b Sergey Ioffe , Christian Szegedy , Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift, arXiv, 2 marca 2015, DOI: 10.48550/arXiv.1502.03167 [dostęp 2025-06-08] .
- ↑ Vijay Badrinarayanan , Bamdev Mishra , Roberto Cipolla , Understanding symmetries in deep networks [online], arXiv.org, 3 listopada 2015 [dostęp 2025-06-08] (ang.).
- ↑ Lu Lu , Yeonjong Shin , Yanhui Su , George Em Karniadakis , Dying ReLU and Initialization: Theory and Numerical Examples [online], arXiv.org, 15 marca 2019 [dostęp 2025-06-08] (ang.).