sieci wersja recenzencka

Spis treści:

  1. Wstęp

  2. Biologiczne podstawy działania neuronu

  3. Pierwsze modele

  4. Zastosowania sieci neuronowych

  5. Uczenie sieci neuronowych

  6. Podstawowe typy sieci

  7. Podsumowanie

  8. Bibliografia

  1. Wstęp

Tematyka sztucznych sieci neuronowych należy do interdyscyplinarnej dziedziny badań powiązanej z biocybernetyką, elektroniką, matematyką stosowaną, statystyką, automatyką, a nawet medycyną.Wiedza o sieciach neuronowych swoje początki wywodzi z fascynacji naukowców centralną częścią układu nerwowego, jaki posiada każdy z nas, a więc z mózgu, którego możliwości przetwarzania informacji wciąż górują nad największymi systemami komputerowymi. Liczne badania prowadzone w ostatnich kilkudziesięciu latach doprowadziły do nagromadzenia takiej liczby faktów, że ich objęcie wyłącznie wyobraźnią naszego umysłu stało się niewykonalne.

Już w latach 40-tych XX w. pojawiły się próby matematycznego, a potem cybernetycznego opisu funkcjonowania pojedynczych komórek i ich zespołów, które mają najczęściej formę regularnych sieci. Sztuczne sieci neuronowe zdobyły szerokie uznanie w świecie nauki poprzez swoją zdolność łatwego zaadoptowania do rozwiązywania różnorodnych problemów obliczeniowych w nauce i technice. Mają one bardzo pożądane właściwości w wielu zastosowaniach praktycznych, ponieważ posiadają zdolności uczenia się, adaptacji do zmieniających się warunków środowiskowych oraz zdolność generalizacji nabytej wiedzy.Stanowią pod tym względem szczytowe osiągnięcie sztucznej inteligencji.

Problematyka sieci neuronowych jest z pewnością dziedziną nauk technicznych. Używając sieci neuronowych jako wygodnych systemów przetwarzania informacji, wiele osób zapomina często o korzeniach, z których wywodzi się ta nowoczesna technika. W naszej pracy chcielibyśmy napisać, że podstawy sieci neuronowych oparte są na fundamentalnych odkryciach biologów śledzących tajniki działania ludzkiego mózgu. Trzeba zaznaczyć, że niektóre odkrycia zostały docenione w świecie nauki poprzez przyznanie prestiżowych wyróżnień, jakimi są nagrody Nobla. Warto w tym miejscu je przypomnieć i wymienić:

  1. Pawlow – model odruchu warunkowego (1904)

  2. Ramon y Cajal – opis struktury sieci nerwowej (1906)

  3. Einthoven – rejestracja biopotencjałów tkanek (1924)

  4. Sherrington – model nerwowego sterowania mięśni (1932)

  5. Bekesy – model percepcji słuchowej (1961)

  6. Hodgkin i Huxley – model propagacji sygnału w aksonie (1963)

  7. Eccles – model synapsy (1963)

  8. Granit i Hartline – badania mikroelektrodowe (1967)

  9. Katz – zasada „wszystko albo nic”

  10. Hubel i Wiesel – model kory wzrokowej (1981)

  11. Lorenz i Tinbergen – model celowego zachowania (1986)

Pamiętając o źródłach i podstawach rozwoju z zakresu biologii i neurobiologii, które doczekały się bogatej literatury przedmiotu,w niniejsze pracy chcielibyśmy zwrócić uwagę nie tyle na biologiczne „korzenie” sieci neuronowych, ile na zagadnienia istotne z punktu widzenia przyszłego inżyniera, a więc na techniczny aspekt tego zagadnienia. Podstawy biologiczne działania neuronu stanowić muszą jednak swoiste wprowadzenie do tematu.

2. Biologiczne podstawydziałania neuronu

Sztuczne sieci neuronowe powstały jako pochodna wiedzy o działaniu systemu nerwowego istot żywych.Stanowią zatem próbę wykorzystania zjawisk zachodzących w systemach nerwowych przy poszukiwaniu nowych rozwiązań technologicznych.

Komórka nerwowa, zwana po prostu neuronem, jest podstawowym elementem systemu nerwowego. Chcąc w pełni zrozumieć istotę procesów pozyskiwania, przesyłania i przetwarzania informacji zachodzących w sieciach neuronowych,należy poznać mechanizmy działania poszczególnych neuronów i ich współdziałania. Z tego względu model rzeczywistej komórki nerwowej jest tak bardzo istotny. Z tego względu niezbędne jest przyswojenie sobie specjalistycznego słownictwa z zakresu nauk biologicznych.Bez poszerzenia wiedzy z tego zakresu niemożliwe jest opanowanie tak trudnego zagadnienia, jakim są sieci neuronowe.

Neuron, jak każda komórka, posiada ciało z elementami wyposażenia cytologicznego zwane somą, wewnątrz którego znajduję się jądro. Z somy neuronu wyrastają liczne wypustki, pełniące istotną rolę w połączeniu z innymi komórkami. Można wyróżnić dwa rodzaje wypustek: liczne, cienkie i gęsto rozkrzewione dendryty oraz grubszy, rozwidlający się na końcu akson.Sygnały wejściowe doprowadzone są do komórki za pośrednictwem synaps, zaś sygnał wyjściowy odprowadzany jest za pomocą aksonu i jego licznych odgałęzień zwanych kolaterelami.Kolaterale docierają do somy i dendrytów – innych neuronów, tworząc kolejne synapsy. Synapsy, dołączające wyjścia innych komórek nerwowych do danej komórki, mogą więc znajdować się zarówno na dendrytach, jak i bezpośrednio na ciele komórki. Transmisja sygnałów wewnątrz systemu nerwowego jest bardzo skomplikowanym procesem chemiczno-elektrycznym. Jednak wyrażając cały ten proces w uproszczeniu można założyć, że transmisja impulsu nerwowego od jednej komórki do drugiej opiera się na wydzielaniu pod wpływem nadchodzących od synaps bodźców specjalnych substancji chemicznych, zwanych neuromediatorami. Substancje te oddziałują na błonę komórki, powodując zmianę jej potencjału elektrycznego, przy czym zmiana ta jest tym większa, im więcej neuromediatora pojawi się na błonie.

Rysunek: Uproszczony schemat rzeczywistej komórki nerwowej

Synapsy różnią się wielkością oraz możliwościami gromadzenia neuromediatora w pobliżu błony synaptycznej. Z tego powodu taki sam impuls, docierający do wejścia komórki za pośrednictwem określonej synapsy, może powodować silniejsze lub słabsze jej działanie niż w przypadku innego wejścia. Miarą stopnia pobudzenia komórki jest stopień polaryzacji jej błony, zależny od sumarycznej ilości neuromediatora wydzielonego we wszystkich synapsach. Wynika z tego fakt, że wejściom komórki można przypisać współczynniki liczbowe, inaczej mówiąc wagi odpowiadające ilości neuromediatora wydzielonego jednorazowo na danej synapsie.Sygnały wejściowe w modelu matematycznym należy odpowiednio przemnożyć przez odpowiednie wartości. Wyróżniamy wagi synaptyczne pobudzające oraz hamujące. Po dotarciu impulsu wejściowego do synapsy i uwolnieniu danej ilości neuromediatora następuje pobudzenie elektryczne komórki. Jeśli bilans pobudzeń i hamowań jest ujemny, komórka samorzutnie wraca do stanu początkowego. Jeśli suma ta przekroczy próg uaktywnienia komórki, to sygnał wejściowy narasta powodując impuls nerwowy, który zostaje przesłany aksonem do innych neuronów połączonych z komórką pobudzoną.Neuromediator, po spełnieniu swojego zadania, jest usuwany, na zasadzie wchłonięcia go w komórkę, poprzez rozkład lub przemieszczeniu go poza obszar synaps. W momencie wygenerowania impulsu przez komórkę nerwową, uruchomiony zostaje proces refrakcji, dzięki któremu neuron nie jest w stanie wygenerować kolejnego impulsu, tak aby nie nastąpił konflikt.

Rysunek:Model współpracujących komórek nerwowych

Ilość komórek nerwowych, które współpracują ze sobą, jest ogromna. Szacuje się, że mózg ludzki zawiera około 10^11 takich komórek. Przy tak wielkiej ilości połączeń, błąd działania pojedynczych neuronów nie wpływa negatywnie na cały proces przesyłania sygnału. Jest to bardzo ważna cecha, która wywyższa sztuczną sieć neuronową nad systemami elektronicznymi, w których to jeden błąd niweczy funkcję działania całego systemu. Kolejną bardzo ważną cechą takiej sieci jest szybkość działania – mimo dosyć długiego cyklu pojedynczej komórki (liczonego w milisekundach). Dzieje się tak, gdyż sieć ta jest na tyle rozbudowana, że poszczególne sygnały przesyłane są równolegle wieloma kanałami. Proces ten jest na tyle sprawny, że analiza obrazu, dźwięku, czy podejmowania decyzji odbywa się w czasie mierzonym w milisekundach. Dla porównania podać można, iż w technologii półprzewodnikowej, w której cykl działania pojedynczego elementu wykonawczego oscyluje w granicach 10^-8 s, czyli de facto o wiele krótszym od cyklu komórki nerwowej, uzyskanie tak szybkiej reakcji jest na chwilę obecną po prostu niemożliwe. Jeśli udałoby się zatem zastosować w urządzeniach elektronicznych kanały o dużej równoległości wykonywania poszczególnych operacji, wzorując się na tych, które występują w układzie nerwowym, można byłoby zbliżyć się do szybkości procesu, spotykanej naturalnie w układzie nerwowym.

3.Pierwsze modele

Analizując poprzedni punkt naszej pracy należy stwierdzić, że każdy neuron jest narzędziem, które sumuje z odpowiednimi wagami sygnały wejściowe pochodzące z innych neuronów, tworząc funkcję sumy i przekazuje tę wartość do innych neuronów powiązanych z nim. W związku z zasadą „wszystko albo nic” (zasada ta mówi, że pobudzenie neuronu musi przekroczyć określony próg) w pierwszych modelach neuronu przyjmowano sygnał wyjściowy zero-jedynkowy, czyli sygnał binarny.

Wartość 1 – jak łatwo się domyślić – odpowiada pobudzeniu neuronu większemu niż próg zadziałania, a wartość 0 – pobudzeniu mniejszemu niż ten próg. Jednym z pierwszych takich modeli był model McCullocha-Pittsa sformułowany w 1943 r. Jest to model dyskretny, w którym stan neuronu w chwili (k+1) określany jest na podstawie sygnałów wejściowych neuronów w chwili poprzedniej k.

Kilka lat później D. Hebb zaprezentował teorię uczenia w zastosowaniu do pamięci asocjacyjnych. Wykorzystał on obserwacje, w których zauważył, że waga połączeń międzyneuronowych jest wzmacniana przy stanach uaktywnienia obu neuronów. W modelu Hebba przyrost wagi w procesie uczenia jest proporcjonalny do iloczynu sygnałów wyjściowych neuronów połączonych daną wagą. W latach 60-tych XX w.G. Widrow opracował podstawy teoretyczne i podstawowe implementacje techniczne adaptacyjnych układów przetwarzających sygnały, stanowiące istotny wkład w rozwój sieci neuronowych działających w trybach on-line jak i off-line.

W następnych latach zostały mocno ograniczone środki finansowania tej dziedziny badań, co skutkowało osłabieniem rozwoju badań nad sieciami neuronowymi. Głównym czynnikiem powodującym zastój była dość krytyczna ocena ówczesnych dokonań w tym zakresie zawarta w książce Minsky’ego i Paperta. Dalsze badania prowadzone były jedynie w nielicznych ośrodkach badawczych przez kilku wybitnych naukowców w tej dziedzinie. Kilkanaście lat później, na początku lat 80-tych XX w. nastąpił gwałtowny wzrost zainteresowania oraz finansowania tej interdyscyplinarnej nauki. Dzięki finansowemu wsparciu jak i rozwojowi systemów komputerowych nastąpił gwałtowny przełom zarówno w teorii, jak i w zastosowaniach praktycznych. Obecnie sieci neuronowe stanowią dobrze rozwinięta dyscyplinę wiedzy, stosowaną w wielu dziedzinach techniki.

Rysunek: Model komórki nerwowej według McCullocha-Pittsa

4.Zastosowania sieci neuronowych

Sieci neuronowe w rozwiązaniach praktycznych stanowią zwykle część sterującą procesem, bądź część decyzyjną, przekazującą sygnał wykonawczy innym elementom urządzenia, które nie są bezpośrednio związane z sieciami neuronowymi. Funkcje pełnione przez sieci neuronowe można podzielić na kilka grup:

  1. Aproksymacja i interpolacja.

  2. Rozpoznawanie i klasyfikacja wzorców.

  3. Kompresja.

  4. Predykcja.

  5. Identyfikacja i sterowanie.

  6. Asocjacja.

Sieć neuronowa może pełnić rolę uniwersalnego aproksymatora funkcji wielu zmiennych, realizującą funkcję nieliniową o postaci y=f(x), gdzie x jest wektorem wejściowym, a y realizowaną funkcją wektorową wielu zmiennych. Przy klasyfikacji i rozpoznawaniu wzorców sieć uczy się podstawowych cech tych wzorców, takich jak odwzorowanie geometryczne układu pikselowego wzorca, rozkładu składników głównych wzorca, składników transformaty Fouriera czy innych jego właściwości. W uczeniu podkreślane są różnice występujące w różnych wzorcach, stanowiące podstawę podjęcia decyzji przypisania ich do odpowiedniej klasy. W dziedzinie predykcji zadaniem sieci jest określenie przyszłych odpowiedzi systemu na podstawie ciągu wartości z przeszłości. Sieć, mając informację o wartościach danej zmiennej w chwilach poprzedzających predykcje, jest w stanie podjąć decyzję, jaka będzie wartość badanego ciągu w chwili aktualnej. W adaptacji wag sieci wykorzystuje się aktualny błąd predykcji oraz wartość tego błędu w chwilach poprzedzających. W zagadnieniach identyfikacji i sterowania procesami dynamicznymi sieć neuronowa pełni wiele funkcji. Pozwala ona na wypracowanie odpowiedniego sygnału sterującego. Pełni także funkcję układu śledzącego i nadążnego, adaptując się do zmiennych warunków środowiskowych, co jest bardzo korzystne z punktu widzenia techniki. Ważną rolę odgrywa funkcja klasyfikatora, która jest wykorzystywana w podejmowaniu decyzji co do dalszego przebiegu danego procesu. Funkcja klasyfikatora pełni istotną rolę w sterowaniu robotów.W zadaniach asocjacji sieć neuronowa pełni rolę pamięci skojarzeniowej. Można wyróżnić pamięć autosocjacyjną, w przypadku której skojarzenie dotyczy tylko poszczególnych składowych wektora wejściowego oraz pamięć heteroasocjacyjną, gdzie zadaniem sieci jest skojarzenie ze sobą dwu oddzielnych wektorów. Jeżeli na wejście sieci poddany będzie wektor, który został w pewien sposób zniekształcony to sieć neuronowa jest w stanie odtworzyć oryginalny wektor, a przy okazji generuje przy tym pełną postać wektora stowarzyszonego z nim.

Najważniejszą cechą sieci neuronowych, która stanowi o jej wielkich zaletach i szerokiemu wachlarzowi możliwości zastosowań, jest równoległe przetwarzanie danych przez wszystkie neurony. Przy masowej skali powiązań neuronowych uzyskuje się dzięki temu znaczne przyśpieszenie procesu. W wielu przypadkach jest możliwe przetwarzanie sygnałów w czasie rzeczywistym (tzn. takim, w którym poprawność obliczeń nie zależy jedynie od poprawności logicznej obliczenia, ale również od czasu w jakim zostaje uzyskany wynik, jeżeli nie zostaną spełnione wymogi czasowe to mówimy o wystąpieniu błędu systemu). Trzeba także zaznaczyć, że bardzo duża liczba powiązań międzyneuronowych sprawia, że sieć staje się odporna na błędy występujące w niektórych powiązaniach. Funkcję uszkodzonych wag przejmują inne i w związku z tym w działaniu sieci nie dostrzega się zaburzeń wpływających na jej działanie. Wykorzystuje się to do budowy optymalnej struktury sieci neuronowej przez obcinanie pewnych wag. Inną, również bardzo ważną cechą sieci jest jej zdolność do uczenia się i generalizacji nabytej wiedzy. Sieć neuronowa wykazuje własność tak zwanej sztucznej inteligencji. Wytrenowana sieć na ograniczonej grupie danych uczących potrafi skojarzyć nabytą wiedzę i wykazać pewne działanie na danych nie uczestniczących w procesie uczenia.

Możliwe pola zastosowania sieci neuronowych:

  1. Diagnostyka układów elektronicznych

  2. Badania psychiatryczne

  3. Prognozy giełdowe

  4. Prognozowanie sprzedaży

  5. Poszukiwania ropy naftowej

  6. Interpretacja badań biologicznych

  7. Prognozy cen

  8. Analiza badań medycznych

  9. Planowanie remontów maszyn

  10. Prognozowanie postępów w nauce

  11. Typowania na wyścigach konnych

  12. Analiza problemów produkcyjnych

  13. Optymalizacja utylizacji odpadów

  14. Dobór surowców

  15. Selekcja celów śledztwa w kryminalistyce

  16. Dobór pracowników

  17. Sterowanie procesami przemysłowymi

Pomimo ogromnych możliwości zastosowań sieci neuronowych, zakres ich dalszego wykorzystywania w przetwarzaniu informacji nie jest jeszcze do końca znany. Szereg placówek naukowych wciąż próbuje udoskonalać wiedzę z tej interdyscyplinarnej dziedziny. Wydaje się, że sieci neuronowe będą jeszcze przez wiele lat wpływać na postęp w technice informacyjnej. Trzeba pamiętać o tym, że sieci neuronowe bywają w dalszym ciągu samodzielnym obiektem badań jako całość, ponieważ jedną z często wskazywanych przyczyn budowy sieci są próby wyjaśnienia przy ich pomocy zasad funkcjonowania naturalnych fragmentów systemu nerwowego. Pojawia się także nadzieja, że w oparciu o teorię sieci neuronowych uda się zbudować teorię ludzkiego mózgu, chociaż dla niektórych droga ta może wydawać się nie do pokonania.

5.Uczenie sieci neuronowych

Uczenie sieci neuronowej należy rozumieć jako wymuszanie określonego zachowania pod wpływem zadanego sygnału wejściowego. Uczenie jest niezbędne wszędzie tam, gdzie występuje brak lub znaczny niedobór informacji doświadczalnych o powiązaniu wejścia z wyjściem, co uniemożliwia szczegółowe zaprojektowanie sieci czy poprawne jej działanie. Uczenie można realizować krok po kroku lub poprzez pojedynczy zapis. Jednym z ważniejszych czynników uczenia sieci neuronowej jest dobór odpowiedniej metody uczenia. Wyróżnia się dwie główne metody: uczenie z nauczycielem(supervised learning) i uczenie bez nauczyciela (unsupervised learning).

W trybie uczenia z nauczycielem (niekiedy zwanego również uczeniem pod nadzorem) dysponuje się zarówno danymi wejściowymi jak i sygnałami wyjściowymi, jakie można uzyskać. Wagi dobiera się tak, żeby sygnał wyjściowy y był jak najbliższy zadanej wartości d. Innymi słowy celem uczenia pod nadzorem jest kalibracja aktualnych odpowiedzi neuronów wyjściowych do wartości jak najbliższym wartościom zadanym pod wpływem adekwatnie zdefiniowanej funkcji celu.

Rysunek: Model uczenia z nauczycielem

Najpowszechniej stosowaną metodą uczenia z nauczycielem jest metoda największego spadku. Gdy aktualizacja wag występuje za każdym razem po prezentacji jednej pary uczącej wtedy mówi się o regule delta; ze skumulowaną regułą delta natomiast wówczas, gdy uaktualnienie następuje po prezentacji wszystkich par uczących.

Reguła delta przewidziana jest dla neuronów z ciągłymi funkcjami aktywacji – można ją nazwać odpowiednikiem reguły perceptronowej. Metodę można łatwo wyprowadzić jako wynik minimalizacji kwadratowego kryterium błędu, a jej uogólniona wersja ma zastosowanie w sieciach wielowarstwowych. Metody gradientowe dla skokowych funkcji aktywacji są nieskuteczne ze względu na niespełnianie warunku ciągłości funkcji celu. W takim wypadku należy zastosować metody bezgradientowe, a wśród nich najpopularniejszą – regułę perceptronową oraz jej uogólnienie (szerzej znane pod nazwą reguła Widrowa-Hoffa).

Rysunek: Reguła perceptronu

Uczenie odbywa się jak w poniższej pętli:

Po zadaniu wstępnych wartości wag wij na wejściu prezentuje wektor uczący x i wylicza wartość sygnału wyjściowego yi. Następnie poprzez porównanie aktualnej wartości yi oraz wartości zadanej di dokonuje się aktualizacji wag przy wykorzystaniu korekcji wag ze wzoru:

i zgodnie z założeniami:

- yi=di, wagi wij pozostają niezmienione

- yi=0, di=1, aktualizacja wag odbywa się zgodnie ze wzorem

wij(n+1)=wij(n)+xj

- yi=1, di=0, aktualizacja wag opisana jest zależnością wij(n+1)=wij(n)-xj

Gdy powyższy proces się zakończy, następuje prezentacja nowego wektora uczącego i skojarzonej z nią wartości zadanej di, a następnie ponownie aktualizuje się wagi. Proces powtarzany jest wielokrotnie na wszystkich próbkach uczących, aż do uzyskania minimalnych różnic między wszystkimi wartościami wyjściowymi i odpowiadającymi im wartościom zadanym.

Cechą charakterystyczną reguły perceptronowej oraz jej uogólnieniu jest wykorzystywanie w uczeniu jedynie dwóch informacji – aktualnej wartości sygnału wyjściowego neuronu i wartości żądanej.

Innym wariantem uczenia z nauczycielem jest metoda gwiazdy wyjść; wykorzystuje się ją do uczenia charakterystycznych, powtarzających się relacji wejście-wyjście. Pomimo występowania nauczyciela od sieci wymaga się ponadto umiejętności zdobywania statystycznych własności sygnałów wejścia i wyjścia. Metoda gwiazdy pozwala uczyć wymaganej reakcji na zadany sygnał wejściowy nawet w przypadku, gdy znany jest rzeczywisty a nie pożądany sygnał wyjściowy.

Rysunek: Reguła gwiazdy wyjść

W tym przypadku korekcja wag obliczana jest w następujący:

gdzie wj to wektor wag rozumiany jako [w1j, w2j,., wpj]T, jest niewielką stałą, która to maleje w trakcie uczenia.

W odróżnieniu od pozostałych metod wagi dobierane są w połączeniach "rozchodzących się" z wyjściem neuronu.

Odmianą uczenia z nauczycielem jest uczenie z krytykiem – różnica polega na tym, że w tym przypadku nie występuje informacja o pożądanych wartościach wyjścia, tylko informacja czy aktualna akcja systemu (zmiana wartości wag) dała wynik pozytywny lub negatywny w ramach pożądanego

zachowania systemu. Gdy podjęte przez układ uczący działanie zostało ocenione pozytywnie wtedy następuje wzmocnienie tendencji do prawidłowego zachowania systemu w przyszłości dla podobnych sytuacji. W odwrotnym przypadku następuje osłabienie tendencji takiego zachowania systemu.

Rysunek: Schemat uczenia z krytykiem

Układ uczący współpracuje ze środowiskiem za pośrednictwem krytyka, który dla aktualnego stanu i predykcji przyszłych zmian (wypracowanej na bazie aktualnej wiedzy)przesyła dalej sygnał sterujący ř zezwalający na podjęcie akcji a, która to wpłynie na stan środowiska x; x jak i a oznaczają wektory o wymiarach zależnych od charakterystyki zadanego problemu. Podjęta w chwili n akcja a(n) zmienia stan środowiska z x(n) na x(n+1). Układ uczący po zmianie stanu środowiska otrzymuje od krytyka sygnał sterujący ř(n) (zależny w konkretny sposób od poprzedniego stanu x(n) oraz podjętej akcji a, której optymalność zostanie oceniona z punktu zmian jakie zajdą w środowisku).

Pomimo, iż uczenie z krytykiem jest dużo bardziej skomplikowane w realizacji, to jest również w wyraźny sposób bardziej uniwersalne, ponieważ nie wymaga znajomości sygnałów żądanych na wyjściu.

Drugim głównym typem metod uczenia jest uczenie bez nauczyciela. W tym przypadku odpowiedź pożądana jest nieznana. Sieć, ze względu na brak informacji o poprawności czy też niepoprawności odpowiedzi,uczy się poprzez analizę reakcji na pobudzenia, o których naturze wie niewystarczająco wiele lub nic. Podczas analizy parametry sieci ulegają zmianom, co nazywa się samoorganizacją.

Rysunek: Schemat uczenia bez nauczyciela

W modelu uczenia bez nauczyciela –modelu Hebba –wykorzystywana jestobserwacja neurobiologiczne: "jeżeli akson komórki A bierze systematycznie udział w pobudzeniu komórki B powodującym jej aktywację, to wywołuje to zmianę metaboliczną w jednej lub obu komórkach, prowadząc do wzrostu skuteczności pobudzania B przez A"(Hebb, The Organization of Behavior, 1949).

Zgodnie z powyższym waga powiązań między dwoma neuronami rośnie przy jednoczesnym stanie pobudzenia obu neuronów, w odwrotnymprzypadku maleje.

Reguła Hebba zakłada, że sygnałem warunkującym uczenie jest sygnał wyjściowy neuronu yi. Zmiana wartości wag w kolejnych cyklach uczących ma postać:

gdzie:

Przy wielokrotnej prezentacji identycznego wymuszenia xj można zauważyć wykładniczy wzrost wag, co z kolei skutkuje nasyceniem neuronu. By uniknąć tego niepożądanego zachowania reguła ulega modyfikacji poprzez wprowadzenie współczynnika zapomnienia.

Regułę Hebba stosuje się do różnego typu struktur sieci jak i różnych funkcji aktywacji neuronu. Można ją zaliczyć do uczenia typu korelacyjnego, w którym to siła połączenia między neuronami wzrasta przy istnieniu korelacji między sygnałami presynaptycznym i postsynaptycznym.

Innym typem uczenia bez nauczyciela jest uczenie typu konkurencyjnego, w którym to neurony współzawodniczą ze sobą, aby stać się aktywnymi (pobudzonymi). Dla odróżnienia od uczenia Hebba, gdzie aktywna mogła być dowolna liczba neuronów, w uczeniu konkurencyjnym tylko i wyłącznie jeden neuron może być aktywny, reszta pozostaje w stanie spoczynku. Można wydzielić dwie podgrupy uczenia konkurencyjnego:

Rysunek: Schemat uczenia według reguły WTA

Pierwsza z nich to metoda WTA (Winner Takes All – Zwycięzca Bierze Wszystko), gdzie grupa neuronów współzawodniczących otrzymuje identyczne sygnały wejściowe xj. Sygnały wyjściowe neuronów yj różnią się między sobą w zależności od aktualnych wartości wag. Sygnały wyjściowe są następnie porównywane a zwycięża ten neuron, którego wartość yj jest największa (jego wektor wag jest najbliższy aktualnemu wektorowi uczącemu x). Zwycięski neuron przyjmuje wartość 1, a pozostałe – przegrywające 0.

Można zauważyć, że uczenie to odbywa się przy użyciu znormalizowanych wektorów wejściowych x, jak również wag. Neuron zwycięzca przyjmując stan 1 może zaktualizować wagi wij otrzymywane według wzoru:

W ten sposób zachodzi adaptacja jego wag do danego wektora x. Neurony przegrywające mają na wyjściu stan 0, a przez to zablokowany proces aktualizacji ich wag. Tak więc przy podawaniu kolejnych wektorów o zbliżonych do siebie parametrach będzie zwyciężał ten sam neuron; pozostałe dopiero w wyniku zwycięstwa w następnej prezentacji sygnału wejściowego będą mogły mieć szansę na aktualizację wag i uczenie.

W efekcie tak zachodzącego współzawodnictwa występuje samoorganizacja procesu uczenia. Neurony swoje wagi dopasowują tak, że przy prezentacji grup wektorów wejściowych podobnych do siebie zwycięża zawsze ten sam neuron.

Jednak jest to metoda niepozbawiona wad – poważnym problemem jest występowanie martwych neuronów, które raz zainicjowane nie zwyciężyły nigdy w konkurencji. Ich występowanie zmniejsza efektywną liczbę jednostek biorących udział w uczeniu, a przez to zwiększa się globalny błąd odwzorowania danych. Aby ograniczyć taką sytuację do uczenia wprowadza się próg zwycięstw, który uwzględnia liczbę przeszłych zwycięstw poszczególnych neuronów, po przekroczeniu którego neuron zostaje obligatoryjnie pauzowany, dając szanse innym neuronom na zwycięstwo.

Drugą z metod uczenia konkurencyjnego jest metoda WTM (Winner Takes Most – Zwycięzca Bierze Większość). Jest to odmiana, w której neuron wygrywający uaktywnia się przyjmując wartość yi=1 oraz zezwala na częściowe uaktualnianie innych neuronów ze swojego sąsiedztwa. Poziom uaktywniania neuronów zależy od różnicy ich wektorów wagowych od wag neuronu wygrywającego.

W momencie gdy obowiązuje zasada WTM, to zmianie ulegają nie tylko wagi zwycięskiego neuronu, lecz również w zależności od stopnia sąsiedztwajego sąsiadów. Sąsiedztwo neuronu Sw jest określane zbiorem, który to jest wyznaczany na podstawie z góry przyjętej funkcji sąsiedztwa. Wyraża ona również stopień tego sąsiedztwa, a więc sąsiedztwo może być bliższe i dalsze.

gdzie Sw oznacza stopień sąsiedztwa. Im bliżej neuronu zwycięskiego neurony leżą tym w większym stopniu są aktualizowane.

6. Podstawowe typy sieci

Każdemu typowi poświęcimy osobny podrozdział, aby czytelniej omówić różnorodność sieci neuronowych.

A)Sieci jednowarstwowa

Składa się z neuronów ułożonych w jednej warstwie tak jak na poniższym rysunku. Każdy neuron ma polaryzację (o określonej wadze prowadzącej od sygnału jednostkowego) i wagi prowadzące od sygnałów wejściowych. Te wagi tworzą pewną przestrzeń decyzyjną. Połączenie węzłów wejściowych z neuronami warstwy wyjściowej jest na ogół typu każdy z każdym. Przepływ występuje w kierunku od wejścia do wyjścia.

Rysunek: Schemat sieci jednokierunkowej jednowarstwowej

W węzłach wejściowych nie zachodzą procesy obliczeniowe, w związku z czym nie tworzą one warstwy neuronów. Neurony ułożone w pojedyńczej warstwie działają niezależnie od siebie, przez co możliwości tej sieci są ograniczone do możliwości pojedyńczych neuronów. Zależnie od doboru wag i wyboru metody uczenia się mamy do czynienia z różnymi nazwami sieci jednowarstwowych, które mogą przyjąć postać np. sieci Kohenena, sieci jednokierunkowej, sieci sigmoidalnej. Związane są też z tym funkcje aktywacji.

B) Sieć wielowarstwowa

Sieć wielowarstwową tworzą neurony ułożone w wielu warstwach. Są to warstwy wejściowa, wyjściowa i co najmniej jedna warstwa ukryta neuronów, która pośredniczy w przekazywaniu sygnałów między węzłami wejściowymi a wartstwą wyjściową. W literaturze najczęściej taka struktura określana jest mianem perceptronu wielowarstwowego.

Rysunek: Schemat sieci jednokierunkowej dwuwarstwowej

Na pierwszą warstwę ukrytą podawane są sygnały wejściowe. Warstwa ta stanowi sygnał źródłowy dla kolejnej. W całej sieci występują połączenia pełne między warstwami, w szczególnych przypadkach takie połączenia nie zachodzą i mówimy wtedy o połączeniu częściowym (zwanym też lokalnym). W przypadku tych niepełnych połączeń na ogół brakuje połączenia z częścią warstwy poprzedniej skupionej w obszarze tworzącym pole recepcyjne konkretnego neuronu.

Warstwa ukryta stanowi istotny element sieci umożliwiający uwzględnienie związków między sygnałami, wynikającymi z zależności statystycznych wyższego rzędu.

C) Sieci radialne

Jest to odmiana sieci wielowarstwowych, w której neuron ukryty realizuje funkcje zmieniającą sie radialnie wokół wybranego centrum c i przyjmuje wartości niezerowe tylko w otoczeniu tego centrum. Rola neuronu ukrytego sprowadza się w tych sieciach do odwzorowania radialnej przejstrzeni wokół wybranego punktu zadanego (lub ewentualnie grupy takich punktów nazwanej klastrem). Dzięki zjawisku superpozycji sygnałów pochodzących od wszystkich neuronów ukrytych można uzyskać odwzorowanie całej przestrzeni wielowymiarowej.

Rysunek: Ogólna postać sieci radialnej

Sieci tego typu stanowią uzupełnienie sieci sigmoidalnych (powyższych). Różnica polega na sposobie reprezentowania neurona w przestrzeni wielowymiarowej. Sigmoidalny reprezentuje hiperpłaszczyznę separującą przestrzeń na dwie kategorie (klasy) natomiast radialny reprezentuje hipersferę separując kołowo wokół punktu centralnego. Najprościej obrazuje to poniższy rysunek:

Rysunek: Sposób separacji przestrzeni danych przez: a) neuron sigmoidalny b) neuron radialny

Neurony radialne, naturalnie uzupełniając nerony sigmoidalne, umożliwiają wydatne zmniejszenie liczby neuronów potrzebnych do separacji różnych klas w przypadku wystąpienia symetrii kołowej danych. Dodatkowo w sieciach tych, w związku z różnymi funkcjami pełnionymi przez neurony, nie zachodzi potrzeba stosowania wielu warstw ukrytych. Typowa sieć radialna składa się z warstwy wejściowej, do której przykładane są sygnały, warstwy ukrytej (z neuronami radialnymi) i warstwy wyjściowej składającej sie z jednego lub większej ilości neuronów liniowych. Neuron wyjściowy w tej sieci odpowiada tylko za sumowanie wag sygnałów pochodzących od neuronów ukrytych.

D) Sieci rekurencyjne

Jest to oddzielna grupa sieci, w których istnieje sprzężenie zwrotne między warstwami. Sygnał może być przekazywany z warstwy wyjściowej bądź ukrytej do warstwy poprzedzającej, w tym do warstwy wejściowej. Cechą charakterystyczną, wyróżniającą te sieci jest zależność dynamiczna na każdym etapie działania. Zmienienie stanu dowolnego neuronu wywiera wpływ na całą sieć, właśnie w wyniku działania masowego sprzężenia zwrotnego. Wywołuje to stan przejściowy kończący się określonym stanem ustalonym, innym od poprzedniego.

Rysunek: Sieć rekurencyjna z warstwą ukrytą

Jeśli wziąść pod uwagę, że przy masowym sprzężeniu zwrotnym pobudzeniami dla neuronu są sygnały wyjściowe innych neuronów, zmiana stanu może być opisana układem równań nieliniowych różniczkowych (dla modelu ciągłego):

lub różnicowych (dla modelu dyskretnego):

Należy pamiętać, że proces ustalania sie sygnałów wyjściowych tej sieci jest procesem dynamicznym z pewnym opóźnieniem. Nieliniowość funkcji aktywacji neuronów określa również dynamikę jako nieliniową.

E) Sieci samoorganizujące się

Podstawą samoorganizacji sieci jest zaobserwowane zjawisko, w którym globalne uporządkowanie sieci jest możliwe dzięki działaniom samoorganizacyjnym prowadzonym niezależnie i lokalnie w różnych punktach sieci. Po przyłożeniu sygnału wejściowego następuje aktywacja neuronów (w różnym stopniu), która dostosowuje się, w wyniku zmiany wartości wag synaptycznych, do zmian wzorców uczących. Podczas procesu uczenia zachodzi tendencja do wzrostu wartości niektórych wag przez co tworzy sie pewne dodatnie sprzężenie zwrotne. W wyniku tego otrzymujemy większe sygnały pobudzające, większe wartości wag oraz większą aktywność neuronów. Powoduje to również naturalne zróżnicowanie się poszczególnych grup neuronów. Niektóre neurony bądź grupy neuronów współpracujących uaktywniają się w odpowiedzi na pobudzenie i przewyższają inne swoją aktywnością. Co ciekawe, pomiędzy neuronami bądź grupami neuronów dochodzi nie tylko do współpracy ale również do konkurowania ze sobą.

Dwie najbardziej podstawowe klasy samoorganizacji to mechanizm samoorganizacjii oparty na regule asocjacji Hebba oraz mechanizm współzawodnictwa opierający się na regule Kohenena.

Niemniej, niezależnie od metody i mechanizmu uczenia się sieci, ważną rolę w całym procesie odgrywa nadmiarowość danych uczących, która jest konieczna by zjawisko było możliwe. Wielokrotne powtórzenia podobnych wzorców tworzące spektrum danych uczących stanowi tak zwaną „bazę wiedzy”. Jest ona dla sieci swojego rodzaju drogą odpowiednich skojarzeń, z których wyciągane są wnioski decyzyjne po przyłożeniu na wejście sieci określonego wzorca, który ulega klasyfikacji.

7. Podsumowanie

Powyższy tekst można zasadniczo uznać za zaledwie powierzchowne dotknięcie bardzo rozbudowanej tematyki sieci neuronowych. Celem pracy było jedynie wprowadzenie w podstawowe zagadnienia związane z sieciami oraz zachęcenie do dalszego i dokładniejszego samodzielnego zagłębienia się w temat. Bliższe przyjrzenie się tej problematyce wydaje się nad wyraz wskazane. Obserwując zmiany zachodzące w technice w ciągu chociażby ostatnich 30-40 lat można wysnuć wniosek, że to, co kiedyś wydawało się niemożliwe i było głównie teoretycznym rozważaniem, już niedługo stanie się faktem. Potencjał drzemiący w sieciach neuronowych jest olbrzymi. Skuteczne ich wykorzystanie może być kolejnym skokiem w mocy obliczeniowej komputerów, a równocześnie może pomóc w rozwoju sztucznej inteligencji.

8. Bibliografia

  1. Stanisław Osowski, Sieci neuronowe do przetwarzania informacji, Warszawa 2006, Oficyna Wydawnicza Politechniki Warszawskiej

  2. Ryszard Tadeusiewicz, Sieci Neuronowe, Warszawa 1993, Akademicka Oficyna Wydawnicza

  3. Strona internetowa Katedry Inżynierii Komputerowej Politechniki Częstochowskiej[dostęp: 22.03.2014]: http://kik.pcz.pl/nn/index.php

  4. Strona internetowa Wydziału Matematyki i Nauk Informacyjnych Politechniki Warszawskiej [dostęp: 22.03.2014]:

http://www.mini.pw.edu.pl/MiNIwyklady/sieci/neuronowe.html

  1. Strona internetowa [dostęp: 22.03.2014]: http://pbryzi.fm.interia.pl/W/SN.htm


Wyszukiwarka

Podobne podstrony:
Sciaga sieci wersja 1, Studia, Sieci komputerowe i internet
Sciaga sieci wersja 3 final, Studia, Sieci komputerowe i internet
Planowanie wersja skrócona, PG, PG sem. II mgr, Planowanie sieci transportowych
Wersja do oddania, Rozdzial 3 - Sieci neuronowe, Rozdział III
sieci cieplne nowa wersja
rozporządzenie w sprawie Europejskiej Agencji Środowiska oraz Europejskiej Sieci Informacji i Obserw
Wirtualne sieci LAN
9 Sieci komputerowe II
Sieci bezprzewodowe Wi Fi
opieka nad dawcą pełna wersja
WYKŁAD PL wersja ostateczna
BAD WYKŁAD SIECI 2
6 PKB 2 Pomiar aktywności gospodarczej rozwin wersja
Sieci komputerowe 7
Odzyskanie niepodległości przez Polskę wersja rozszerzona 2
Bezpieczenstwo w sieci SD

więcej podobnych podstron