Samouczek sieci neuronowej: przewodnik krok po kroku dla początkujących

Opublikowany: 2019-11-20

W dziedzinie uczenia maszynowego istnieje wiele ciekawych koncepcji. W tym samouczku dotyczącym sieci neuronowych będziemy omawiać jedną z podstawowych koncepcji sieci neuronowych. Ten artykuł pomoże Ci zrozumieć działanie tych sieci, wyjaśniając stojącą za nimi teorię.

Po ukończeniu tego samouczka dotyczącego sztucznej sieci neuronowej dowiesz się:

  • Co to jest sieć neuronowa?
  • Jak działa sieć neuronowa?
  • Jakie są rodzaje sieci neuronowych?

Spis treści

Co to są sieci neuronowe?

Sieć neuronowa to system zaprojektowany do działania jak ludzki mózg. To dość proste, ale powszechne w naszym codziennym życiu.

Złożona definicja byłaby taka, że ​​sieć neuronowa jest modelem obliczeniowym, który ma architekturę sieci. Ta architektura składa się ze sztucznych neuronów. Ta struktura ma określone parametry, dzięki którym można ją modyfikować do wykonywania określonych zadań.

Posiadają rozległe właściwości aproksymacyjne. Oznacza to, że mogą aproksymować funkcję z dowolnym poziomem dokładności, niezależnie od jej wymiaru. Sieci neuronowe znajdują szerokie zastosowanie w obszarach, w których tradycyjne komputery nie radzą sobie zbyt dobrze. Od Siri po Google Maps, sieci neuronowe są obecne w każdym miejscu, w którym wykorzystywana jest sztuczna inteligencja.

Są istotną częścią operacji sztucznej inteligencji. Sieci neuronowe czerpią inspirację z ludzkiego mózgu, więc ich struktura również jest do niej podobna.

Jak działa sieć neuronowa?

Sieć neuronowa ma wiele warstw. Każda warstwa pełni określoną funkcję, a im złożona jest sieć, tym więcej jest warstw. Dlatego sieć neuronową nazywa się również perceptronem wielowarstwowym.

Najczystsza forma sieci neuronowej ma trzy warstwy:

  1. Warstwa wejściowa
  2. Ukryta warstwa
  3. Warstwa wyjściowa

Jak sugerują nazwy, każda z tych warstw ma określone przeznaczenie. Te warstwy składają się z węzłów. Zgodnie z wymaganiami w sieci neuronowej może być wiele ukrytych warstw. Warstwa wejściowa odbiera sygnały wejściowe i przekazuje je do następnej warstwy. Zbiera dane ze świata zewnętrznego.

Warstwa ukryta wykonuje wszystkie zadania obliczeniowe zaplecza. Sieć może mieć nawet zero ukrytych warstw. Jednak sieć neuronowa ma co najmniej jedną ukrytą warstwę. Warstwa wyjściowa przesyła końcowy wynik obliczeń warstwy ukrytej.

Podobnie jak w przypadku innych aplikacji do uczenia maszynowego, będziesz musiał również wytrenować sieć neuronową za pomocą niektórych danych szkoleniowych, zanim przypiszesz jej konkretny problem. Ale zanim zagłębimy się w to, jak sieć neuronowa rozwiązuje problem, powinieneś najpierw wiedzieć o działaniu warstw perceptronowych:

Jak działają warstwy perceptronu?

Sieć neuronowa składa się z wielu warstw perceptronów; dlatego nosi nazwę „perceptron wielowarstwowy”. Warstwy te są również nazywane ukrytymi warstwami gęstych warstw. Składają się z wielu neutronów perceptronowych. Są podstawową jednostką, która współpracuje ze sobą, tworząc warstwę perceptronu. Te neurony otrzymują informacje w zestawie wejść. Łączy się te numeryczne dane wejściowe z odchyleniem i grupą wag, co następnie daje jeden wynik.

Do obliczeń każdy neuron uwzględnia wagi i obciążenie. Następnie funkcja kombinacji wykorzystuje wagę i odchylenie, aby dać wynik (zmodyfikowane dane wejściowe). Działa na podstawie następującego równania:

kombinacja = odchylenie + wagi * dane wejściowe

Następnie funkcja aktywacji generuje wyjście o następującym równaniu:

wyjście = aktywacja (kombinacja)

Ta funkcja określa, jaką rolę pełni sieć neuronowa. Tworzą warstwy sieci. Oto główne funkcje aktywacji:

Funkcja liniowa

W tej funkcji wyjściem jest tylko kombinacja neuronu:

aktywacja = kombinacja

Hiperboliczna funkcja styczna

Jest to najpopularniejsza funkcja aktywacji wśród sieci neuronowych. Jest to funkcja sigmoidalna i zawiera się w przedziale od -1 do +1:

aktywacja = tanh(kombinacja)

Funkcja logistyczna

Funkcja logistyczna jest dość podobna do funkcji stycznej hiperbolicznej, ponieważ jest to również rodzaj funkcji sigmoidalnej. Jest jednak inaczej, ponieważ zawiera się w przedziale od 0 do 1:

aktywacja = 1 1 + e -kombinacja

Funkcja rektyfikowanej jednostki liniowej

Podobnie jak hiperboliczna funkcja styczna, rektyfikowana funkcja jednostki liniowej jest również powszechna. Inną nazwą funkcji rektyfikowanej jednostki liniowej jest ReLU. ReLU jest równa kombinacji, gdy jest równa lub większa od zera, a ujemna, jeśli kombinacja jest mniejsza od (ujemnej) zera.

Jak dokładnie działa sieć neuronowa?

Teraz, gdy już wiesz, co kryje się za siecią neuronową i jak to działa, możemy skupić się na działaniu sieci neuronowej.

Oto jak to działa:

  1. Informacje są wprowadzane do warstwy wejściowej, która przenosi je do warstwy ukrytej
  2. Połączenia między dwiema warstwami losowo przypisują wagi do każdego wejścia
  3. Błąd systematyczny dodawany do każdego wejścia po indywidualnym pomnożeniu przez nie wag
  4. Suma ważona jest przekazywana do funkcji aktywacji
  5. Funkcja aktywacji określa, które węzły powinny zostać uruchomione w celu wyodrębnienia cech
  6. Model stosuje funkcję aplikacji do warstwy wyjściowej, aby dostarczyć dane wyjściowe
  7. Wagi są regulowane, a wyjście jest propagowane wstecznie, aby zminimalizować błąd

Model wykorzystuje funkcję kosztu w celu zmniejszenia poziomu błędu. Będziesz musiał zmieniać ciężary przy różnych modelach treningu.

  1. Model porównuje dane wyjściowe z oryginalnym wynikiem
  2. Powtarza proces, aby poprawić dokładność

Model dostosowuje wagi w każdej iteracji, aby zwiększyć dokładność danych wyjściowych.

Dołącz do kursu Sztucznej Inteligencji online z najlepszych światowych uniwersytetów — studiów magisterskich, programów podyplomowych dla kadry kierowniczej oraz zaawansowanego programu certyfikacji w zakresie uczenia maszynowego i sztucznej inteligencji, aby przyspieszyć swoją karierę.

Rodzaje sieci neuronowych

1) Rekurencyjna sieć neuronowa (RNN)

W tej sieci dane wyjściowe warstwy są zapisywane i przesyłane z powrotem do danych wejściowych. W ten sposób węzły danej warstwy zapamiętują informacje o poprzednich krokach. Kombinacja warstwy wejściowej jest iloczynem sumy wag i cech. W warstwach ukrytych rozpoczyna się cykliczny proces sieci neuronowej.

Tutaj każdy węzeł zapamiętuje niektóre informacje o swoim poprzedzającym kroku. Model zachowuje pewne informacje z każdej iteracji, które może później wykorzystać. System sam się uczy, kiedy jego wynik jest zły. Następnie wykorzystuje te informacje, aby zwiększyć dokładność swoich przewidywań w propagacji wstecznej. Najpopularniejszym zastosowaniem RNN jest technologia zamiany tekstu na mowę.

2) Konwolucyjna sieć neuronowa (CNN)

Ta sieć składa się z jednej lub wielu warstw splotowych. Warstwa splotowa obecna w tej sieci stosuje funkcję splotową na wejściu przed przeniesieniem go do następnej warstwy. Dzięki temu sieć ma mniej parametrów, ale staje się głębsza. Sieci CNN są szeroko stosowane w przetwarzaniu języka naturalnego i rozpoznawaniu obrazów.

3) Sieć neuronowa funkcji podstawy promieniowej (RBFNN)

Ta sieć neuronowa wykorzystuje promieniową funkcję bazową. Ta funkcja uwzględnia odległość punktu od środka. Sieci te składają się z dwóch warstw. Warstwa ukryta łączy cechy z funkcją podstawy promieniowej i przenosi dane wyjściowe do następnej warstwy.

Następna warstwa działa tak samo, korzystając z wyjścia poprzedniej warstwy. Sieci neuronowe z promieniową funkcją bazową są wykorzystywane w systemach elektroenergetycznych.

4) Sieć neuronowa sprzężenia zwrotnego (FNN)

To najczystsza forma sztucznej sieci neuronowej. W tej sieci dane przemieszczają się w jednym kierunku, tj. z warstwy wejściowej do warstwy wyjściowej. W tej sieci warstwa wyjściowa otrzymuje sumę iloczynów wejść i ich wag. W tej sieci neuronowej nie ma propagacji wstecznej. Sieci te mogą mieć wiele lub zero ukrytych warstw. Są łatwiejsze w utrzymaniu i znajdują zastosowanie w rozpoznawaniu twarzy.

5) Modułowa sieć neuronowa

Ta sieć posiada kilka sieci, które działają niezależnie. Wszystkie wykonują określone zadania, ale nie wchodzą ze sobą w interakcje podczas procesu obliczeniowego.

W ten sposób modułowa sieć neuronowa może wykonywać bardzo złożone zadania ze znacznie większą wydajnością. Sieci te są trudniejsze w utrzymaniu w porównaniu z prostszymi sieciami (takimi jak FNN), ale zapewniają również szybsze wyniki w przypadku złożonych zadań.

Dowiedz się więcej o sieciach neuronowych

To wszystko w naszym samouczku dotyczącym sieci neuronowych. Musiałeś widzieć, jak różnorodne zadania mogą wykonywać te sieci. Są stosowane w prawie wszystkich technologiach, z których korzystamy na co dzień. Jeśli chcesz dowiedzieć się więcej o sieciach neuronowych, zapoznaj się z naszym katalogiem kursów z zakresu sztucznej inteligencji i uczenia maszynowego.

Możesz sprawdzić nasz program Executive PG w zakresie uczenia maszynowego i sztucznej inteligencji , który zapewnia praktyczne warsztaty praktyczne, indywidualnego mentora branżowego, 12 studiów przypadków i zadań, status absolwentów IIIT-B i nie tylko.

Jak działa sieć neuronowa?

Warstwa wejściowa odbiera dane i przekazuje je do warstwy ukrytej. Wagi są przypisywane do każdego wejścia losowo przez powiązania między dwiema warstwami. Po indywidualnym pomnożeniu przez nie wag, do każdego wejścia stosowane jest obciążenie. Do funkcji aktywacji przekazywana jest suma ważona. W celu wyodrębnienia cech funkcja aktywacji decyduje, które węzły powinny zostać uruchomione. Aby dostarczyć dane wyjściowe, model wykorzystuje funkcję aplikacji w warstwie wyjściowej. Aby zmniejszyć błąd, wagi są modyfikowane, a dane wyjściowe są propagowane wstecznie.

Co to jest rekurencyjna sieć neuronowa?

Dane wyjściowe warstwy są przechowywane i przesyłane z powrotem do danych wejściowych w tej sieci. W rezultacie węzły określonej warstwy zachowują pewne informacje o poprzednich akcjach. Suma wag i cech określa kombinację warstwy wejściowej. Ukryte warstwy są miejscem, w którym zaczyna się proces oparty na rnn. Każdy węzeł tutaj zapamiętuje część informacji z poprzedniego etapu. Model zapisuje niektóre dane z każdej iteracji, aby można było ich później użyć. Gdy wynik systemu jest niepoprawny, sam się uczy. Następnie wykorzystuje tę wiedzę do optymalizacji dokładności swojej prognozy propagacji wstecznej. Najczęstszym zastosowaniem RNN jest technologia przetwarzania tekstu na mowę.

Jak działa perceptron wielowarstwowy?

Nazwa „perceptron wielowarstwowy” pochodzi od faktu, że sieć neuronowa składa się z wielu warstw perceptronu. Warstwy te są również nazywane warstwami gęstymi z warstwami ukrytymi. Składają się z dużej liczby neutronów perceptronowych. Są podstawowymi elementami budulcowymi, które tworzą warstwę perceptronową. Informacje ze zbioru danych wejściowych docierają do tych neuronów. Te dane liczbowe są połączone z odchyleniem, a także grupą wag w celu uzyskania pojedynczego wyniku.