Rozpoznawanie wzorców Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki mbereta@pk.edu.pl beretam@torus.uck.pk.edu.pl www.michalbereta.pl
Twierzdzenie: Prawdopodobieostwo, że n obserwacji wybranych losowo według dwolnego rozkładu ciągłego na R p, 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).
Jak najlepiej rozdzielid te klasy za pomocą liniowej funkcji dyskryminacyjnej?
Szukamy takiego kierunku, żeby po zrzutowaniu na niego obserwacji (przykładów) klasy były jak najlepiej od siebie oddzielone
Funkcja dyskryminacyjna jest wtedy prostopadła do wyznaczonego kierunku
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
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)
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
Próbkowym odpowiednikiem wartości oczekiwanej jest wektorowa średnia
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
Próbkowym odpowiednikiem macierzy kowariancji jest macierz S
Wartośd wariancji rzutu wektora x na prostą o wektorze kierunkowym a: jaka jest wariancja a T x?
Założenie Fishera: klasy charakteryzują się taką samą macierzą kowariancji Wpólnie dla obu klas ustala się wskaźnik zmienności wewnątrzgrupowej
Próbkową miarą zmienności wewnątrzgrupowej wzdłuż kierunku a jest
Sformułowanie Fishera: znajdź kierunek najlepiej oddzielający klasy, jako kierunek maksymalizujący wyrażenie:
Mając kierunek a, zrzutuj średnie obu klas oraz nowy wektor x na ten kierunek i zaklasyfikuj x do klasy j jeśli dla
Rozwiązanie to daje często dobre wyniki nawet jeśli założenie o równości macierzy kowarancji nie jest spełnione.
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
Zmienna a T x to pierwsza zmienna kanoniczna a wektor a to pierwszy wektor kanoniczny
Alternatywne sformułowanie hiperpłaszczyzny dyskryminacyjnej:
Reguła dyskryminacyjna: przypisz punkt x do klasy 2 jeśli:
Kierunek rzutowania Prosta dyskryminacyjna jest prostopadła do znalezionego kierunku i przechodzi przez punkt pośrodku pomiędzy średnimi klas.
Co gdy g > 2? (problem z wieloma klasami)
Sformułowanie zadania: znajdź a maksymalizujące wyrażenie: gdzie
Rozwiązanie: Wektorem maksymalizującym to wyrażenie jest wektor własny macierzy W -1 B odpowiadający największej wartości własnej tej macierzy.
Reguła dyskryminacyjna Obserwację x przypisz do klasy j jeśli Dla wszystkich
Można również rozwiązad zadao dyskryminacji pomiędzy parami klas Należy przyjąd wtedy wpólną macierz kowariancji wewnątrzgrupowej
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ź a r maksymalizujący warunkiem, że po
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 -1 B Najwyższy możliwy rząd macierzy B wynosi g-1 zatem tyle można otrzymad wektorów kanonicznych.
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)
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ą)
Dla dwóch klas: Regresja liniowa Jeśli oszacowane prawdopodobieostwo warunkowe jest >0.5 to x jest klasyfikowany do klasy 1, jeśli <0.5 to do klasy 0.
Dla liczby klas >2: Regresja liniowa 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
Regresja liniowa Stosując zapis macierzowy mamy macierz obserwacji: oraz macierz etykiet obserwacji (wskaźnikowa macierz wektorów oodpowiedzi):
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):
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: w 0 to wyraz wolny y = w 1 *x 1 + w 2 *x 2 + w 0 Przykład x jest klasyfikowany do pierwszej klasy jeśli y>0 a do klasy drugiej w przeciwnym przypadku, zatem granica decyzyjna to 0 = w 1 *x 1 + w 2 *x 2 + w 0
Regresja liniowa 0 = w 1 *x 1 + w 2 *x 2 + w 0 z tego x 2 = -w 1 /w 2 *x 1 w 0 /w 2 Jest to zależnośd typu y = ax+b Jeśli brak w 0 (tzn. w 0 =0) to y = ax tzn. prosta musi przechodzid przez początek układu współrzędnych (nie może reprezentowad dowolnej granicy)
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
Regresja liniowa Rozwiązanie (przez tzw. pseudoinwersję)
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!
Regresja liniowa Reguła dyskryminacyjna: wybierz klasę odpowiadającą największej wartości współrzędnych wketora odpowiedzi
Gdy g=2: Regresja liniowa 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
Regresja liniowa Miarą dopasowania modelu w regresji liniowej jest współczynnik R 2 zdefiniowany jako proporcja wariancji wyjaśnionej przez model R 2 =1-model bardzo dobry R 2 =0-model nie pasuje do danych
Model logistyczny Model logistyczne zapewnia wartości estymatora p(2 x) w przedziale [0,1] Jest to szczególny przypadek uogólnionego modelu liniowego
Dla g=2: Model logistyczny
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
Model logistyczny Reguła dyskryminacyjna: Wybierz większą z wartości oraz I odpoweidnio zaklasyfikuj obserwację x.
Model logistyczny Przypadek wielu klas (g>=2). Klasa g wybrana dowolnie
Model logistyczny Stosując ten model dostajemy: dla k=1,..,g-1 Spełnione jest:
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.
Perceptron
1 Perceptron Funkcja progowa funkcja aktywacji perceptronu w 0 w 1 x 1 w 2 x 2 Przykład dla dwóch atrybutów
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
Oznaczenie: Perceptron Wtedy dla z i poprawnie zaklasyfikowanego mamy:
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.
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: n l jest parametrem uczenia sterującym szybskością zmian wartości wag.
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
Perceptron Dowiedzione jest, że jeśli klasy są liniowo separowalne, oraz przy pewnych założeniach co do wartości n l, 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
1 Perceptron Reguła Widrowa-Hoffa w 0 w 1 x 1 w 2 x 2 Na wyjściu neuronu jest liniowa kombinacja atrybutów (brak funkcji progowej) Przykład dla dwóch atrybutów
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:
Perceptron Gradientem względem wektora w jest: Podobnie jak w regresji liniowej otrzymujemy metodę obliczenia wag:
Perceptron W wersji iteracyjnej (aktualizacja wag po prezentacji każego przykłądu uczącego) otrzymujemy regułę uczenia Widrowa-Hoffa (tzw. reguła delta):
Dla wielu klas Perceptron Każda klasa ma przyporządkowany sobie jeden perceptron Dla tego perceptronu, jego klasa to 1, wszystkie pozostałe to -1
Perceptron wielowarstwowy Czy jest sens łączyd perceptrony liniowe w większe sieci? 1 1 x 1 x 2 w1 w2 y 1 y 2 w3 y 3 w 1 =[w 10, w 11, w 12 ] w 2 =[w 20, w 21, w 22 ] w 3 =[w 30, w 31, w 32 ]
Perceptron wielowarstwowy y 1 = w 10 +w 11 x 1 +w 12 x 2 y 2 = w 20 +w 21 x 1 +w 22 x 2 y 3 = w 30 +w 31 y 1 +w 32 y 2 = w 30 +w 31 *(w 10 +w 11 x 1 +w 12 x 2 ) + w 32 *(w 20 +w 21 x 1 +w 22 x 2 ) = (w 30 + w 31 w 10 + w 32 w 20 ) + x 1 *(w 31 w 11 +w 32 w 21 ) + x 2 *(w 31 w 12 +w 32 w 22 ) = w 40 + w 41 x 1 + w 42 x 2
Perceptron wielowarstwowy y 1 = w 10 +w 11 x 1 +w 12 x 2 y 2 = w 20 +w 21 x 1 +w 22 x 2 y 3 = w 30 +w 31 y 1 +w 32 y 2 = w 30 +w 31 *(w 10 +w 11 x 1 +w 12 x 2 ) + w 32 *(w 20 +w 21 x 1 +w 22 x 2 ) = (w 30 + w 31 w 10 + w 32 w 20 ) + x 1 *(w 31 w 11 +w 32 w 21 ) + x 2 *(w 31 w 12 +w 32 w 22 ) = w 40 + w 41 x 1 + w 42 x 2 Liniowa kombinacja liniowych kombinacji jest również liniową kombinacją.
Perceptron wielowarstwowy Neurony w warstwach ukrytych powinny mied nieliniowe funkcje aktywacji.
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.
Perceptron wielowarstwowy