Wszystko, co musisz wiedzieć o funkcji aktywacji w ML
Opublikowany: 2022-11-08Co to jest funkcja aktywacji w uczeniu maszynowym?
Funkcje aktywacji uczenia maszynowego okazują się kluczowymi elementami modelu ML obejmującego wszystkie jego wagi i obciążenia. Są przedmiotem badań, które stale się rozwijają i odegrały znaczącą rolę w urzeczywistnianiu treningu głębokich sieci neuronowych. Zasadniczo decydują o decyzji o stymulacji neuronu. Czy informacja, którą otrzymuje neuron, odnosi się do informacji już obecnych, czy też powinna być zignorowana. Nieliniowa modyfikacja, którą stosujemy do sygnału wejściowego, nazywana jest funkcją aktywacji. Kolejna warstwa neuronów otrzymuje to zmienione wyjście jako dane wejściowe.
Ponieważ funkcje aktywacji przeprowadzają nieliniowe obliczenia na wejściu sieci neuronowej, pozwalają im uczyć się i wykonywać bardziej skomplikowane zadania bez nich, co jest zasadniczo liniowym modelem regresji w uczeniu maszynowym.
Istotne jest zrozumienie zastosowań funkcji aktywacji i rozważenie zalet i wad każdej funkcji aktywacji, aby wybrać odpowiedni typ funkcji aktywacji, który może oferować nieliniowość i precyzję w konkretnym modelu sieci neuronowej.
Zapisz się na kurs uczenia maszynowego z najlepszych uniwersytetów na świecie. Zdobywaj programy Masters, Executive PGP lub Advanced Certificate Programy, aby przyspieszyć swoją karierę.
Modele funkcji aktywacji uczenia maszynowego są zasadniczo dwojakiego rodzaju –
- Ukryte warstwy
- Warstwy wyjściowe
Ukryte warstwy
Funkcje aktywacji używane w ukrytych warstwach modeli neuronowych mają na celu zapewnienie nieliniowości wymaganej przez sieci neuronowe do symulacji interakcji nieliniowych.
Warstwy wyjściowe
Metody aktywacji stosowane w warstwach wyjściowych modeli uczenia maszynowego mają szczególny główny cel: skompresować wartość w ograniczonym zakresie, na przykład od 0 do 1.
Najpierw zrozumiemy różne typy funkcji aktywacji w uczeniu maszynowym –
1. Funkcja kroku binarnego
Klasyfikator oparty na progu, który określa, czy neuron powinien być zaangażowany, jest pierwszą rzeczą, która przychodzi na myśl, gdy mamy funkcję aktywacji. Neuron jest wyzwalany, jeśli wartość Y jest większa niż określona wartość progowa; w przeciwnym razie pozostaje uśpiony.
Często określa się go jako –
f(x) = 1, x>=0
f(x) = 0, x<0
Funkcja binarna jest prosta. Ma zastosowanie podczas opracowywania klasyfikatora binarnego. Potrzebne są oceny, które są idealną opcją, gdy musimy tylko odpowiedzieć tak lub nie dla jednej klasy, ponieważ albo włączają neuron, albo pozostawiają go zerem.
2. Funkcja liniowa
Dodatnie nachylenie może powodować wzrost szybkości wypalania wraz ze wzrostem szybkości wejściowej. Liniowe funkcje aktywacji są lepsze w zapewnianiu szerokiego zakresu aktywacji.
Funkcja jest dokładnie proporcjonalna do ważonej kombinacji neuronów lub danych wejściowych w naszej prostej funkcji aktywacji poziomej.
Neuron może działać binarnie lub nie. Możesz zauważyć, że pochodna tej funkcji jest stała, jeśli znasz metodę gradientu w uczeniu maszynowym.
Najlepsze kursy online na temat uczenia maszynowego i sztucznej inteligencji
Master of Science in Machine Learning & AI od LJMU | Program studiów podyplomowych dla kadry kierowniczej w zakresie uczenia maszynowego i sztucznej inteligencji z IIITB | |
Zaawansowany program certyfikacji w uczeniu maszynowym i NLP z IIITB | Zaawansowany program certyfikacji w uczeniu maszynowym i uczeniu głębokim z IIITB | Executive Post Graduate Program in Data Science & Machine Learning z University of Maryland |
Aby poznać wszystkie nasze kursy, odwiedź naszą stronę poniżej. | ||
Kursy na temat uczenia maszynowego |
3. Funkcja nieliniowa
ReLU
Pod względem funkcji aktywacyjnych najlepszy jest Rectified Linear Unit. Jest to najpopularniejsza i domyślna funkcja aktywacji większości problemów. Kiedy jest ujemna, ogranicza się do 0, podczas gdy staje się dodatnia, jest nieograniczona. Głęboka sieć neuronowa może skorzystać na wewnętrznej regularyzacji stworzonej przez połączenie ograniczenia i nieograniczenia. Regularyzacja tworzy rzadką reprezentację, która sprawia, że trening i wnioskowanie są efektywne obliczeniowo.
Dodatnia nieograniczoność zachowuje prostotę obliczeniową, jednocześnie przyspieszając zbieżność regresji liniowej. ReLU ma tylko jedną istotną wadę: martwe neurony. Niektóre martwe neurony wyłączały się na początku fazy treningu i ujemnie związane z 0 nigdy się nie reaktywują. Ponieważ funkcja szybko przechodzi z nieograniczonej, gdy x > 0, do ograniczonej, gdy x ≤ 0, nie można jej w sposób ciągły różnicować. Jednak w praktyce można to przezwyciężyć bez trwałego wpływu na wydajność, jeśli występuje niski wskaźnik uczenia się i znaczące negatywne nastawienie.
Plusy:
- ReLU wymaga mniej procesów matematycznych niż inne funkcje nieliniowe, dzięki czemu jest mniej kosztowna obliczeniowo i liniowa.
- Zapobiega i rozwiązuje problem znikającego gradientu.
Posługiwać się:
- Używany w modelach RNN, CNN i innych modelach uczenia maszynowego.
Różne modyfikacje ReLU –
Nieszczelny ReLU
Lepszym wariantem funkcji ReLU jest funkcja Leaky ReLU. Ponieważ gradient funkcji ReLU wynosi 0, gdzie x<0, aktywacje w tym regionie doprowadziły do śmierci neuronów, a nieszczelny ReLU okazuje się najbardziej korzystny w rozwiązaniu takich problemów. Definiujemy funkcję ReLU jako małą liniową składową x, a nie jako 0, gdzie x<0.
Można to postrzegać jako –
f(x)=ax, x<0
f(x)=x, x>=0
Plusy –
- Nieszczelne ReLU, które ma nieco ujemne nachylenie, było próbą rozwiązania problemu „umierającego ReLU” (około 0,01).
Posługiwać się -
- Używany w zadaniach wymagających gradientów, takich jak GAN.
Parametryczne ReLU
Jest to ulepszenie w stosunku do Leaky ReLU, w którym wielokrotność skalarna jest szkolona na danych, a nie jest wybierana losowo. Ponieważ model został przeszkolony przy użyciu danych, jest wrażliwy na parametr skalowania (a) i różnie zlicza w zależności od wartości a.
Posługiwać się -
- Kiedy Leaky ReLU ulegnie awarii, parametryczna jednostka ReLU może zostać wykorzystana do rozwiązania problemu martwych neuronów.
GeLU (jednostka liniowa błędu Gaussa)
Najnowszym dzieckiem na rynku i niekwestionowanym zwycięzcą zadań związanych z NLP (Natural Language Processing) jest jednostka liniowa błędu Gaussa, która jest wykorzystywana w systemach opartych na transformatorach i algorytmach SOTA, takich jak GPT-3 i BERT. GeLU łączy ReLU, Zone Out i Dropout (które losowo zeruje neurony w przypadku rzadkiej sieci). ReLU działa płynniej dzięki GeLU, ponieważ waży dane wejściowe według percentyla, a nie bramek.
Posługiwać się -
- Widzenie komputerowe, NLP, rozpoznawanie mowy
ELU (wykładnicza jednostka liniowa)
Wprowadzona w 2015 r. ELU jest nieograniczona dodatnio i wykorzystuje krzywą logarytmiczną dla wartości ujemnych. W porównaniu do Leaky i Parameter ReLU, ta strategia rozwiązywania problemu martwego neuronu jest nieco inna. W przeciwieństwie do ReLU, wartości ujemne stopniowo wygładzają się i zostają ograniczone, aby zapobiec martwym neuronom. Jest to jednak drogie, ponieważ do opisania ujemnego nachylenia używa się funkcji wykładniczej. Podczas korzystania z mniej niż idealnej techniki początkowej funkcja wykładnicza czasami powoduje rozszerzający się gradient.
Śmigać
Małe ujemne wartości Swish, które po raz pierwszy wprowadzono w 2017 r., są nadal pomocne w uchwyceniu bazowych formacji, podczas gdy duże ujemne wartości będą miały pochodną 0. Swish może z łatwością zastąpić ReLU ze względu na swoją intrygującą formę.
Plusy –
- Rezultatem jest obejście między funkcją Sigmoid a RELU, które pomaga znormalizować wynik.
- Posiada umiejętność radzenia sobie z Problemem Znikającego Gradientu.
Posługiwać się -
- Pod względem kategoryzacji obrazu i tłumaczenia maszynowego jest na równi z ReLU, a nawet przewyższa.
Umiejętności uczenia maszynowego na żądanie
Kursy sztucznej inteligencji | Kursy Tableau |
Kursy NLP | Kursy głębokiego uczenia się |
4. Funkcja aktywacji Softmax
Podobnie jak funkcje aktywacji sigmoidalnej, softmax jest używany głównie w ostatniej warstwie lub warstwie wyjściowej do podejmowania decyzji. Softmax po prostu przypisuje wartości do zmiennych wejściowych na podstawie ich wag, a suma tych wag ostatecznie równa się jeden.
Plusy –
- W porównaniu z funkcją RELU, zbieżność gradientu jest płynniejsza w Softmax.
- Jest w stanie poradzić sobie z problemem znikającego gradientu.
Posługiwać się -
- Klasyfikacja wieloklasowa i wielomianowa.
5. Sigmoid
Funkcja sigmoidalna w uczeniu maszynowym jest jedną z najpopularniejszych funkcji aktywacji. Równanie to –
f(x)=1/(1+e^-x)
Te funkcje aktywacji mają tę zaletę, że redukują dane wejściowe do wartości z zakresu od 0 do 1, co czyni je idealnymi do modelowania prawdopodobieństwa. Po zastosowaniu do głębokiej sieci neuronowej funkcja staje się różniczkowalna, ale szybko się nasyca z powodu ograniczenia, co skutkuje malejącym gradientem. Koszt obliczeń wykładniczych wzrasta, gdy trzeba wytrenować model z setkami warstw i neuronów.
Pochodna jest ograniczona między -3 a 3, podczas gdy funkcja jest ograniczona między 0 a 1. Nie jest to idealne rozwiązanie do uczenia warstw ukrytych, ponieważ wyjście nie jest symetryczne wokół zera, co spowodowałoby, że wszystkie neurony przyjmą ten sam znak podczas uczenia .
Plusy –
- Zapewnia płynny gradient podczas zbieżności.
- Często daje dokładną klasyfikację predykcji z 0 i 1.
Posługiwać się -
- Funkcja Sigmoid w uczeniu maszynowym jest zwykle wykorzystywana w modelach klasyfikacji binarnej i regresji logistycznej w warstwie wyjściowej.
Popularne blogi dotyczące uczenia maszynowego i sztucznej inteligencji
IoT: historia, teraźniejszość i przyszłość | Samouczek uczenia maszynowego: Naucz się ML | Co to jest algorytm? Proste i łatwe |
Wynagrodzenie inżyniera robotyki w Indiach: wszystkie role | Dzień z życia inżyniera uczenia maszynowego: czym się zajmują? | Czym jest IoT (Internet Rzeczy) |
Permutacja a kombinacja: różnica między permutacją a kombinacją | 7 najważniejszych trendów w sztucznej inteligencji i uczeniu maszynowym | Uczenie maszynowe z R: wszystko, co musisz wiedzieć |
6. Tanh – funkcja aktywacji stycznej hiperbolicznej
Podobnie jak funkcja sigmoidalna w uczeniu maszynowym , ta funkcja aktywacji służy do prognozowania lub rozróżniania dwóch klas, z wyjątkiem tego, że przenosi wyłącznie ujemne dane wejściowe na ujemne wielkości i ma zakres od -1 do 1.
tanh(x)=2sigmoid(2x)-1
lub
tanh(x)=2/(1+e^(-2x)) -1
Zasadniczo rozwiązuje nasz problem z wartościami mającymi ten sam znak. Inne cechy są identyczne z cechami funkcji sigmoidalnej. W każdym momencie jest ciągła i wyraźna.
Plusy –
- W przeciwieństwie do esicy ma funkcję zerowo-centryczną.
- Ta funkcja ma również płynny gradient.
Chociaż funkcje Tahna i Sigmoid w uczeniu maszynowym mogą być używane w warstwach ukrytych ze względu na ich dodatnie ograniczenia, głębokie sieci neuronowe nie mogą ich używać ze względu na nasycenie treningowe i zanikające gradienty.
Rozpocznij karierę w uczeniu maszynowym od odpowiedniego kursu
Chcesz zagłębić się w funkcje aktywacji i ich pomoc w ulepszaniu uczenia maszynowego? Zapoznaj się z omówieniem uczenia maszynowego ze wszystkimi szczegółami, takimi jak sztuczna inteligencja, głębokie uczenie, NLP i uczenie wzmacniające, dzięki uznanemu przez WES kursowi UpGrad Masters of Science in Machine Learning and AI . Ten kurs zapewnia praktyczne doświadczenia podczas pracy nad ponad 12 projektami, prowadzenia badań, zajęć na wysokim poziomie kodowania i coachingu z najlepszymi profesorami.
Zarejestruj się, aby dowiedzieć się więcej!
Wniosek
Operacje krytyczne, znane jako funkcje aktywacji, zmieniają dane wejściowe w sposób nieliniowy, umożliwiając mu zrozumienie i wykonanie bardziej skomplikowanych zadań. Zajęliśmy się najpopularniejszymi funkcjami aktywacji i ich zastosowaniami, które mogą mieć zastosowanie; te funkcje aktywacji zapewniają tę samą funkcję, ale są stosowane w różnych okolicznościach.
Jak możesz zdecydować, która funkcja aktywacji jest najlepsza?
Wybór funkcji aktywacji to złożona decyzja całkowicie zależna od problemu. Możesz jednak zacząć od funkcji sigmoid, jeśli dopiero zaczynasz korzystać z uczenia maszynowego, zanim przejdziesz do innych.
Czy funkcja aktywacji powinna być liniowa czy nieliniowa?
Bez względu na to, jak skomplikowany jest projekt, liniowa funkcja aktywacji jest skuteczna tylko do głębokości jednej warstwy. Stąd warstwa aktywacyjna nie może być liniowa. Dodatkowo, dzisiejszy świat i jego wyzwania są bardzo nieliniowe.
Jakiej funkcji aktywacji można się łatwo nauczyć?
Tanh. Rozszerzając zakres tak, aby obejmował -1 do 1, rozwiązuje wady funkcji aktywacji sigmoidalnej. Powoduje to zerowe wyśrodkowanie, co powoduje, że średnia wag warstwy ukrytej zbliża się do zera. W rezultacie nauka staje się szybsza i łatwiejsza.