Od lat głębokie uczenie się trafia na pierwsze strony gazet w technologii. I łatwo zrozumieć, dlaczego.
Ta gałąź sztucznej inteligencji przekształca sektory, od opieki zdrowotnej przez bankowość po transport, umożliwiając wcześniej nie do pomyślenia postępy.
Głębokie uczenie się opiera się na zestawie zaawansowanych algorytmów, które uczą się wyodrębniać i przewidywać skomplikowane wzorce z ogromnych ilości danych.
W tym poście przyjrzymy się 15 najlepszym algorytmom głębokiego uczenia, od konwolucyjnych sieci neuronowych, przez generatywne sieci przeciwstawne, po sieci pamięci długookresowej.
Ten post dostarczy istotnych informacji na temat tego, czy jesteś początkujący lub ekspert w głębokim uczeniu się.
1. Sieci transformatorowe
Sieci transformatorowe uległy transformacji wizja komputerowa i aplikacji przetwarzających język naturalny (NLP). Analizują przychodzące dane i wykorzystują procesy uwagi, aby uchwycić długofalowe relacje. Dzięki temu są szybsze niż konwencjonalne modele sekwencyjne.
Sieci transformatorowe zostały po raz pierwszy opisane w publikacji „Attention Is All You Need” autorstwa Vaswani i in.
Składają się z kodera i dekodera (2017). Model transformatora wykazał wydajność w różnych zastosowaniach NLP, w tym Analiza nastrojów, kategoryzacja tekstu i tłumaczenie maszynowe.
Modele oparte na transformatorach mogą być również wykorzystywane w systemach wizyjnych dla aplikacji. Potrafią rozpoznawać obiekty i podpisywać obrazy.
2. Długoterminowe sieci pamięci (LSTM)
Sieci pamięci długookresowej (LSTM) są formą sieci neuronowe specjalnie zbudowany do obsługi sekwencyjnego wprowadzania danych. Nazywa się je „długookresowymi”, ponieważ potrafią przypomnieć sobie wiedzę z bardzo dawna, jednocześnie zapominając o zbędnych informacjach.
LSTM działają przez pewne „bramki”, które regulują przepływ informacji w sieci. W zależności od tego, czy informacja zostanie uznana za znaczącą, czy nie, bramy te mogą ją wpuścić lub uniemożliwić.
Ta technika umożliwia LSTM przywołanie lub zapomnienie informacji z przeszłych etapów czasu, co ma kluczowe znaczenie dla zadań takich jak rozpoznawanie mowy, przetwarzanie języka naturalnego i przewidywanie szeregów czasowych.
LSTM są niezwykle korzystne w każdym przypadku, gdy masz dane sekwencyjne, które należy ocenić lub prognozować. Są one często używane w oprogramowaniu do rozpoznawania głosu w celu konwersji wypowiadanych słów na tekst lub w Giełda Papierów Wartościowych analizy w celu prognozowania przyszłych cen na podstawie poprzednich danych.
3. Samoorganizujące się mapy (SOM)
SOM są rodzajem sztucznego sieć neuronowa, która może się uczyć i reprezentować skomplikowane dane w niskowymiarowym środowisku. Metoda polega na przekształcaniu wielowymiarowych danych wejściowych w dwuwymiarową siatkę, w której każda jednostka lub neuron reprezentuje inną część przestrzeni wejściowej.
Neurony są ze sobą połączone i tworzą strukturę topologiczną, pozwalającą im uczyć się i dostosowywać do danych wejściowych. Tak więc SOM opiera się na uczeniu się bez nadzoru.
Algorytm nie jest potrzebny oznaczone dane uczyć się od. Zamiast tego wykorzystuje cechy statystyczne danych wejściowych do wykrywania wzorców i korelacji między zmiennymi.
Na etapie uczenia neurony rywalizują o to, by być najlepszym wskaźnikiem danych wejściowych. I samoorganizują się w sensowną strukturę. SOM mają szeroki zakres zastosowań, w tym rozpoznawanie obrazu i mowy, eksplorację danych i rozpoznawanie wzorców.
Są przydatne do wizualizację skomplikowanych danych, grupowanie powiązanych punktów danych i wykrywanie nieprawidłowości lub wartości odstających.
4. Głębokie uczenie się ze wzmocnieniem
Głęboki Uczenie się ze wzmocnieniem to rodzaj uczenia maszynowego, w którym agent jest szkolony w podejmowaniu decyzji w oparciu o system nagród. Funkcjonuje, pozwalając agentowi wchodzić w interakcję z otoczeniem i uczyć się metodą prób i błędów.
Agent jest nagradzany za każde wykonane działanie, a jego celem jest nauczenie się, jak optymalizować swoje korzyści w czasie. Można to wykorzystać do nauczenia agentów grania w gry, prowadzenia samochodów, a nawet zarządzania robotami.
Q-Learning to dobrze znana metoda Deep Reinforcement Learning. Działa poprzez ocenę wartości wykonania określonej czynności w określonym stanie i aktualizowanie tego oszacowania w miarę interakcji agenta ze środowiskiem.
Następnie agent wykorzystuje te szacunki, aby określić, które działanie najprawdopodobniej przyniesie największą nagrodę. Q-Learning został wykorzystany do szkolenia agentów do grania w gry Atari, a także do poprawy zużycia energii w centrach danych.
Deep Q-Networks to kolejna słynna metoda Deep Reinforcement Learning (DQN). DQN są podobne do Q-Learning, ponieważ szacują wartości akcji przy użyciu głębokiej sieci neuronowej, a nie tabeli.
To pozwala im radzić sobie z ogromnymi, skomplikowanymi ustawieniami z wieloma alternatywnymi działaniami. DQN były wykorzystywane do szkolenia agentów do grania w gry takie jak Go i Dota 2, a także do tworzenia robotów, które mogą nauczyć się chodzić.
5. Rekurencyjne sieci neuronowe (RNN)
RNN to rodzaj sieci neuronowej, która może przetwarzać dane sekwencyjne, zachowując stan wewnętrzny. Rozważ to podobnie do osoby czytającej książkę, w której każde słowo jest trawione w odniesieniu do tych, które pojawiły się przed nim.
RNN są zatem idealne do zadań takich jak rozpoznawanie mowy, tłumaczenie języka, a nawet przewidywanie następnego słowa we frazie.
RNN działają przy użyciu pętli sprzężenia zwrotnego, aby połączyć wyjście każdego kroku czasowego z wejściem następnego kroku czasowego. Umożliwia to sieci wykorzystanie informacji o wcześniejszych krokach czasowych do informowania o swoich przewidywaniach dotyczących przyszłych etapów czasowych. Niestety oznacza to również, że RNN są podatne na problem zanikającego gradientu, w którym gradienty używane do uczenia stają się bardzo małe, a sieć ma trudności z nauczeniem się długoterminowych relacji.
Pomimo tego pozornego ograniczenia sieci RNN znalazły zastosowanie w szerokim zakresie zastosowań. Aplikacje te obejmują przetwarzanie języka naturalnego, rozpoznawanie mowy, a nawet produkcję muzyki.
tłumacz Googlena przykład wykorzystuje system oparty na RNN do tłumaczenia na różne języki, podczas gdy wirtualny asystent Siri wykorzystuje system oparty na RNN do wykrywania głosu. RNN były również wykorzystywane do prognozowania cen akcji i tworzenia realistycznego tekstu i grafiki.
6. Sieci kapsułowe
Capsule Networks to nowy rodzaj projektowania sieci neuronowych, który może skuteczniej identyfikować wzorce i korelacje w danych. Organizują neurony w „kapsuły”, które kodują pewne aspekty danych wejściowych.
W ten sposób mogą dokonywać dokładniejszych prognoz. Sieci kapsułowe wydobywają stopniowo skomplikowane właściwości z danych wejściowych, wykorzystując liczne warstwy kapsuł.
Technika Capsule Networks umożliwia im poznanie hierarchicznych reprezentacji danych wejściowych. Potrafią odpowiednio kodować przestrzenne połączenia między elementami wewnątrz obrazu, komunikując się między kapsułami.
Identyfikacja obiektów, segmentacja obrazu i przetwarzanie języka naturalnego to wszystkie zastosowania sieci kapsułowych.
Sieci kapsułowe mają potencjał do wykorzystania autonomiczna jazda technologie. Pomagają systemowi w rozpoznawaniu i rozróżnianiu elementów, takich jak samochody, ludzie i znaki drogowe. Systemy te mogą unikać kolizji, dokonując bardziej precyzyjnych przewidywań dotyczących zachowania obiektów w ich otoczeniu.
7. Autoenkodery wariacyjne (VAE)
VAE są formą narzędzia do głębokiego uczenia się, które jest używane do uczenia się bez nadzoru. Kodując dane w przestrzeni o niższych wymiarach, a następnie dekodując je z powrotem do oryginalnego formatu, mogą nauczyć się dostrzegać wzorce w danych.
Są jak magik, który potrafi zamienić królika w kapelusz, a potem z powrotem w króliczka! VAE są przydatne do generowania realistycznych efektów wizualnych lub muzyki. Można ich również używać do tworzenia nowych danych, które są porównywalne z oryginalnymi danymi.
VAE są podobne do tajnego łamacza kodów. Mogą odkryć podłoże struktura danych dzieląc go na prostsze części, podobnie jak układanie puzzli. Mogą wykorzystać te informacje do zbudowania nowych danych, które wyglądają jak oryginał po uporządkowaniu części.
Może to być przydatne do kompresji ogromnych plików lub tworzenia świeżej grafiki lub muzyki w określonym stylu. VAE mogą również tworzyć nowe treści, takie jak wiadomości lub teksty piosenek.
8. Generatywne sieci kontradyktoryjne (GAN)
GAN (Generative Adversarial Networks) to forma systemu głębokiego uczenia, który generuje nowe dane, które przypominają oryginał. Działają poprzez uczenie dwóch sieci: generatora i sieci dyskryminatora.
Generator generuje nowe dane, które są porównywalne z oryginalnymi.
A dyskryminator próbuje rozróżnić oryginalne i utworzone dane. Te dwie sieci są trenowane w tandemie, przy czym generator próbuje oszukać dyskryminatora, a dyskryminator próbuje właściwie zidentyfikować oryginalne dane.
Rozważ GAN jako skrzyżowanie fałszerza i detektywa. Generator działa podobnie do fałszerza, tworząc nowe dzieło sztuki, które przypomina oryginał.
Dyskryminator działa jak detektyw, próbując odróżnić prawdziwe dzieło sztuki od fałszerstwa. Obie sieci są szkolone w tandemie, przy czym generator poprawia się w tworzeniu wiarygodnych podróbek, a dyskryminator w rozpoznawaniu ich.
Sieci GAN mają kilka zastosowań, od tworzenia realistycznych obrazów ludzi lub zwierząt po tworzenie nowej muzyki lub pisania. Mogą być również wykorzystywane do rozszerzania danych, które polega na łączeniu danych wytworzonych z danymi rzeczywistymi w celu zbudowania większego zestawu danych do trenowania modeli uczenia maszynowego.
9. Głębokie sieci Q (DQN)
Deep Q-Networks (DQN) to rodzaj algorytmu uczenia się przez wzmacnianie podejmowania decyzji. Działają, ucząc się funkcji Q, która przewiduje oczekiwaną nagrodę za wykonanie określonej czynności w określonych warunkach.
Funkcja Q jest uczona metodą prób i błędów, a algorytm próbuje różnych działań i uczy się na podstawie wyników.
Rozważ to jako gra wideo postać eksperymentująca z różnymi działaniami i odkrywająca, które z nich prowadzą do sukcesu! DQN trenują funkcję Q przy użyciu głębokiej sieci neuronowej, dzięki czemu są skutecznymi narzędziami do trudnych zadań decyzyjnych.
Pokonali nawet ludzkich mistrzów w grach takich jak Go i szachy, a także w robotyce i samojezdnych samochodach. Podsumowując, DQN pracują, ucząc się na doświadczeniach, aby z czasem doskonalić swoje umiejętności podejmowania decyzji.
10. Radialne sieci funkcyjne (RBFN)
Radial Basis Function Networks (RBFN) to rodzaj sieci neuronowej używanej do przybliżania funkcji i wykonywania zadań klasyfikacyjnych. Działają poprzez przekształcanie danych wejściowych w przestrzeń o wyższych wymiarach za pomocą zbioru radialnych funkcji bazowych.
Dane wyjściowe sieci są liniową kombinacją funkcji bazowych, a każda radialna funkcja bazowa reprezentuje punkt środkowy w przestrzeni wejściowej.
RBFN są szczególnie skuteczne w sytuacjach ze skomplikowanymi interakcjami wejście-wyjście i można ich uczyć przy użyciu szerokiej gamy technik, w tym uczenia nadzorowanego i nienadzorowanego. Były używane do wszystkiego, od prognoz finansowych, przez rozpoznawanie obrazów i mowy, po diagnostykę medyczną.
Rozważ RBFN jako system GPS, który wykorzystuje szereg punktów kontrolnych, aby znaleźć drogę w trudnym terenie. Dane wyjściowe sieci są kombinacją punktów kontrolnych, które zastępują radialne funkcje bazowe.
Możemy przeglądać skomplikowane informacje i generować precyzyjne prognozy dotyczące scenariusza, wykorzystując RBFN.
11. Perceptrony wielowarstwowe (MLP)
Typowa forma sieci neuronowej zwana perceptronem wielowarstwowym (MLP) jest używana do nadzorowanych zadań uczenia się, takich jak klasyfikacja i regresja. Działają poprzez układanie kilku warstw połączonych węzłów lub neuronów, przy czym każda warstwa nieliniowo zmienia przychodzące dane.
W MLP każdy neuron otrzymuje dane wejściowe od neuronów w warstwie poniżej i wysyła sygnał do neuronów w warstwie powyżej. Wyjście każdego neuronu jest określane za pomocą funkcji aktywacji, która nadaje sieci nieliniowość.
Są w stanie nauczyć się wyrafinowanych reprezentacji danych wejściowych, ponieważ mogą mieć kilka ukrytych warstw.
MLP zostały zastosowane do różnych zadań, takich jak analiza nastrojów, wykrywanie oszustw oraz rozpoznawanie głosu i obrazu. MLP można porównać do grupy śledczych pracujących razem nad rozwiązaniem trudnej sprawy.
Razem mogą zebrać fakty i rozwiązać przestępstwo, mimo że każdy z nich specjalizuje się w określonej dziedzinie.
12. Konwolucyjne sieci neuronowe (CNN)
Obrazy i filmy są przetwarzane przy użyciu konwolucyjnych sieci neuronowych (CNN), formy sieci neuronowej. Działają poprzez zastosowanie zestawu możliwych do nauczenia się filtrów lub jąder w celu wyodrębnienia istotnych cech z danych wejściowych.
Filtry przesuwają się po obrazie wejściowym, wykonując sploty w celu zbudowania mapy cech, która przechwytuje istotne aspekty obrazu.
Ponieważ CNN są w stanie nauczyć się hierarchicznych reprezentacji cech obrazu, są szczególnie przydatne w sytuacjach obejmujących ogromne ilości danych wizualnych. Korzystało z nich kilka aplikacji, takich jak wykrywanie obiektów, kategoryzacja zdjęć i wykrywanie twarzy.
Potraktuj CNN jako malarza, który używa kilku pędzli, aby stworzyć arcydzieło. Każdy pędzel to jądro, a artysta może zbudować złożony, realistyczny obraz, mieszając wiele ziaren. Możemy wyodrębnić istotne cechy ze zdjęć i wykorzystać je do dokładnego prognozowania zawartości obrazu za pomocą CNN.
13. Sieci głębokich przekonań (DBN)
DBN to forma sieci neuronowej używana do zadań uczenia się bez nadzoru, takich jak redukcja wymiarowości i uczenie się funkcji. Działają poprzez układanie w stos kilku warstw Restricted Boltzmann Machines (RBM), które są dwuwarstwowymi sieciami neuronowymi zdolnymi do uczenia się odtwarzania danych wejściowych.
DBN są bardzo korzystne w przypadku problemów z danymi wielowymiarowymi, ponieważ mogą nauczyć się zwartej i wydajnej reprezentacji danych wejściowych. Były wykorzystywane do wszystkiego, od rozpoznawania głosu, przez kategoryzację obrazów, po odkrywanie leków.
Na przykład naukowcy wykorzystali DBN do oszacowania powinowactwa wiązania kandydatów na leki z receptorem estrogenowym. DBN został przeszkolony w zakresie zbioru właściwości chemicznych i powinowactwa wiązania i był w stanie dokładnie przewidzieć powinowactwo wiązania nowych kandydatów na leki.
Podkreśla to wykorzystanie DBN w opracowywaniu leków i innych zastosowaniach danych wielowymiarowych.
14. Autoenkodery
Autoenkodery to sieci neuronowe wykorzystywane do zadań uczenia się bez nadzoru. Mają na celu odtworzenie danych wejściowych, co oznacza, że nauczą się kodować informacje w postaci zwartej reprezentacji, a następnie dekodować je z powrotem do oryginalnego wejścia.
Autoenkodery są bardzo skuteczne w kompresji danych, usuwaniu szumów i wykrywaniu anomalii. Można ich również używać do uczenia się funkcji, w którym zwarta reprezentacja autoenkodera jest wprowadzana do nadzorowanego zadania uczenia się.
Pomyśl o autoenkoderach jako o uczniach robiących notatki na zajęciach. Student słucha wykładu i w sposób zwięzły i sprawny notuje najważniejsze punkty.
Później uczeń może przestudiować i zapamiętać lekcję, korzystając ze swoich notatek. Z drugiej strony autoenkoder koduje dane wejściowe w zwartą reprezentację, która może być następnie wykorzystana do różnych celów, takich jak wykrywanie anomalii lub kompresja danych.
15. Ograniczone maszyny Boltzmanna (KMS)
RBM (Restricted Boltzmann Machines) to rodzaj generatywnej sieci neuronowej, która jest używana do zadań uczenia się bez nadzoru. Składają się z widocznej warstwy i ukrytej warstwy, z neuronami w każdej warstwie, połączonymi, ale nie w tej samej warstwie.
RBM są trenowane przy użyciu techniki zwanej dywergencją kontrastywną, która polega na zmianie wag między warstwami widoczną i ukrytą w celu zoptymalizowania prawdopodobieństwa danych uczących. RBM mogą tworzyć nowe dane po przeszkoleniu przez próbkowanie z wyuczonej dystrybucji.
Rozpoznawanie obrazu i mowy, wspólne filtrowanie i wykrywanie anomalii to aplikacje, które wykorzystywały RBM. Zostały one również wykorzystane w systemach rekomendacji do tworzenia dostosowanych rekomendacji poprzez uczenie się wzorców na podstawie zachowań użytkowników.
RBM były również wykorzystywane w uczeniu się funkcji do tworzenia zwartej i wydajnej reprezentacji danych wielowymiarowych.
Podsumowanie i obiecujące wydarzenia na horyzoncie
Metody głębokiego uczenia się, takie jak konwolucyjne sieci neuronowe (CNN) i rekurencyjne sieci neuronowe (RNN), należą do najbardziej zaawansowanych metod sztucznej inteligencji. Sieci CNN zmieniły rozpoznawanie obrazu i dźwięku, podczas gdy sieci RNN poczyniły znaczne postępy w przetwarzaniu języka naturalnego i sekwencyjnej analizie danych.
Następny krok w ewolucji tych podejść prawdopodobnie skupi się na poprawie ich wydajności i skalowalności, umożliwiając analizowanie większych i bardziej skomplikowanych zestawów danych, a także zwiększając ich interpretowalność i zdolność uczenia się z mniej oznakowanych danych.
Głębokie uczenie się może w miarę postępu umożliwiać przełomy w takich dziedzinach, jak opieka zdrowotna, finanse i systemy autonomiczne.
Dodaj komentarz