Wprowadzenie do algorytmów głębokiego uczenia się
Głębokie uczenie się jest krokiem w kierunku zbliżenia się do sztucznej inteligencji, która może podejmować decyzje takie jak ludzki mózg, tj. Mieć zdolność uczenia się metodą prób i błędów, tak jak ludzie. Ludzki mózg ma miliardy neuronów (około 86 miliardów; źródło: Wikipedia). W przypadku sztucznych neuronów głębokie uczenie się pomaga również naśladować ludzki umysł. Aby przetwarzać informacje i podejmować decyzje za pośrednictwem sztucznych sieci neuronowych, istnieją pewne algorytmy, zwane algorytmami głębokiego uczenia. Algorytmy uczą się stopniowo w każdej warstwie, tj. większa wartość dodawana jest z funkcji w następnej warstwie. Model dogłębnego uczenia się może się nakładać, jeśli dane są małe, niepełne lub zbyt proste. Algorytmy głębokiego uczenia są skuteczne, gdy dane są ogromne.
Algorytmy głębokiego uczenia się
Aby stworzyć model głębokiego uczenia się, należy napisać kilka algorytmów, połączyć je ze sobą i stworzyć sieć neuronów. Głębokie uczenie się wiąże się z wysokimi kosztami obliczeniowymi. Aby wspomóc modele głębokiego uczenia, istnieją platformy głębokiego uczenia, takie jak przepływ Tensor, Py-Torch, Chainer, Keras itp. W głębokim uczeniu próbowaliśmy odtworzyć ludzką sieć neuronową za pomocą sztucznej sieci neuronowej, ludzki neuron nazywa się perceptronem w model głębokiego uczenia się. Łączymy te jednostki perceptronów razem, aby utworzyć sieć neuronową, ma ona 3 sekcje:
- Warstwa wejściowa
- Ukryte warstwy
- Warstwa wyjściowa
Perceptron ma węzły wejściowe (dendryty w ludzkim mózgu), funkcję uruchamiającą, aby podjąć małą decyzję i węzły wyjściowe (akson w ludzkim mózgu). Zobaczymy, jak działa jeden perceptron, połączenie ich razem stworzy model głębokiego uczenia się. Informacje wejściowe (liczba zmiennych / cech wejściowych) są przypisywane do pewnego ciężaru i podawane do funkcji aktywacji. Funkcja aktywacji podejmuje decyzję i wysyła sygnał wyjściowy. Wyjście tego perceptronu zostanie wprowadzone do innych neuronów. Po przetworzeniu partii z każdym neuronem obliczany jest błąd propagacji wstecznej za pomocą funkcji kosztu / entropii krzyżowej. W ten sposób wagi wejściowe są ponownie przypisywane i cały proces jest kontynuowany, dopóki entropia krzyżowa nie spełni warunku.
Mamy różne funkcje uruchamiające, takie jak funkcje Sigmoid, funkcja stycznej hiperbolicznej, Rectified Linear Unit (ReLU), aby podjąć niewielką decyzję. Model głębokiego uczenia się wymaga ogromnej ilości danych, aby zbudować dobry model. Ogólnie model z więcej niż 3 ukrytymi warstwami jest traktowany jako głęboka sieć neuronowa. Zasadniczo Głębokie uczenie się to zestaw neuronów z pewną liczbą parametrów zdefiniowanych dla każdej warstwy. Do stworzenia modelu głębokiego uczenia popularne architektury to RNN, CNN itp.
Metody architektoniczne dla algorytmów głębokiego uczenia się
Aby zbudować tę architekturę, stosuje się następujące algorytmy:
1. Rozmnażanie wsteczne
W tym algorytmie obliczamy pochodne cząstkowe. Zasadniczo metoda optymalizacji gradientu, pochodne (gradienty) są obliczane przy każdej iteracji. W głębokim uczeniu funkcje nie są proste, są one kompozycją różnych funkcji. W takim przypadku trudno jest obliczyć gradienty, dlatego do obliczenia pochodnych używamy przybliżonego zróżnicowania. Im większa liczba parametrów, tym droższe będzie przybliżone zróżnicowanie.
2. Stochastyczne zejście gradientu
W zejściu gradientowym celem jest znalezienie globalnych minimów lub optymalnego rozwiązania. Ale aby to osiągnąć, musimy również wziąć pod uwagę lokalne minimalne rozwiązania (niepożądane). Jeśli funkcja celu jest funkcją wypukłą, łatwo jest znaleźć globalne minima. Początkowa wartość funkcji i szybkość uczenia się decydują o parametrach w celu znalezienia minimów globalnych. Można to łatwo zrozumieć, biorąc pod uwagę rzekę płynącą ze szczytu góry i poszukującą pogórza (minima globalne). Ale na drodze będą pewne wzloty i upadki (lokalne minima), których należy unikać. Punkt i prędkość rzeki (wartość początkowa i szybkość uczenia się w naszym przypadku) są decydującymi czynnikami do znalezienia minimów globalnych.
3. Wskaźnik uczenia się
Tempo uczenia się jest podobne do prędkości rzeki, może skrócić czas szkolenia i zwiększyć wydajność. Ogólnie rzecz biorąc, aby nauczyć się dowolnej techniki / sportu, na początku wskaźnik uczenia się jest stosunkowo wysoki, niż na końcu, gdy trzeba go opanować. Po etapie pośrednim nauka będzie powolna, nacisk zostanie położony na dopracowanie. To samo dotyczy głębokiego uczenia się, zbyt dużym zmianom przeciwdziała wyższy wskaźnik uczenia się i powolne zmniejszanie wskaźnika uczenia się w celu późniejszego dostrojenia.
4. Normalizacja partii
W głębokim uczeniu początkowa wartość masy (wybierana losowo) i uczeniu się, stawka jest definiowana dla mini-partii. Na początku istniałoby wiele wartości odstających, a podczas propagacji wstecznej wartości odstające muszą zostać skompensowane, aby obliczyć wagi, aby uzyskać wynik. Ta kompensacja skutkuje dodatkowymi epokami. Aby tego uniknąć, używamy normalizacji wsadowej.
5. Wypadnij
W trakcie głębokiego uczenia się na ogół napotykamy problem nadmiernego dopasowania. Nadmierne dopasowanie w dużych sieciach z kilkoma parametrami utrudnia przewidywanie danych testowych. Aby tego uniknąć, używamy metody rezygnacji, która upuszcza losowe jednostki podczas treningu, tworząc różne „cienkie sieci”. Podczas testowania prognozy tych cienkich sieci są uśredniane, co pomaga uniknąć nadmiernego dopasowania.
6. Worek słów
Używamy ciągłego worka słów do przewidywania następnego słowa. Na przykład widzimy w e-mailu pisanie, że autosugestia wykonania zdania jest częścią NLP. Odbywa się to przez rozważenie wielu zdań i dla określonego słowa otaczającego słowa, które są przechwytywane. Te specyficzne słowa i otaczające słowa są podawane do sieci neuronowej. Po modelu treningowym może przewidzieć określone słowo na podstawie słów otaczających.
7. Długotrwała pamięć krótkotrwała
LSTM jest bardzo przydatny w przypadku problemów z przewidywaniem sekwencji, takich jak tłumaczenie języka, przewidywanie sprzedaży i znajdowanie ceny akcji. LSTM ma przewagę nad innymi technikami, ponieważ jest w stanie uwzględnić wcześniejsze dane. LSTM dokonuje modyfikacji według mechanizmu stanów komórek. Zapamiętuje rzeczy. Trzy główne aspekty LSTM wyróżniają go spośród innych technik głębokiego uczenia się. Po pierwsze, kiedy neuron powinien mieć dane wejściowe, po drugie, kiedy należy zapamiętać poprzednie dane i co należy zapomnieć, a po trzecie, kiedy przekazać dane wyjściowe.
Wniosek
Model głębokiego uczenia się jest krokiem w kierunku replikacji ludzkiego umysłu. Zamiast neuronów biologicznych głębokie uczenie wykorzystuje sztuczną sieć neuronową. Głębokie uczenie się wiąże się z wysokimi kosztami obliczeniowymi, które można zmniejszyć za pomocą struktur uczenia głębokiego, takich jak przepływ Tensor i Py-Torch itp. RNN, CNN to metody architektoniczne modeli głębokiego uczenia. W tym artykule omówiono różne algorytmy głębokiego uczenia się stosowane w tych architekturach.
Polecane artykuły
Jest to przewodnik po algorytmach głębokiego uczenia się. Tutaj omawiamy metody architektoniczne algorytmów głębokiego uczenia się wraz z warstwami. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Wprowadzenie do algorytmów uczenia maszynowego
- 14 najważniejszych zastosowań uczenia maszynowego
- Sztuczna inteligencja a uczenie maszynowe a uczenie głębokie
- Top 13 Przydatne pogłębione uczenie się Wywiady Pytania i odpowiedzi