Sieci neuropodobne IX, specyficzne architektury 1 Sieć przesyłająca żetony CP (counter propagation) warstwa Kohonena: wektory wejściowe są unormowane jednostki mają unormowane wektory wag jednostki są liniowe tzn. każda na swoim wyjściu produkuje: y j = i w ijx i = cos( {w j x}) na y j wykonywana jest operacja nieliniowa wybór maximum po jednostkach maximum zostaje, a reszta wyjść warstwy Kohonena jest zerowana warstwa Grossberga: otrzymuje na wejściu tylko jeden niezerowy sygnał od zwycięskiego neuronu z poprzedniej warstwy jednostki są liniowe i produkują wyjście: Y j = i w ijy i przy czym warto zauważyć, że tyko dla jednego i y i 0 Działanie całej sieci wygląda więc następująco: warstwa Kohonena dokonuje klasyfikacji wektora wejściowego, a warstwa Grossberga zwraca wektor skojarzony z dana klasą wejść. Jest to działanie tablicy przeglądowej (look-up table). Sieci neuropodobne IX, specyficzne architektury 2 Uczenie sieci CP Uczenie warstwy Kohonena: uczeniu w danym kroku podlega tylko jeden neuron: w (m )(j+1) i = w (m )(j) i gdzie: m spełnia warunek y (j) m = max m + η (j) ( x (j) i ( ) y (j) m w (m )(j) i ) Co nam dają te warunki? normalizacja wejść i wag największa wartość wyjścia sieci dla neuronu m zapewnia to, że wektor wag tego neuronu znajduje się najbliżej wektora bodźca na sferze jednostkowej. uczenie neuronu m szybkość nauki. zbieżność do klastrów jeśli w zbiorze uczącym występują jakieś skupienia, to wektory wag są modyfikowane w ten sposób, że dążą do wartości średnich dla poszczególnych skupień, przy czym my nie musimy wiedzieć a piori o istnieniu tych skupień. Uczenie warstwy Grossberga: w ij = η(y i z i )y j przy czym w każdym kroku uczeniu podlegają tylko te wagi w ij, które łaczą neuron wyjściowy i ty ze zwycięskim neuronem j tym z warstwy Kohonena.
Sieci neuropodobne IX, specyficzne architektury 3 Zastosowania sieci CP analiza statystyczna analiza skupień kompresja danych rozpoznawanie mowy aproksymacja funkcji Zaleta: Uczą się około 2 rzędy wielkości szybciej niż sieci ze wsteczną propagacją dając porównywalne wyniki. Sieci neuropodobne IX, specyficzne architektury 4 Jednostki z funkcjami o symetrii kołowej RBF Sieci z jednostkami RBF (RBFN) są hybrydowe: na ogół złożone są z dwóch warstw: wejściowej z jednostek o symetrii kołowej i wyjściowej jednostek liniowych. W odróżnieniu od dotychczas rozważanych sieci, jednostki wejściowe mają funkcję aktywacji w postaci funkcji o symetrii kołowej g c (x) = g( x µ c ; σ) gdzie: µ c centum, σ charakterystyczna szerokość, skala Najczęściej stosowaną postacią funkcji jest znormalizowany gauss: g j (x) = exp[ x µ j 2 /2σj 2 ] k exp[ x µ k 2 /2σk 2] gdzie x jest wektorem wejściowym, a µ j wektorem wag jednostki j tej. Normalizacja zapewnia to, że wyjścia są z przedziału 0 1 i sumują się do 1. Każda jednostka posiada pewne pole receptorowe o środku w µ j i szerokości σ j.
Sieci neuropodobne IX, specyficzne architektury 5 Co robi sieć RBF? Jeśli pola receptorowe jednostek nie zachodzą na siebie, to przy prezentacji konkretnego bodźca aktywna jest tylko jedna jednostka. Jeśli pola receptorowe na siebie zachodzą to aktywnych jest kilka jednostek, których pola receptorowe są najbliższe prezentowanemu bodźcowi w przestrzeni wejściowej. Wyjście z warstwy wejściowej jest podawane na liniową warstwę wyjściową. Można patrzeć na działanie takiej sieci w następujący sposób: warstwa wejściowa dokonuje klasyfikacji bodźców, a warstwa wyjściowa wykonuje na tych klasach pewną transformację liniową. Widać, że sieci RBF mogą realizować zadania podobne jak sieci CP. W kontekście twierdzenia o potencjalnych możliwościach sieci widać, że sieci RBF mogą potencjalnie odtwarzać dowolną funkcję X Y Sieci RBF mają dobre własności interpolacyjne, ale niezbyt dobrze extrapolują. Sieci neuropodobne IX, specyficzne architektury 6 Zastosowania sieci RBF kontekstowe przeszukiwanie baz danych rozpoznawanie twarzy rozpoznawanie zapachów interpolacja funkcji
Sieci neuropodobne IX, specyficzne architektury 7 Uczenie sieci RBF W sieci o typowej architekturze uczeniu podlegają: centra i szerokości jednostek wejściowych oraz wagi liniowych jednostek wyjściowych. Dla sieci RBF można wyprowadzić gradientową regułę optymalizacji tych parametrów, ale istnieje bardziej efektywy sposób uczenia. Każdą warstwę można uczyć niezależnie, polega to na : znalezieniu środków µ j i wybraniu szerokości σ j. Można to zrobić na kilka sposobów: tworzymy sieć z taka ilością jednostek ukrytych ile jest wektorów w zbiorze treningowym tak, że centrum każdej jednostki odpowiada jednemu wektorowi treningowemu. przeprowadzamy analizę skupień zbioru treningowego i dla każdego skupiska tworzymy jednostkę z centrum pokrywającym się ze średnią danego skupiska i szerekością proporcjonalną np. do wariancji. odpowiednik analizy skupień możemy przeprowadzić przy użyciu sieci Kohonena. następnie warstwę wyjściową trenujemy przy użyciu np. reguły delta. Przy wyborze σ j trzeba pamiętać o przekleństwie wymiaru wraz ze wzrostem wymiaru przestrzeni wejściowej zmniejsza się objętość jednostkowej kuli. Sieci neuropodobne IX, specyficzne architektury 8 Optymalizacja ilości jednostek ukrytych regularyzacja zanikanie wag rozrost sieci, zaczynamy od sieci z jednym neuronem ukrytym, który ma centum równe jednemu z wektorów treningowych, a potem: 1. przepuszczamy wszystkie wektory treningowe przez sieć 2. dla tego, który spowodował największy błąd dokładamy jednostkę 3. uczymy wagi warstwy wyjściowej 4. sprawdzamy czy całkowity błąd sieci jest już dostatecznie mały, jeśli nie to skaczemy do 1.
Sieci neuropodobne IX, specyficzne architektury 9 gdzie: Więcej o klasyfikacji Cel: każdej próbce trzeba przypisać klasę do której ona należy. Optymalny klasyfikator w statystyce to taki, który każdej próbce x przypisuje taką klasę C i, która ma największe prawdopodobieństwo a posteriori P (C i x). j i P (C i x) > P (C j x) Do obliczenia prawdopodobieństw P (C i x) stosuje się regułę Bayesa: P (C i x) = P (x C i)p (C i ) ( ) P (x) P (C i ) prawdopodobieństwo a priori przynależności do klasy C i. Może być oszacowane np. na podstawie częstości występowania danej klasy. P (x) prawdopodobieństwo a priori, że dana próbka to konkretny x. P (x C i ) prawdopodobieństwo a priori wylosowania x jako elementu klasy C i. Może być obliczone na podstawie rozkładu gęstości prawdopodobieństwa klasy C i. P (C i x) prawdopodobieństwo a posteriori, że konkretna próbka x należy do klasy C i. Sieci neuropodobne IX, specyficzne architektury 10 Klasyfikacja sieciami RBF (1) Jeżeli dla każdej klasy C k jesteśmy w stanie znaleźć funkcję radialną opisującą aprioryczne prawdopodobieństwo P (x C k ) to klasyfikacja polega na maksymalizacji prawdopodobieństwa a posteriori. Zgodnie z regółą Bayesa: możemy więc napisać P (C k x) = P (x C k)p (C k ) P (x) = P (C k x) = P (C k )g k (x) P (x C k )P (C k ) k P (x C k )P (C k ) gdzie P (x C k ) g k (x) = k P (x C k )P (C k ) Jest to postać znormalizowanej funkcji radialnej. P (C k ) można traktować jako wagi drugiej warstwy.
Sieci neuropodobne IX, specyficzne architektury 11 Klasyfikacja sieciami RBF (2) Jeżeli rozkładów prawdopodobieństwa P (x C k ) nie da się wyrazić jedną funkcją można zastosować model mieszany: oraz Oznaczając: P (x C k ) = g j (x) = P (x) = M P (x j)p (j C k ) j=1 M P (x j)p (j) j=1 M P (x j)p (j) j =1 P (x j )P (j ) = P (j x) dostajemy w kj = P (j C k)p (C k ) P (j) P (C k x) = = P (C k j) M w kj g j (x) Tak więc na wyjściu sieci z jednostkami RBF postaci g j i wagami w warstwie wyjściowej w kj otrzymujemy prawdopodobieństwo przynależności próbki x do klasy C k. j=1