Algorytmy immunologiczne

Transkrypt

Algorytmy immunologiczne
Rozpoznawanie wzorców
Dr inż. Michał Bereta
p. 144 / 10, Instytut Informatyki
[email protected]
[email protected]
www.michalbereta.pl
Dyskryminacja liniowa
Twierzdzenie:
Prawdopodobieostwo, że n obserwacji wybranych losowo według dwolnego rozkładu
ciągłego na Rp, losowo podzielonych na 2 klasy, ma własnośd liniowej
separowalności wynosi 1, gdy
natomiast w ogólności jest równe
Wniosek z twierdzenia: im różnica (2p-n) jest większa co do bezwzględnej
wielkości, tym prawdopodobieośtwo liniowej separowalności jest mniejsze (przy
losowych obserwacjach i losowym przydziale do klas).
Dyskryminacja liniowa
Jak najlepiej
rozdzielid te klasy
za pomocą
liniowej funkcji
dyskryminacyjnej?
Dyskryminacja liniowa
Szukamy takiego
kierunku, żeby po
zrzutowaniu na
niego obserwacji
(przykładów) klasy
były jak najlepiej
od siebie
oddzielone
Dyskryminacja liniowa
Funkcja
dyskryminacyjna
jest wtedy
prostopadła do
wyznaczonego
kierunku
Dyskryminacja liniowa
• Sir Rnald Fisher 1936 r.
• Liniowa analiza dyskryminacyjna (LDA, ang.
Linear discriminant analysis)
• Zakładamy, że wektory obserwacji są
wektorami w p-wymiarowej przestrzeni
Euklidesa
• Metoda prowadzi do reguły dyskryminacyjnej
opartej na funkcji liniowej
• Oryginalne sformułowanie dla g=2 klas
Dyskryminacja liniowa
• Cel:
Znajdź kierunek a w X, który najlepiej rozdziela
obie klasy, przy czym oprócz odległości między
klasami uwględnij również zmiennośd
wewnątrzgrupową (wewnątrz klas)
Dyskryminacja liniowa
• Miarą odległości między klasami jest odległośd
między wartościami oczekiwanymi przykładów
z każdej klasy
• W przypadku wielowymiarowym jest to
wektor wartości oczekiwanych dla każdego z
atrybutów
Dyskryminacja liniowa
• Próbkowym odpowiednikiem wartości
oczekiwanej jest wektorowa średnia
Dyskryminacja liniowa
• Miarą zróżnicowania danych jest w przypadku
jedego atrybutu wariancja, a w przypadku
wielowymiarowym macierz kowariancji
• Na przekątnej znajdują się wariancje
poszczególnych atrybutów
• Jest to maceirz symetryczna
Dyskryminacja liniowa
• Próbkowym odpowiednikiem macierzy
kowariancji jest macierz S
Dyskryminacja liniowa
• Wartośd wariancji rzutu wektora x na prostą o
wektorze kierunkowym a: jaka jest wariancja
aTx?
Dyskryminacja liniowa
• Założenie Fishera: klasy charakteryzują się taką
samą macierzą kowariancji
• Wpólnie dla obu klas ustala się wskaźnik
zmienności wewnątrzgrupowej
Dyskryminacja liniowa
• Próbkową miarą zmienności
wewnątrzgrupowej wzdłuż kierunku a jest
Dyskryminacja liniowa
• Sformułowanie Fishera: znajdź kierunek
najlepiej oddzielający klasy, jako kierunek
maksymalizujący wyrażenie:
Dyskryminacja liniowa
• Mając kierunek a, zrzutuj średnie obu klas
oraz nowy wektor x na ten kierunek i
zaklasyfikuj x do klasy j jeśli
dla
Dyskryminacja liniowa
• Rozwiązanie to daje często dobre wyniki
nawet jeśli założenie o równości macierzy
kowarancji nie jest spełnione.
Dyskryminacja liniowa
• Rozwiązanie : można wykazad, że poszukiwany
wektor a jest proporcjonalny do
• Rozwiązanie jest jednoznaczne z dokładnością
do długości wektora a
Dyskryminacja liniowa
• Zmienna aTx to pierwsza zmienna kanoniczna
a wektor a to pierwszy wektor kanoniczny
Dyskryminacja liniowa
• Alternatywne sformułowanie hiperpłaszczyzny
dyskryminacyjnej:
Dyskryminacja liniowa
• Reguła dyskryminacyjna: przypisz punkt x do
klasy 2 jeśli:
Dyskryminacja liniowa
Dyskryminacja liniowa
Kierunek rzutowania
Prosta dyskryminacyjna
jest prostopadła do
znalezionego kierunku i
przechodzi przez punkt
pośrodku pomiędzy
średnimi klas.
Dyskryminacja liniowa
Dyskryminacja liniowa
• Co gdy g > 2 ? (problem z wieloma klasami)
Dyskryminacja liniowa
• Sformułowanie zadania: znajdź a
maksymalizujące wyrażenie:
gdzie
Dyskryminacja liniowa
• Rozwiązanie:
Wektorem maksymalizującym to wyrażenie
jest wektor własny macierzy W-1B
odpowiadający największej wartości własnej
tej macierzy.
Dyskryminacja liniowa
• Reguła dyskryminacyjna
Obserwację x przypisz do klasy j jeśli
Dla wszystkich
Dyskryminacja liniowa
• Można również rozwiązad
zadao
dyskryminacji pomiędzy parami klas
• Należy przyjąd wtedy wpólną macierz
kowariancji wewnątrzgrupowej
Dyskryminacja liniowa
• Rzutowanie na jeden kierunek może nie
wystarczyd
• Można poszukiwad kolejnych kierunków
najlepiej rozdzielających klasy, ale
jednocześnie ortogonalnych do wcześniej
znalezionych kierunków
• Znajdź ar maksymalizujący
po
warunkiem, że
Dyskryminacja liniowa
• Kolejne zmienne kanoniczne są
nieskorelowane z poprzednimi
• Kolejny kierunek kanoniczny jest wyznaczany
jako wektor własny odpowiadający r-tej co do
wielkości wartości własnej macierzy W-1B
• Najwyższy możliwy rząd macierzy B wynosi g-1
zatem tyle można otrzymad wektorów
kanonicznych.
Dyskryminacja liniowa
• Wektory kanoniczne mogą służyd do
przeniesienia problemu klasyfikacyjnego do
nowej przestrzeni (oryginalne atrybuty
zastępujemy zmiennymi kanonicznymi)
• W nowej przestrzeni problem może byd
rozwiązywany dowolnymi metodami
(dowolnymi klasyfikatorami)
Dyskryminacja liniowa
Regresja liniowa
• Zadanie dyskryminacji można potraktowad jako
zadanie estymacji funkcji o wartościach nominalnych
(np. ze zbioru {0, 1} dla dwóch klas ).
• Funkcja regresji jest dana warunkową wartością
oczekiwaną zmiennej objaśnianej (wskaźnik klasy w
naszych zadaniach dyskryminacji).
• Aby rozwiązad problem dyskryminacji z wieloma
klasami za pomocą regresji liniowej, przedstawimy je
jako wielowymiarową analizę regresji (zmienna
objaśniana ma postad wektorową)
Dyskryminacja liniowa
Regresja liniowa
Dla dwóch klas:
• Jeśli oszacowane prawdopodobieostwo warunkowe
jest >0.5 to x jest klasyfikowany do klasy 1, jeśli <0.5
to do klasy 0.
Dyskryminacja liniowa
Regresja liniowa
Dla liczby klas >2:
• Etykiety klas zakodowane są za pomocąwektora
wskaźnikowego o g współrzędnych (g – liczba klas)
• Etykieta klasy k ma 1 na pozycji k-tej i 0 na wszystkich
innych pozycjach
• Przykład:
– Dla 5 klas, jeśli x pochodzi z klasy 3, jego wektor
wskaźnikowy to *0,0,1,0,0+
• Zadanie polega na jednoczesnym rozwiązaniu
zadania regresji dla każdej pozycji wektora
wskaźnikowego
Dyskryminacja liniowa
Regresja liniowa
Stosując zapis macierzowy mamy macierz obserwacji:
oraz macierz etykiet obserwacji (wskaźnikowa macierz
wektorów oodpowiedzi):
Dyskryminacja liniowa
Regresja liniowa
Stosując zapis macierzowy mamy macierz obserwacji:
Kolumna jedynek
umożliwia
wystąpienie
wyrazu wolnego.
oraz macierz etykiet obserwacji (wskaźnikowa macierz
wektorów oodpowiedzi):
Dyskryminacja liniowa
Regresja liniowa
• Co się stanie jak nie będzie wyrazu wolnego?
• Przykład w 2D (dwa atrybuty):
– Szukamy granicy decyzyjnej między dwiema klasami w
postaci liniowej zależności atrybutów x:
– w0 to wyraz wolny
y = w1*x1 + w2*x2 + w0
Przykład x jest klasyfikowany do pierwszej klasy jeśli y>0
a do klasy drugiej w przeciwnym przypadku, zatem
granica decyzyjna to
0 = w1*x1 + w2*x2 + w0
Dyskryminacja liniowa
Regresja liniowa
0 = w1*x1 + w2*x2 + w0
z tego
x2 = -w1/w2*x1 – w0/w2
Jest to zależnośd typu
y = ax+b
Jeśli brak w0 (tzn. w0=0) to
y = ax
tzn. prosta musi przechodzid przez początek układu
współrzędnych (nie może reprezentowad dowolnej
granicy)
Dyskryminacja liniowa
Regresja liniowa
Celem regresji liniowej jest znalezienie współczynników
zależności liniowej (macierz B), które minimalizują
odpowiednie wyrażenie oparte na metodzie
najmniejszych kwadratów
Suma kwadratów norm Euklidesowych
Dyskryminacja liniowa
Regresja liniowa
• Rozwiązanie (przez tzw. pseudoinwersję)
Dyskryminacja liniowa
Regresja liniowa
• Mamy do czynienia z prostymi liniowymi
estymatorami prawdopodobieośtwa a posteriori
p(k|x)
• Można powiedzied, że operamy się na metodzie
Bayesa, tyle że nie uwzględniamy
prawdopodobieostw a priori oraz estymatory są
bardzo proste
• Można wykazad, że
Uwaga: wartości w tej
sumie mogą byd >1 lub
ujemne!
Dyskryminacja liniowa
Regresja liniowa
• Reguła dyskryminacyjna: wybierz klasę
odpowiadającą największej wartości współrzędnych
wketora odpowiedzi
Dyskryminacja liniowa
Regresja liniowa
• Gdy g=2:
– Rozwiązanie regresyjne jest bardzo bliskie rozwiązaniu
przez metodę LDA (Fishera)
– Model regresji liniowej wyznacza kierunek zgodzny z
kryterium LDA
– Obie reguły dyskryminacyjne są identyczne, gdy obie próby
uczące (z obu klas) są równoliczne
Dyskryminacja liniowa
Regresja liniowa
• Miarą dopasowania modelu w regresji liniowej jest
współczynnik R2 zdefiniowany jako proporcja
wariancji wyjaśnionej przez model
– R2=1-model bardzo dobry
– R2=0-model nie pasuje do danych
Dyskryminacja liniowa
Model logistyczny
• Model logistyczne zapewnia wartości estymatora
p(2|x) w przedziale [0,1]
• Jest to szczególny przypadek uogólnionego modelu
liniowego
Dyskryminacja liniowa
Model logistyczny
• Dla g=2:
Dyskryminacja liniowa
Model logistyczny
• Estymacja parametrów (w0, w) odbywa się na
podstawie próby uczącej poprzez metodę nawiększej
wiarygodności, czyli maksymalizacji podlega:
Proces przebiega iteracyjnie
Dyskryminacja liniowa
Model logistyczny
Reguła dyskryminacyjna:
Wybierz większą z wartości
oraz
odpoweidnio zaklasyfikuj obserwację x.
I
Dyskryminacja liniowa
Model logistyczny
• Przypadek wielu klas (g>=2)
….
Klasa g wybrana dowolnie
Dyskryminacja liniowa
Model logistyczny
• Stosując ten model dostajemy:
dla k=1,..,g-1
Spełnione jest:
Dyskryminacja liniowa
Model logistyczny
• Jeśli klasy mają rokłady normalne o takiej samej
macierzy kowariancji, równe pradopodobieostwa a
priori to dla g=2 model logistyczny daje dokładnie to
samo rozwiązanie do model LDA.
Dyskryminacja liniowa
Perceptron
Dyskryminacja liniowa
Perceptron
1
w0
w1
x1
w2
x2
Przykład dla dwóch atrybutów
Funkcja progowa –
funkcja aktywacji
perceptronu
Dyskryminacja liniowa
Perceptron
• Zakładamy liniową separowalnośd danych
• Szukamy hiperpłaszczyzny decyzyjnej w postaci
• Wektory w oraz x zwierają już wyraz wolny (zwany
również biasem)
• W przypadku poprawnej kalsyfikacji, dla pierwszej
klasy mamy
a dla drugiej
Dyskryminacja liniowa
Perceptron
• Oznaczenie:
• Wtedy dla zi poprawnie zaklasyfikowanego mamy:
Dyskryminacja liniowa
Perceptron
• Dla przykładów ze zbioru M (przykłady, dla których
brak poprawnej klasyfikacji przez perceptron)
definiujemy tzw. Kryterium perceptronowe:
Zadanie uczenia perceptronu:
zminimalizuj ze względu na wagi w wartośd kryterium
perceptronowego.
Dyskryminacja liniowa
Perceptron
• Jeśli klasy rzeczywiście są liniowo separowalne, to
zadanie to można łatwo rozwiązad metodą
najszybszego spadku.
• Gradient kryterium perceptronowego wynosi
• Aktualizacja wag odbywa iteracyjnie się zgodnie z:
nl jest parametrem uczenia sterującym szybskością
zmian wartości wag.
Dyskryminacja liniowa
Perceptron
• Aktualizacja wag może odbywad się:
– W trybie wsadowym (poprzedni slajd)
– Po prezentacji każdego przykłądu, jeśli został on błędnie
zaklasyfikowany
Dyskryminacja liniowa
Perceptron
• Dowiedzione jest, że jeśli klasy są liniowo
separowalne, oraz przy pewnych założeniach co do
wartości nl, algorytm ten znajduje rozwiązanie w
skooczonej liczbie kroków.
• Wady
– Czasami potrzebna jest duża liczba iteracji
– Rozwiązanie nie jest jednoznaczne, zależy od
początkowego wektora wag
– Jeśli problem nie jest liniowoseparowalny, algorytm nie
jest zbieżny
• ciężkie do wykrycia: brak zbieżności vs wolna zbieżnośd
Dyskryminacja liniowa
Perceptron
Reguła Widrowa-Hoffa
1
w0
w1
x1
w2
x2
Przykład dla dwóch atrybutów
Na wyjściu neuronu jest
liniowa kombinacja
atrybutów (brak funkcji
progowej)
Dyskryminacja liniowa
Perceptron
Reguła Widrowa-Hoffa
• Kryterium uczenia perceptronu może byd również
minimalizacja kwadratów odległości między
odpowiedzią modelu a pożądanymi odpowiedziami
y, np. -1 dla klasy pierwszej oraz 1 dla klasy drugiej
Różnica między wartościami
pożądanymi a odpowiedziami
modelu
Minimalizacji
podlega
wyrażenie:
Dyskryminacja liniowa
Perceptron
• Gradientem względem wektora w jest:
• Podobnie jak w regresji liniowej otrzymujemy
metodę obliczenia wag:
Dyskryminacja liniowa
Perceptron
• W wersji iteracyjnej (aktualizacja wag po prezentacji
każego przykłądu uczącego) otrzymujemy regułę
uczenia Widrowa-Hoffa (tzw. reguła delta):
Dyskryminacja liniowa
Perceptron
• Dla wielu klas
– Każda klasa ma przyporządkowany sobie jeden perceptron
– Dla tego perceptronu, jego klasa to “1”, wszystkie
pozostałe to “-1”
Dyskryminacja liniowa
Perceptron wielowarstwowy
• Czy jest sens łączyd perceptrony liniowe w większe sieci?
1
x1
1
w1
y1
w3
x2
w1=[w10, w11, w12]
w2
y3
y2
w2=[w20, w21, w22]
w3=[w30, w31, w32]
Dyskryminacja liniowa
Perceptron wielowarstwowy
y1 = w10+w11x1+w12x2
y2 = w20+w21x1+w22x2
y3 = w30+w31y1+w32y2 =
w30+w31*(w10+w11x1+w12x2) + w32*(w20+w21x1+w22x2) =
(w30 + w31w10 + w32w20) + x1*(w31w11+w32w21) + x2*(w31w12+w32w22)
= w40 + w41x1 + w42x2
Dyskryminacja liniowa
Perceptron wielowarstwowy
y1 = w10+w11x1+w12x2
y2 = w20+w21x1+w22x2
y3 = w30+w31y1+w32y2 =
w30+w31*(w10+w11x1+w12x2) + w32*(w20+w21x1+w22x2) =
(w30 + w31w10 + w32w20) + x1*(w31w11+w32w21) + x2*(w31w12+w32w22)
= w40 + w41x1 + w42x2
Liniowa kombinacja liniowych kombinacji
jest również liniową kombinacją.
Dyskryminacja liniowa
Perceptron wielowarstwowy
Neurony w warstwach
ukrytych powinny mied
nieliniowe funkcje
aktywacji.
Dyskryminacja liniowa
Perceptron wielowarstwowy
• Neurony w warstwach ukrytych powinny mied nieliniowe
funkcje aktywacji.
• Warstwy ukryte, poprzez nieliniowe transformacje sygnałów
wejściowych, przenoszą problem do nowych przestrzeni, w
których są one rozwiązywane przez liniowe neurony z warstwy
wyjściowej sieci.
Dyskryminacja liniowa
Perceptron wielowarstwowy

Podobne dokumenty