k
y(x) = i (x) + w0
"wi
i=1
Podstawą teoretyczną działania sieci typu RBF jest twierdzenie Covera o separowalności
wzorców. Mówi ono, że złożony problem klasyfikacyjny zrzutowany nieliniowo na
przestrzeń wielowymiarową może być rozdzielony za pomocą separatora liniowego z
większym prawdopodobieństwem niż przy rzutowaniu na przestrzeń o mniejszej liczbie
wymiarów.
Udowodniono, że każdy zbiór wzorców losowo rozmieszczonych w przestrzeni
wielowymiarowej jest Ć- separowalny z prawdopodobieństwem równym jeden, pod
warunkiem zastosowania odpowiednio duzego wymiaru, na który rzutowana jest ta przestrzeń
(t.j. przestrzeń generowana przez funkcje bazowe i ).
Np. dla odseparowania dwóch klas od siebie wystarcza jeden neuron liniowy wyjściowy.
RBF wykorzystuje jako funkcje aktywacji funkcję gaussowską.
- f. Gaussowska jednowymiarowa
-( x-c)2
2
f (x) = e
c - centro
poziom szerokości (szerokość)
- f. Gaussowska wielowymiarowa
2
- ż-c
2
(ż) = e
C wektor centralny
szerokość (skalar)
Uczenie jako problem aproksymacji.
Dla N punktów
(i)
X " Rp,Yi " R1
{ }
znalezć funkcję spełniającą:
(i)
FW X = Yi, i =1..N
( )
Postać funkcji RBF:
K
(i)
FW X = h X - X
( )
()
"W
i
i=1
2
- ż-c
2
(ż) = e
Dobór szerokości () funkcji radialnych.
Szerokość musi być tak dobrana, aby w efekcie aproksymacji radialnej otrzymać gładkie
odwzorowanie.
Reguła p-sąsiadów:
p
1 2
= c - ci
j " j
p
i=1
jest brane pod uwage, że centra mają na siebie nachodzić
Algorytm hybrydowy:
Dane uczące (X,d)
cj
1.Klasteryzacja danych X
j
2. Dobór wag W przy założeniu, że cj i są znane
j
3. Korekta położeń centrów.
" Y= G "W
1 2
" T=(y-d) E=
2
" Minimalizacja E względem oraz
j j
np. największego spadku
E
Cj (k +1) = C (k) -
j
C
j
E
(k +1) = (k) -
j j
j
" Jeśli warunek stopu niespełniony go to 2.
(dla nowych C oraz wyznacz nowe wagi W)
j j
15. Uczenie WTA i WTM - porównanie
WTA (Winner Takes All - wygrany bierze wszystko ) i WTM (Winner Takes Most - wygrany
bierze większość ) należą do metod nauki po przez współzawodnictwo (bez nauczyciela) .
Zasada WTA : Tylko neuron zwycięski ma prawo uaktualnić swoje wagi, tzn. przysunąć się,
do wektora x(k) wejściowego . Inne neurony pozostają na swoich miejscach. Wagi
zwycięskiego neuronu mogę zostać uaktualnione w zależności od różnicy miedzy waga a
wektorem. Podczas ustalania wag, pod uwagę brany jest współczynnik uczenia. Zasada WTM
: Zmianie nie tylko wagi neuronu - zwycięzcy, ale również jego "sąsiadów", natomiast wagi
innych neuronów pozostają niezmienione. Wagi "sąsiadów" aktualizowane są z mniejszym
współczynnikiem zbieżności niż wagi neuronu zwycięskiego, ale biorą udział w procesie
aktualizacji. Zasada ta jest rozwinięciem WTA i została wprowadzona w celu zwiększenia
zbieżności uczenia się sieci.
16. Siec samoorganizująca się przez współzawodnictwo jako mapa
Kohonena
System, który miałby realizować funkcjonowanie sieci samoorganizującej powinien składać
się z kilku podstawowych elementów. Pierwszym z nich jest macierz neuronów pobudzanych
przez sygnały wejściowe. Każdy neuron w takiej macierzy musi mieć ściśle określone miejsce
w przestrzeni oraz określonych sąsiadów. Kolejną częścią składową sieci jest mechanizm,
który dla każdego neuronu określa stopień podobieństwa jego wag do danego sygnału
wejściowego czyli uczenie się sieci przez WTA bądz WTM. Wreszcie konieczne do
przeprowadzenia samoorganizacji jest, aby sieć była wyposażona w zdolność do adaptacji
wartości wag neuronu zwycięzcy i jego sąsiadów w zależności od siły, z jaką odpowiedział on
na dane wejście. Topologię sieci można w łatwy sposób określić poprzez zdefiniowanie
sąsiadów dla każdego neuronu. Załóżmy, że jednostkę, której odpowiedz na dane pobudzenie
jest maksymalna, będziemy nazywali "obrazem" tego pobudzenia. Wtedy możemy przyjąć, że
sieć jest uporządkowana, jeśli topologiczne relacje między sygnałami wejściowymi i ich
obrazami są takie same.
18. Sieć samoorganizacji poprzez współzawodnictwo algorytmy uczące.
Celem uczenia sieci samoorganizących się przez konkurencję neuronów jest takie
uporządkowanie neuronów (dobór wartości ich wag), które zminimalizuje wartość
oczekiwaną zniekształcenia, mierzoną jako błąd popełniany przy aproksymacji wektora
wejściowego x wartościami wag neuronu zwyciężającego w konkurencji. Przy p wektorach
wejściowych x i zastosowaniu normy euklidesowej błąd ten może być wyrażony wzorem.
p
1
E = xi -Ww(i)
"
p
i=1
Ww(i) - waga neuronu zwyciężającego przy prezentacji wektora xi
Numery neuronów zwyciężających przy kolejnych prezentacjach wektorów x tworzą tzw.
książkę kodową. Stosuje się tu algorytm WTA(Winner Takes All). Po prezentacji wektora x
jest obliczana aktywność każdego neuronu. Zwycięzcą zostaje neuron o największym sygnale
wyjściowym, ma on przywilej adaptacji swoich wag w kierunku wektora x. Pozostałe
neurony nie podlegają adaptacji. Algorytmy WTA są algorytmami słabo zbieżnymi. W
praktyce zostały one zastąpione algorytmami WTA, różniącymi się między sobą przede
wszystkim postacią funkcji G(i,w).
Algorytm Kohonena
W samoorganizujących się mapach odwzorowań topologicznych Kohonena określa się
najpierw zwycięzcę stosując euklidesową miarę odległości, a następnie wartość
współczynnika adaptacji neuronów należących do sąsiedztwa zwycięscy.
G(i,x) = 1 dla d(i, w) d" ,
0 dla pozostałych
d(i,w) - 1 odległość eukl. miedzy wektorami wag neutronu zwycięscy i neutronu i -tego
- promień sąsiedztwa o wartości malejącej wraz z czasem uczenia
Tego typu sąsiedztwo nosi nazwę sąsiedztwa prostokątnego
Drugim typem stosowanego sąsiedztwa jest sąsiedztwo gaussowskie
2
# ś#
d (i, w)ź#
ś#
G(i, x) = expś#-
22 ź#
# #
O stopniach adaptacji neuronów z sąsiedztwa zwycięscy decyduje tu nie tylko odległość
euklidesowa neuronu i tego od zwycięscy, ale również promień sąsiedztwa. W
przeciwieństwie do sąsiedztwa gaussowskiego (gdzie każdy neutron podlegał adaptacji w
jednakowym stopniu), przy sąsiedztwie gaussowskim stopień adaptacji jest zróżnicowany i
zależy od wartości funkcji Gaussa. Prowadzi to do znacznie lepszych rezultatów uczenia i
lepszej organizacji sieci.
Algorytm stochastycznej relaksacji
Wszystkie neurony podlegają adaptacji z prawdopodobieństwem określonym rozkładem
Gibbsa.
#
x -Wi 2 ś#
ź#
expś#-
ś# ź#
T
# #
P(i) =
2
#
n
x -Wj ś#
ź#
"expś#
ś#- ź#
T
ś# ź#
j=1
# #
T tzw. temperatura , podobnie jak w procesie wyżarzania
W procesie uczenia temperaturę obniża się od wartości maksymalnej do zera, w wyniku
tego w granicy algorytm scholastyczny przekształca się w zwykły algorytm WTA.
G(i,x) = 1 dla P(i)>P,
0 dla pozostałych
P liczba losowa z przedziału [0,1]
Przy odpowiedniej organizacji procesu uczenia i wolnym obniżaniu temperatury algorytm
umożliwia uniknięcie pułapek minimów lokalnych i uzyskanie dobrych wyników organizacji
sieci. Ceną za to jest spowolnienie czasu uczenia.
Algorytm SCS
Modyfikacja algorytmu scholastycznej relaksacji (szybsze działanie)
G(i,w) = P(i)
1
ni(k) =
k -1
1+ (i, w)
"G j
j=1
Algorytm stał się algorytmem deterministycznym, działa skuteczniej niż alg. Scholastycznej
relaksacji, ale ma mniejszą zbieżność do rozwiązania.
Algorytm gazu neutronowego
W każdej iteracji wszystkie neurony są sortowane w zależności od ich odległości od wektora
x. Następnie ustawiane są w kolejności odpowiadającej narastającej odległości
do < d1 < d2 K < dn-1
gdzie dm = x -Wm(i) oznacza odległość i tego neuronu zajmującego w wyniku sortowania
m-tą pozycję w szeregu za neuronem zwycięzcą
m(i)
-
G(i, w) = e
m(i) oznacza kolejność uzyskaną w wyniku sortowania, a jest parametrem analogicznym
do promienia sąsiedztwa w algorytmie Kohonena. Przy = 0 tylko neuron zwycięzca podlega
adaptacji i algorytm przekształca się w zwykły algorytm WTA. Współczynnik uczenia jest
w algorytmie określany indywidualnie dla każdego neuronu i przyjmuje wartości również
malejące w czasie. Współczynnik uczenia oraz zmieniają się według funkcji.
k k
kmax
# ś#
min kmax
ś# ź# ś# ź#
(k) = max ś# ź# (k) = i(0)# min ś#
ś#
max (0)ź#
# # # i #
Algorytm gazu neuronowego jest w praktyce najskuteczniejszym narzędziem organizacji
neuronów w sieci. Przy odpowiednio dobranych parametrach jest najlepszy spośród
przedstawionych.
19. Problem normalizacji wektorów w sieciach Kohonena
W sieciach samoorganizujących się, w których podstawą uczenia się jest konkurencja między
neuronami dochodzi zawsze do problemu wyłonienia zwycięzcy , czyli neuronu, którego
Stosowanymi w tym celu metrykami są:
1)Miara Euklidesowa
N
d(x,wi)=||x-wi||= - wij )2
"(x j
j=1
2)Iloczyn skalarny
d(x,wi)=1- x wi=1-||x|| ||wi|| cos (x,wi)
3)Miara według normy L1
N
d(x,wi)= x - wij |
"| j
j=1
4)Miara według normy L"
d(x,wi)=max | xj - wij |
Proces samoorganizacji sieci prowadzi zawsze do spójnego podziału przestrzeni danych ,
jeżeli choć jeden z wektorów x,w podlega normalizacji. Widać to na przykładzie iloczynu
skalarnego, gdzie niezastosowanie normalizacji może doprowadzić do niespójnego podziału
przestrzeni Jeżeli ||wi||=const , wtedy iloczyn ||x|| ||wi|| także jest stały i o aktywacji neuronu
decyduje cos(x,wi) , stając się wspólną miarą dla całej sieci. Dodatkowo należy zaznaczyć , że
przy normalizacji wag miara Euklidesowa i iloczyn skalarny są sobie równe. Wykazano
natomiast potrzebę normalizacji wektorów przy małych wymiarach przestrzeni. Dokonujemy
jej poprzez:
" Redefinicję składowych wektora wg. Wzoru:
xi
Xi !
N
xi2
"
i=1
" Zwiększenie wymiaru przestrzeni o jeden , przy takim wyborze składowej N+1
wektora , że:
N +1
xi2 = 1
"
i=1
Przy zwiększeniu wymiaru wektora wejściowego efekt normalizacji staje się coraz mniej
widoczny i przy dużych wymiarach (N>200) normalizacja nie odgrywa większej roli w
procesie samoorganizacji.
20. Sieć jednokierunkowa ICA - podstawowe zależności
Sieć ta jest rodzajem liniowych , samoorganizujących się sieci, wykorzystujących uogólnioną
regułę Hebba. Głównym zadaniem jest analiza składników niezależnych. Sieć
jednokierunkowa eliminuje podstawową wadę sieci rekurencyjnych. W sieci rekurencyjnej
ciężko było zachować stabilność przy separacji sygnałów , szczególnie , gdy macierz
mieszająca A była zle uwarunkowana, a sygnały zródłowe różniły się tylko pod względem
amplitudy. Schemat ogólny sieci jednokierunkowej ICA przedstawia rysunek:
Sygnały zmieszane xi(t) stanowią jedyne zródło informacji dla sieci. Dla tej sieci po
przykładowym przyjęciu jednej z reguł uczących dla sieci rekurencyjnej (np. reguły
Cichockiego) otrzymuje się zależność adaptacyjną wag zapisaną w postaci macierzowej:
dW
T
= (t)W[1- f ( y(t)[g( y(t))] ]W
dt
z warunkiem początkowym W(0)=1,mającą identyczne własności jak algorytm uczący sieci
rekurencyjnej , z której powstała. Podobnie jak w sieciach rekurencyjnych , współczynnik
uczenia (t) stanowi funkcję malejącą w czasie do zera. W praktyce powstało wiele odmian
zależności adaptacyjnej, charakteryzującymi się dobrymi własnościami przy zły
uwarunkowaniu macierzy A lub przy dużym zróżnicowaniu amplitud sygnałów zródłowych.
Można spośród nich wyróżnić
1. algorytm Cichockiego-Amari-Younga
2. algorytm opierający się na gradiencie naturalnym
3. algorytm Cardossa
21. Metody poprawy zdolności generalizacji sieci neuronowych
Generalizacja to zdolność do prawidłowego odtwarzania procesu na podstawia
informacji zawartej w wektorze wejściowym x niebiorącym udziału w uczeniu.
Po uzyskaniu struktury prawie optymalnej, można dokonać regularyzacji struktury
poprzez obcinanie wag lub neuronów ukrytych.
Metody:
Obcinanie wag
Obcinanie neuronów ukrytych
Obcinanie wag i neuronów ukrytych
N
U=Ł WiXi
i=0
W grupie x1-xn wszystkie mają równe znaczenie przy tworzeniu wyników (są
porównywalnej wielkości), waga decyduje o wielkości.
w1=100 x1=0.8
w2=1 x2=0.5
w3=0.01 x3=1
U=100x0.8+1x0.5+0.01x1
(ta ostatnia najmniej waży i można ją odjąć)
U=100x0.8+1x0.5
Obcinamy wagi te, które w sposób zdecydowany są minejsze, co do modułu, od
pozostałych.
Po obcięciu wag trzeba douczyć sieć (odcięcie jest jak psucie mózgu).
Można obciąć do 30% i poprawia to zdolności sieci.
po odcięciu błąd uczenia rośnie do 30%
błąd testowania maleje do 30%
obcięcie neuronów wyjściowych to ingerencja w dane (obcinamy dane niepotrzebne)
Metoda funkcji i kar
Aby zmusić sieć do minimalizacji wartości wag modyfikuje się funkcje celu o część
kary za zbyt duże wartości wag.
modyfikacja minimalizująca wszystkie wagi
Ezm(w)=E(w)+łŁ wi, j
(funkcja zmodyfikowana) (współczynnik kary za zbyt duże wagi)
(funkcja zwykła)
min Ezm(w)
Wszystkie wagi (nawet potrzebne) są zmniejszane.
taka modyfikacja nie zmusza duzych wag do minimalizacji:
Ezm(w)=E(w)+ łŁ[wi, j/(1+Łwi, j)]
Technika funkcji wag służy do bezpośredniej eliminacji niepotrzebnych neuronów ukrytych.
Neuron (ukryty) nie jest potrzebny, gdy:
Zawsze odpowiada tym samym sygnałem na pobudzenie
Zawsze odpowiada 0
Neuron ukryty pełni użyteczną funkcje, jeśli wariancja jego odpowiedzi przy różnych xi jest
duża:
k p
Ezm(w)=E(w)+ łŁ Ł e("ij)
i=1 j=1
"ij zmiana sygnału neuronu i-tego przy pobudzeniu sieci wektorem xj
k liczba neuronów ukrytych
e("ij) powinno być małe przy dużych "ij
powinno być duże przy małych "ij
Typowe:
e("ij)=(1/(1+"ij ))
To, że waga jet zbyt mała nie oznacza że jest nieistotna.
Powinno się odcianć te wagi, które najmniej znaczą na wyjściu.
23. Algorytmy uczenia sieci Hopfielda - porównanie
Algorytmy uczenia sieci Hopfielda porównanie
Sieć Hopfielda jednowarstwowa rekurencyjna sieć autoasocjacyjna. Charakteryzuje się
brakiem sygnałów wejściowych. Uczenie sieci metodą przypisania wag bez rekurencyjnego
procesu uczącego.
Algorytmy uczące:
Algorytm Hebba
W przypadku prezentacji pojedynczego wzorca uczącego
1
wij = xixj
N
W przypadku wielu wzorców uczących x(k) dla k = 1,2,...,p, wagi wij dobierane są według
uogólnionej reguły Hebba
p
1
( k ) ( k )
wij = i
"x xj
N
k =1
Taki tryb uczenia sprawia że wagi przyjmują wartości średnie wynikające z uśrednienia wielu
próbek uczących.
Reguła Hebba jest mało efektywna i w fazie odtworzeniowej przy istnieniu szumu prowadzi
do licznych przekłamań. Pojemność sieci (liczba zapamiętanych wzorców ) wynosi około
14% przy dopuszczalnym błędzie względnym =1%.
Metoda rzutowania
Metoda oparta na założeniu ,że przy właściwie dobranych wagach każdy wzorzec x podany
na wejście generuje na wyjściu sieci samego siebie. Oznacza to w zapisie macierzowym
WX = X
gdzie W jest macierzą wag o wymiarze NxN a X macierzą kolejnych wektorów x(i) o
wymiarach Nxp. Rozwiązaniem tego układu jest
t T
W = X (X X )-1 X
po zapisaniu w postaci iteracyjnej otrzymujemy postać zależną od kolejnych wektorów p
1
(i) (i-1) (i-1) (i-1)
W = W + [W x(i) - x(i) ][W x(i) - x(i) ]T
(i-1)
[x(i) ]T x(i) - [x(i) ]T W x(i)
Zastosowanie metody rzutowania zwiększa pojemność maksymalną sieci no N-1.
Metoda rzutowania "
Metoda jest gradientową odmianą algorytmu minimalizującego odpowiednio zdefiniowanej
funkcji celu. Dobór wag odbywa się rekurencyjnie w cyklu po wszystkich wzorcach uczących
powtarzanym wielokrotnie
W ! W + [x(i) -Wx(i) ][x(i) ]T
Ż#Ż#
N
gdzie jest współczynnikiem uczenia . W przeciwieństwie do zwykłej metody rzutowania
metoda rzutowania " wymaga wielokrotnej prezentacji wzorców Ado ustalenia się wag.
Metoda Hebba jest najsłabszą z metod uczenia sieci Hopfielda. Wykazuje ona najmniejszą
pojemność wyuczonej sieci o raz brak tolerancji na zaszumienie wzorców w fazie
odtworzeniowej.
25. Neuron sigmoidalny i perceptronowy (różnice w działaniu i uczeniu).
Sieć BAM dobór wag, funkcja energetyczna i jej związek z odtwarzaniem.
" Neuron sigmoidalny
To neuron o funkcji aktywacji sigmoidalnej. Może być ona dwóch rodzajów:
o Funkcja sigmoidalna unipolarna
Funkcja ta jest najczęściej wykorzystywana przy budowie sieci. Opisana jest
następującym wzorem:
y=1/(1+exp(-beta*z))
Przy beta rosnącym do nieskończoności wykres pokrywa się z wykresem funkcji
progowej.
o Funkcja sigmoidalna bipolarna
Funkca jest drobnym przetworzeniem powyższej. Dzięki temu został rozszerzony przedział wartości wyjścia (-1,1): y=2/(1+exp(-
beta*z))-1
" Neuron perceptronowy
To neuron o skokowej funkcji aktywacji
o Funkcja liniowa
W przypadku tej funkcji wielkiej filozofii nie ma: suma ważona jest
bezpośrednio przepisywana na wyjście:
y=z
o 'Obcięta' funkcja liniowa
Funkcja ta zapewnia, że sygnał wyjściowy nigdy nie będzie mniejszy niż -1 ani
większy od jedynki. Dzieje się to jednak w sposób bardzo brutalny: jeżeli z<-1 to
y=-1, jeżeli z>1 to y=1, w pozostałych przypadkach y=z
" Sieć BAM
Jest to sieć, która przy nadzorowanym procesie uczenia opiera się na algorytmie
rekurencyjnym dobierania wag. BAM (ang. Bidirectional Associative Memory)
Dwukierunkowa Pamięć Asocjacyjna ( Kosko (1992), Fausett (1994));
" Dobór wag w sieci BAM
Sieć BAM nie poprzestaje weryfikacji wag w momencie gdy wartości wejściowe dotrą
do warstwy wyjściowej. Faza uczenia kończy się w momencie ustabilizowania sieci, czyli
w przypadku gdy między dwoma cyklami dobierania wag nie ma zmiany między
wartościami wejściowymi a wyjściowymi. Sieć BAM jest stosunkowo prosta i posiada
adresowaną pamięć. Używa się jej do rozpoznawania wzorców lub przy zaszumionych
lub uszkodzonych wzorcach.
" Funkcja energetyczna i jej związek z odtwarzaniem
Funkcja energetyczna jest nierosnącą funkcją dyskretnego czasu k, co powoduje, że
sieć zmienia podczas swej pracy sygnały wyjściowe w taki sposób by osiągnąć stan
odpowiadający minimum funkcji energetycznej czyli odtworzyć któryś z zapamiętanych
wzorców.
Oprócz minimów odpowiadających zapamiętanym wzorcom mogą powstać również
minima nie odpowiadające żadnemu z wzorców - tzw. minima fałszywe. Fakt ten może
spowodować, że w procesie rozpoznawania żaden z wzorców nie zostanie odtworzony
pomimo, że wszystkie wzorce zostały prawidłowo zapamiętane (wokół nich powstały
odpowiadające im minima).
1. v2 Uczenie z nauczycielem i bez nauczyciela porównanie.
" Wstęp
Przy rozwiązywaniu konkretnych problemów z użyciem sieci neuronowych pojawia się
niezmiennie ten sam problem. Jest to kwestia doboru odpowiednich wag na wejściach
jednostek. W przypadku prostych przykładów wagi te przy użyciu odrobiny sprytu udaje się
dobierać a priori. Jednakże większe możliwości stwarza zmiana wag w trakcie obliczeń.
Wagi są wtedy zmieniane przy kolejnych iteracjach obliczeń. Proces dostrajania tych wag
określamy jako uczenie
Istnieją dwa najczęściej stosowane algorytmy nauczania sztucznych sieci neuronowych jest
to nauczanie z nauczycielem i nauczanie bez nauczyciela (zwane też nauczaniem
nadzorowanym i nienadzorowanym).
" Uczenie z nauczycielem
W tej metodzie właściwy rezultat jest znany czyli znane są prawidłowe dane wyjściowe. Te
dane podawane są sieci, która zmieniając poszczególne wagi połączeń stara się otrzymać
wynik jak najbardziej podobny do podanego. Po treningu sieć poddawana jest testom,
podczas których sieć nie zna prawidłowych rozwiązań a podane przez nią rozwiązanie jest
porównywane z prawidłowym. Szczególnym przypadkiem tego sposobu uczenia sieci jest
uczenie ze wzmocnieniem (sygnał zwrotny niesie informację czy sygnał wyjściowy jest
prawidłowy, czy nie - sama prawidłowa odpowiedz nie jest podawana)
Przykłady: Metoda Delta
ADALINE (ADAptive LINear Element)
MADALINE (Many ADALINEs)
" Uczenie bez nauczyciela
Metoda ta jest najbardziej zbliżona do procesu uczenia mózgu człowieka, gdyż wielu
czynności mózg uczy się bez świadomego i celowego instruktażu. Tak właśnie się dzieje w tej
metodzie, którą stosujemy, kiedy cel uczenia nie jest określony przez konkretne, prawidłowe
przykłady. Jedyną informacją, która musi wystarczyć jest sama wewnętrzna struktura
sygnałów wejściowych (przykładów, przy pomocy których można wytrenować sieć). Na
podstawie wewnętrznych zależności w podanych informacjach sieć neuronowa musi stworzyć
własne kategorie i będzie rozpoznawać (klasyfikować) podane sygnały wejściowe (generując
odpowiednie sygnały na wyjściu).
Przykłady: Metoda Hebba i jej modyfikacje.
" Podsumowanie
Wybór metody uczenia sieci neuronowej zależy od postawionego problemu i początkowych
danych, które są podstawą do jego rozwiązania. Jeśli mamy zestaw danych testowych i
możemy przeprowadzić dobranie wag sieci na podstawie tych danych to stosujemy metody
uczenia z nauczycielem, natomiast w przypadku gdy nie wiemy jak sklasyfikować sygnały
wejściowe wybieramy uczenie bez nauczyciela. Metoda Hebba posiada istotną wadę
mianowicie prowadzi do procesu rozbieżnego (wagi są przez cały czas zwiększane) dlatego w
pewnych przypadkach stosuje się ją do już nauczonych sieci np. z nauczycielem w celu
zwiększenia ich możliwości adaptacyjnych, lub w rozwiązaniach hybrydowych (jedna
warstwa tak, druga inaczej).
2. v2 Neuron perceptronowy i sigmoidalny (różnice w działaniu i uczeniu)
Perceptron:
" Nieliniowa funkcja aktywacji perceptronu jest funkcją nieciągłą typu skokowego, w
związku z czym sygnał wyjściowy neuronu może przyjmować tylko dwie wartości, 0
lub 1
" Uczenie perceptronu należy do grupy uczenia z nauczycielem, polega na takim
doborze wag wij, aby sygnał wyjściowy yi był najbliższy wartości zadanej di.
" Najpopularniejszą metodą uczenia perceptronu jest zastosowanie reguły perceptronu
(jest ona szczególnym przypadkiem reguły Widrowa-Hoffa
" Cechą charakterystyczną zarówno reguły perceptronu jak i Widrowa-Hoffa jest
wykorzystywanie w uczeniu jedynie informacji o aktualnej wartości sygnału
wyjściowego neuronu i wartości zadanej.
Neuron sigmoidalny:
" Funkcja aktywacji jest ciągła i przyjmuje postać funkcji sigmoidalnej unipolarnej lub
bipolarnej (2.7), (2.8)
" Cechą funkcji sigmoidalnej jest jej różniczkowalność.
" Uczenie neuronu sigmoidalnego odbywa się zwykle w trybie z nauczycielem, przez
minimalizację funkcji celu.
" Założenie ciągłej funkcji aktywacji umożliwia zastosowanie w uczeniu metody
gradientowej. Najprościej jest przyjąć metodę największego spadku.
" Na skuteczność uczenia ma wpływ dobór współczynnika uczenia.
" Przyjmuje się go bądz jako stałą wielkość, bądz zmienianą w trakcie uczenia w sposób
adaptacyjny lub dobieraną w każdym kroku uczącym na podstawie procesu
minimalizacji kierunkowej
" Metoda gradientowa zastosowana w uczeniu neuronu gwarantuje osiągnięcie jedynie
minimum lokalnego
" Pomocne może być zastosowanie uczenia z tzw. momentem lub rozpędem. W
metodzie tej proces aktualizacji wag uwzględnia nie tylko informację o gradiencie
funkcji, ale również aktualny trend zmian wag.
" Czynnik momentu nie może całkowicie zdominować procesu uczenia, gdyż
prowadziłoby to do niestabilności.
3. v2 Równanie adaptacyjne wag w sieci przy zastosowaniu uczenia
gradientowego. Podać wzór adaptacji przy metodzie największego spadku.
W[](k +1) = W[](k) -g(w) - adaptacja wag w metodzie gradientowej największego spadku.
`
"f "Ui
Wij (k +1) = Wij (k) -[ f (ui ) - di ] = = Wij (k) -i f (ui )X
j
"Ui "Wij
- współczynnik uczenia
i - błąd bezwzględny w i tej próbie
`
f - pochodna funkcji aktywacji
Xj składowa j-ta wektora i-tego X
Algorytm gradientowy kończy uczenie kiedy dojdzie do minimum lokalnego lub
globalnego. Możliwe utknięcie w minimum lokalnym (nie mamy gwarancji, że punkt
wpada w minimum globalna, a nie lokalne).
Jedną z metod poprawy efektywności jest modyfikacja metody do tzw. metody uczenia z
momentem.
`
Wij (k) -i f (ui )X
j
przyjmując
`
i f (ui )X -- "Wij (k +1)
j
`
Wij (k) -i f (ui )X +ą"Wij (k)
j
5. v2 Istota zdolności generalizacji sieci. Warunki dla uzyskania dobre
generalizacji.
Jedną z podstawowych własności sieci neuronowych jest zdolność generalizacji nabytej
wiedzy. Generalizacja ogólnie mówiąc jest to zdolność rozpoznawania danych należących do
zbioru, ale zbioru takiego na którym sieć nie była trenowana
Większość stosowanych obecnie algorytmów redukcji sieci(tym samum poprawy ich
zdolności generalizacji) może być sklasyfikowana do dwóch grup. W pierwszej grupie
estymuje się wrażliwość funkcji celu na usunięcie wagi lub neuronu. Wagi o najmniejszej
wrażliwości, dające najmniej widoczny wpływ na wartość funkcji celu, są usuwane, a proces
uczenia kontynuowany na tak zredukowanej sieci.
W drugiej grupie metod modyfikuje się funkcje celu, wprowadzając składniki kary za
nieefektywną strukturę. Najczęściej wprowadza się do definicji funkcji celu składniki
wspierające małe wartości amplitudy wag. Ta metoda jest mniej efektywna od pierwszej za
względu na to, że małe wartości wag niekoniecznie muszą oznaczać ich mały wpływ na
działanie sieci.
Metody poprawy zdolności generalizacyjnych sieci neuronowych.
-Metody wrażliwościowe redukcji sieci
Metoda ta polega na usunięci wag, które które mają mały wpływ na sygnał wyjściowy
tzn . których wrażliwość sieci na zmianę wag jest mała.
Jednym ze sposobów poprawy zdolności generalizacji sieci jest medoda
LeCuena(OBD ang. Optimal Brain Damage). Punkt wyjścia stanowi rozwinięcie funkcji celu
w szereg Taylora w otoczeniu aktualnego rozwiązania. Dla uproszczenia zadania przyjmuje
się w tej metodzie że wobec dodatniej określoności hesjanu, macierz H jest diagonalnie
dominująca. Uwzględnia się wobec tego tylko składniki diagonalne, pomijając pozostałe.
Miarą ważności danej wagi jest w OBD współczynnik Sij, zwany współczynnikiem
asymetrii.
Wagi o najmniejszej wartości współczynnika Sij, mogą ulec obcięciu bez istotnego
zaburzenia działania sieci. Procedurę OBD można przedstawić tak:
1. Pełne wytrenowanie wstępnie wyselekcjonowanej struktury sieci przy użyciu
dowolnej metody uczenia.
2. Określenie elementów diagonalnych hesjanu odpowiadającej każdej wadze i
obliczenie parametru Sij określającego znaczenie danego połączenia synaptycznego dla sieci.
3. Posortowanie wag według przypisanych im parametrów Sij i obcięcie tych, których
wartości są najmniejsze. Powrót do punktu 1 z aktualną strukturą zredukowaną sieci i
powtórzenie procesu redukcji aż do pozbycia się wag o najmniejszym wpływie na wartość
funkcji celu. Szczególnie dobre wyniki otrzymuje się dzięki powtórzeniu douczenia sieci po
obcięci najmniej znaczących wag.
Następną metoda tego rodzaju jest metoda OBS(Optimal Brain Surgeon)
Punkt wyjścia stanowi rozwinięcie funkcji celu w szereg Taylora i pominięcie składowych
pierwszego rzędu. W tej metodzie uwzględnia się wszystkie składowe hesjanu i liczy
współczynik asymetri Si .Obcięciu ulega waga o najmniejszej wartosco Si. Dodatkowym
rezultatem tego podejścia jest prosty wzór korekty wszystkich wag, sprowadzający z
powrotem stan sieci do minimum funkcji celu mimo obcięcia wagi. Metoda polega na
-przeprowadzeniu uczenia wstępnie wyselekcjonowanej struktury aż do uzyskania minimum
funkcji
-wyselekcjonowaniu wagi która ma najmniejszą wartość współczynnika wrażliwości sieci i
ocenieniu czy wartość funkcji celu towarzysząca obcięciu wagi jest dużo mniejsza niż
wartość funkcji celu przed obcięciem. Jeśli tak jest waga ulega obcięciu w i dokonuje się
korekcji pozostałych wag po czym znowu następuje wyselekcjonowanie wagę o
najmniejszym celu itd w przeciwnym razie zakańcza się obcinanie.
Metody redukcji sieci z zastosowaniem funkcji kary
Jest to metoda, która również polega na redukcji wag. Polega ona na takiej organizacji
uczenia, która wymusza samoczynne zmniejszanie wartości wag I w rezultacie pozwala na
eliminacje tych, których wartość spadła poniżej pewnego progu. W odróżnieniu od metod
wrażliwościowych, w metodach tych modyfikuje się samą funkcję celu w taki sposób, aby
proces uczenia samoczynnie minimalizował wartości wag, aż do osiągnięcia pewnego progu,
poniżej którego przyjmuje się wartość wagi równą zeru.
Metody rozbudowy sieci
Jest to przeciwny kierunek działań polega na starcie z minimalną(zwykle zerową)
liczbą neuronów ukrytych i stopniowym ich dodawaniu aż do uzyskania dobrego stopnia
wytrenowania sieci. Proces uczenia jest połączony zwykle z częściowym sprawdzaniem
zdolności generalizacji sieci w procesie uczenia. Taki kierunek jest stosowany w algorytmie
kaskadowej korelacji Fahlmana
Dobór próbek uczących
W tej metodzie kładzie się nacisk na odpowiednie dobranie próbek uczących.
Omawiając zdolności generalizacyjne sieci neuronowej nie sposób pominąć wpływu długości
uczenia na stopień ich uzyskania. Przebieg błędu uczenia malej monotonicznie z liczbą
iteracji, podczas gdy błąd generalizacji maleje tylko do pewnego momentu, a potem zaczyna
rosnąć.
Wprowadzenie szumu do wzorców uczących
Gdy określona jest minimalna architektura sieci poprawę zdolności można uzyskać
poprzez specjalne przygotowanie zbioru wzorców uczących. Chodzi ot żeby tak dobrać te
wzorce aby podobne sygnały wejściowe generowały podobne odpowiedzi, nawet gdy nie
wchodziłyby w skład wzorców uczących. W tym celu do wzorców uczących wprowadza się
zaszumienie.
8. v2 Siec PCA w układzie kodowania i dekodowania sygnałów
Transformacja PCA zamienia dużą ilość informacji zawartą skorelowanych ze sobą danych
wejściowych w zbiór składników statystycznie niezależnych według ich ważności. Stanowi
zatem firmę kompresji stratnej.
Transformacja PCA jest ściśle związana z rozkładem macierzy korelacji według wartości
własnych. Z punktu widzenia statystycznego transformacja określa zbiór wektorów
ortogonalnych (kolejne wiersze macierzy W) mających największy wkład w wariancję
danych wejściowych. Celem algorytmów PCA jest określenie kierunków w1,& ,wk zwanych
głównymi wektorami własnymi maksymalizując E(||wiTx||2).
Rekonstrukcja wektora wejściowego x na podstawie wektora y i macierzy ortogonalnej W
odbywa się zgodnie z zależnością
x=WTy
Dokonując reprezentacji danych tylko za pomocą jednego składnika głównego oraz
skojarzonego z nim wektora własnego i wybierając jako reprezentanta największy ze
składników głównych y1, popełnia się najmniejszy błąd rekonstrukcji, maksymalizując
jednocześnie wariancję transformacji. Najmniej znaczący składnik główny ma najmniejszy
wpływ na dokładność odtworzenia danych. Kompresja danych wymaga reprezentowania tych
danych poprzez zbór największych składników głównych.
Transformacja PCA pozwala określić korelacje zachodzącą między wieloma zmiennymi w
zbiorze. Jeśli zmienne są skorelowane ze sobą znajomość jedynie części z nich wystarczy do
określenia pozostałych.
Główne zastosowanie transformacji PCA dotyczy kompresji danych. Duża ilość informacji
jest zastępowana ich zmniejszoną dawką zawartą w wektorach y i wi. W zależności od stopnia
kompresji (liczby składników głównych) można uzyskać różną jakość danych odtworzonych.
19. v2 Problem normalizacji wektorów w sieciach Kohonena
Problem normalizacji wektorów Kohonena dotyczy procesu uczenia w sieciach
samoorganizujących się (np. Kohonena). Samoorganizacja sieci Kohonena polega na
konkurencji neuronów na podstawie miary odległości wektora wag wi od wektora
wejściowego x na podstawie wybranej metryki. Modyfikowane są wagi neuronu
zwycięskiego i jego sąsiedztwa. Jako metryki stosuje się najczęściej: miarę euklidesową,
iloczyn skalarny, miarę według normy L1 lub L". W przypadku niektórych miar, np. iloczynu
skalarnego może zaistnieć sytuacja, iż przestrzeń danych zostanie w procesie samoorganizacji
podzielona niespójnie, tzn. w pewnych regionach znajdzie się po kilka neuronów, w innych
zaś nie będzie żadnego. Wykazano, że jeśli w ciągu wektorów uczących lub wagowych
występuję choć jeden wektor znormalizowany taki że ||x||=1, to przestrzeń danych zostanie
podzielona w sposób spójny.
Normalizacja wektorów odbywa się w dwojaki sposób:
a) poprzez redefinicję składowych wektora x, w taki sposób, że: (1)
b) zwiększenie wymiaru przestrzeni o 1 (RNRN+1), przy takim wyborze składowej
N+1, że (2). Zwykle zachodzi tu konieczność wcześniejszego przeskalowania wektora
x w przestrzeni RN, aby możliwe było spełnienie
x1(t)
równania (2).
w1
N
xi
w2
y1(t)
x1! (1) xi2 =1 (2)
"
N
"
i=1
xi2
"
(...)
i=1
wn
Stosując znormalizowane wektory uczące x wektory
wagowe automatycznie podążają za nimi stając się
w1
również znormalizowanymi. Jednakże normalizacja
w2
y2(t)
x2(t)
wektora wagowego powoduje, że jeśli ||wi||=const,
"
wtedy dla wszystkich neuronów iloczyn ||x|| ||wi|| jest
(...)
także stały przy określonej wartości x. O aktywacji
wn
(...)
(...)
neuronu decyduje więc cos(x,wi), stając się wspólną
w1
miarą dla całej sieci. Zaznaczmy, że przy normalizacji
yn(t)
w2
wektora wi miara euklidesowa i iloczyn skalarny są
"
sobie równe, gdyż ||x-w||2=||x||2-||wi||2-2xTwi. Stąd
(...)
min||x-wi||=max(xTwi) przy ||wi||=const.
xn(t)
wn
Ponadto normalizacja wektorów odgrywa praktyczną
rolę przy mniejszych wymiarach N przestrzeni danych
Schemat jednokierunkowej sieci ICA
np N=2, 3 itp. Wraz ze wzrostem wymiaru przestrzeni
maleje znaczenie normalizacji i przy N>200 nie ma ona
już praktycznego wpływu na proces samoorganizacji sieci.
20. v2 Sieć jednokierunkowa ICA - podstawowe zależności
Sieć jednokierunkowa ICA Independent Component Analysis podstawowe zależności
Została ona opracowana na podstawie rekurencyjnej sieci ICA Heraulta-Juttena, należy do
klasy sieci samoorganizujących się, asocjacyjnych. ICA może służyć do separacji sygnałów
niezależnych zmieszanych z zależnością określoną w macierzy Anxn. Jedynym zródłem
informacji sieci jest wektor xi(t). Dane przetworzone przez układ wag wij tworzą wektor
wyjściowy y, określony y=Wx, macierz WTRNxN, jest macierzą pełną. Przy takim rozwiązaniu
sieć jednokierunkowa jest równoważna sieci ze sprzężeniem zwrotnym, jeśli W=(t+1)-1,
gdzie t macierz wag sieci rekurencyjnej. Po przekształceniach matematycznych i
uwzględnieniu zmodyfikowanej reguły Cichockiego algorytm uczący przyjmuje postać:
dW/dt=(t)W[1-f(g(t)[g(y(t))]T)]W, z warunkiem początkowym W(0)=1. (t) jest to
współczynnik uczenia zwykle w postaci funkcji wykładniczej malejącej w czasie do 0 o
wzorze:
(t)=Ae-t/. Z matematycznego punktu widzenia proces doboru wag sieci jednokierunkowej
ICA jest tożsamy z procesem sieci rekurencyjnej. Powyższy algorytm ma właściwości
identyczne jak algorytm uczący sieci ze sprzężeniem zwrotnym. W takiej sieci wagi neuronu
odpowiadającego słabym sygnałom przyjmują duże wartości i odwrotnie, co w rezultacie
pozwala osiągnąć zrównoważoną amplitudę sygnałów wyjściowych. Sieć jednokierunkowa
eliminuje nakłady obliczeniowe wymagane w sieciach rekurencyjnych do inwersji macierzy
w każdym kroku, jest odporna na zle uwarunkowane macierze A, oraz na duże zróżnicowanie
amplitud sygnałów wejściowych.
Wyszukiwarka