Metody klasyfikacji i rozpoznawania wzorców Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki mbereta@pk.edu.pl www.michalbereta.pl
Rozpoznawanie wzroców Zaliczenie przedmiotu Egzamin Laboratorium kolokwia + zadania projektowe Wykład (obowiązkowy) Obecności
Program Zasady zaliczenia Egzamin Wykład obowiązkowy Laboratorium Obowiązuje wiedza z wykładów Kolokwia praktyczne Małe projekty
Co jest na zdjęciu?
Iluzja Thatchera
Iluzja Thatchera
Rozpoznawanie obrazów INNE NAZWY Rozpoznawanie wzorców, obiektów Pattern recognition Klasyfikacja Klasteryzacja, segmentacja, grupowanie danych Uczenie maszynowe (ang. machine learning)
Rozpoznawanie obrazów
Rozpoznawanie obrazów
Rozpoznawanie obrazów Grupowanie, klasteryzacja Ekstrakcja cech Sieci neuronowe Metoda PCA SVM Drzewa decyzyjne Statystyka Redukcja wymiarowości
Rozpoznawanie obrazów
Program
Program
Program
Literatura
Systemy uczące się Metody klasyfikacji i rozpoznawania wzorców są przykładami metod uczenia maszynowego.
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się
Systemy uczące się Systemy uczące się Uczenie maszynowe Machine learning "Generating an abstraction from examples and/or past experiences is a well-known paradigm in machine learning. "Machine learning is programming computers to optimize a performance criterion using example data or past experiance."
Systemy uczące się Uczenie maszynowe przydaje się gdy: Ciężko o ekspertów w danej dziedzinie lub są oni kosztowni, a dostępne są przykłady Eksperci nie są w stanie wyjaśnić swojej wiedzy Ciężko napisać program gotowy na każdy przypadek Środowisko/warunki ulegają zmianie po uruchomieniu programu musi on posiadać zdolność adaptacji Optymalizacja ruchu w sieci komputerowej Niekóre problemy ciężko modelować bezpośrednio Rozpoznawanie mowy Rozpoznawanie pisma Rozpoznawanie twarzy
Systemy uczące się Machine learning terminy pokrewne Sztuczna inteligencja (AI) Pattern recognition (ropoznawanie wzorców) Data mining (drążenie danych) Sieci neuronowe Signal processing Sterowanie
Systemy uczące się Użyteczność metod uczenia maszynowego spowodowana jest również łatwością gromadzenia danych, które cieżko analizować ręcznie. Przykład: Dane transakcji sieci hipermaketów.
Systemy uczące się Przykład: Dane transakcji sieci hipermaketów. Interesujące jest wykrywanie zależności, np. klienci, którzy kupują pewien towar (np. piwo), kupują również inny towar (np. czipsy). Reguła taka nie musi sprawdzać się w 100%, lecz mimo tego może okazać się marketingowo użyteczna.
Systemy uczące się Zazwyczaj zakładamy, że istnieje pewien proces (nieznany nam), który odpowiada za zależności między obserwowanymi danymi. (np. Ludzie nie kupują produktów losowo) Zadaniem uczenia maszynowego jest często stworzyć model, który w przybliżony sposób wykryje oraz/lub wyjaśni te zależności (wzorce ang. patterns), czyli będzie pewną aproksymacją (przybliżeniem) rzeczywistego procesu.
Systemy uczące się Jeśli metody uczenia maszynowego stosowane są do bardzo dużej ilości danych, mamy wtedy do czynienia z metodami drążenia danych (Data Mining). Duża ilość danych wprowadza nowe wyzwania, np. możliwe jest zaprezentowanie danych systemowi jedynie raz, podczas gdy niektóre algorytmy wymagają wielu iteracji np. sieci neuronowe Jak wybrać reprezentatywny podzbiór wszystkich dostępnych danych? Dane są rozposzone, np. różne bazy przechowują część rekordów część atrybutów część rekordów z jedynie częścią atrybutów
Systemy uczące się Data mining Transakcje konsumenckie Finanse (transakcje bankowe) wykrywanie oszustw Dane z linii produkcyjnej wykrywanie stanów awaryjnych Dane medyczne automatyczna diagnoza, wykrywanie nowych rodzajów chorób Telekomunikacja ruch sieciowy Dane z eksperymentów fizycznych Dane z obserwacji astronomicznych Analiza zawartości Internetu Dane biologiczne - bioinformatyka
Systemy uczące się Uczenie maszynowe jest również pokrewne ze sztuczną inteligencją Sztuczna inteligencja musi umieć wykonywać czynności, o których powiedzielibyśmy, że wymagają użycia inteligencji, gdyby były wykonywane przez człowieka Zdolność uczenia się Zdolność adaptacji do zmian Jednak metody sztucznej inteligencji (np. systemy ekspertowe) uwzględniają duży udział wiedzy eksperckiej zakodowanej np. jako zbiór reguł decyzyjnych. W uczeniu maszynowym większy nacisk jest na uczenie się na przykładach.
Systemy uczące się Uczenie maszynowe jest również pokrewne pojęciu rozpoznawania wzorców (ang. pattern recognition) Przykład: rozpoznawanie twarzy nieznana twarz ma być zaklasyfikowana jako należąca do danej osoby Wzorzec to nie tylko obraz 2D lub 3D; jest to dowolny obiekt, który możemy opisać za pomocą np. wektora zmierzonych wartości atrybutów Pattern recognition skupia się przede wszystkim na wykrywaniu wzorców, na podstawie których będzie można przyszłe dane klasyfikować do znanych klas Wykrywaniu struktury w danych, w których jeszcze nie określono wyraźnie klas klasy te mają zostać określone w wyniku działania algorytmu, np. algorytmu grupowania
Systemy uczące się System uczący zazwyczaj startuje z pewnego przyjętego modelu, w którym podczas uczenia optymalizacji podlegać mają pewne parametry tego modelu (np. wagi połączeń między sztucznymi neuronami).
Systemy uczące się Tworzony model może mieć na celu Predykcję (ang. predictive) chcemy klasyfikować przyszłe dane Wyjaśnienie zależności w danych (ang. descriptive) zależy nam na zrozumieniu procesu odpowiadającego za dane
Systemy uczące się Uwaga: Celem uczenia maszynowego nie jest modelowanie czy też wyjaśnianie procesów uczenia u ludzi czy zwierząt.
Systemy uczące się Dopasowywanie modeli do dostępnych danych jest podstawową czynnością nauk przyrodniczych. Indukcja generowanie ogólnych reguł, praw na podstawie przykładów Dedukcja wnioskowanie o konkretnym (nowym) przypadku na podstawie dostępnej wiedzy ogólnej)
Systemy uczące się W statystyce mówi się o inferencji (ang. inference) w przypadku generowania ogólnych reguł na podstawie danych. Proces uczenia zwany jest estymacją. Klasyfikacja nazywana jest dyskryminacją. Data mining to często odkrywanie wiedzy w danych (ang. Knowledge discovery in databases, KDD)
Systemy uczące się Główne typy uczenia maszynowego Uczenie pod nadzorem (ang. supervised learning) Uczenie się pojęć (klas) Uczenie bez nadzoru (ang. unsupervised learning) Tworzenie pojęć (klas) Uczenie ze wzmocnieniem (ang. reinforcement learning)
Systemy uczące się Główne typy uczenia maszynowego Uczenie pod nadzorem, z nauczycielem (ang. supervised learning) Istnieje z góry zadany zbiór klas, do których należą przykłady Znane są prawidłowe etykiety przykładów w zbiorze uczącym, co można wykorzystać do pomiaru postępów procesu uczenia Cel : predykcja prawidłowych etykiet dla przyszłych, nieznanych przykładów Uwaga: minimalizacja błędu klasyfikacji na zbiorze trenującym nie jest celem sama w sobie Minimalizacja błędu klasyfikacji nie jest jedynym kryterium, które można wykorzystać
Metody uczenia maszynowego Uczenie z nauczycielem Nauczyciel: prezentuje przykłady, z którymi związana jest prawidłowa odpowiedź etykieta klasy (w przypadku klasyfikacji) wartość rzeczywista (w przypadku zadania regresji) zna poprawną odpowiedź jest w stanie ukierunkować naukę np. uczenie sieci neuronowych (algorytm backpropagation)
Systemy uczące się Główne typy uczenia maszynowego Uczenie bez nadzoru (ang. unsupervised learning) Zadany jest zbiór przykładów, jednak nie zbiór klas Celem uczenia jest odnalezienie struktury w danych, tzn. zdefiniować klasy, które później mogą być ewentualnei użyte do uczenia pod nadzorem Odnaleziona klas jest zdefiniowana przez podzbiór przykładów, które są wyraźnie bardziej podobne do siebie oraz niepodobne do innych przykładów
Analiza danych Problemy: Ile grup szukamy? Jak mierzyć podobieństwo? Jak sobie radzieć z danymi o dużej wymiarowości (duża liczba parametrów opisujących każdy przykład)? Jak sobie radzić w dużymi zbiorami danych?
Analiza danych Problemy: Dane niekompletne Dane zaszumione (z błędami) Problemy dynamiczne (zmieniające się w czasie) Dane rozproszone w wielu bazach danych Przykłady znajdują się w różnych miejscach Atrybuty znajdują się w różnych miejscach Rozproszone są zarówno przykłady jak i atrybuty
Analiza danych Problemy: Czego tak napradę szukamy? Innych danych podobnych do znanego nam przypadku? Najbardziej podobny przykład do naszego może być mimo wszystko bardzo odmienny Wyróżniających się grup (np. klientów)? Zmian, nowości, informacji o łączenia się grup wcześniej wyraźnie oddzielonych?
Analiza danych Problemy z wizualizacją i weryfikacją wyników w problemach wielowymiarowych
Analiza danych Trzy wyraźnie grupy (rozkład sferyczny)
Analiza danych
Czy to są oddzielne grupy? Analiza danych
Grupy czy "szumy"? Analiza danych
Główne typy uczenia maszynowego Systemy uczące się Uczenie ze wzmocnieniem (ang. reinforcement learning) Polega na uczeniu strategii postępowania, rozumianej jako ciąg akcji prowadzącej do celu Pojedyncza akcja nie podlega natychmiastowej ocenie, gdyż wynik działania zależy od końcowego rezultatu całej sekwencji akcji Przykład: gra w szachy pojedynczy ruch cieżko ocenić, jednak wygrana na końcu sprawia, że strategia gry jest oceniona pozytywnie Nadaje się również do bardziej ogólnych przypadków, np. nagrody/kary pojawiają się nie tylko po dotarciu do celu, lecz również w trakcie (np.błądzenie po labiryncie) W skrajnym przypadku ocena całej strategii może nie być liczbowa, a jedynie dobrze / źle (np. odpowiedź środowiska - organizm przeżył lub nie). Środowisko często jest zmienne a nagrody / kary są często losowe wygodne podejście przy modelowaniu strategii w grach z elementami losowości. Można również uwzględniać strategie kooperujących agentów
Metody uczenia maszynowego Uczenie z krytykiem (ze wzmocnieniem, ang. reinforcement learning) Przykład: uczenie strategii gry w Backgammon (tryktrak) http://www.research.ibm.com/massive/tdl.html
Systemy uczące się Typowe zagadnienia uczenia maszynowego Uczenie asocjacji Klasyfikacja Dyskryminacja Predykcja Wykrywanie wzorców (ang. pattern recognition) Okrywanie wiedzy (ang. knowledge extraction) Kompresja Wykrywanie wartości nietypowych (ang. outlier detection) Regresja
Systemy uczące się Uczenie asocjacji Interesują nas reguły typu warunkowych prawdopodobieństw P(Y/X) Przykład: basket analysis (analiza koszyka) Ludzie, którzy kupują produkt X zazwyczaj kupują również produkt Y P(czipsy / piwo) = 0.8 Reguła: 80% kupujących piwo kupuje również czipsy Ogólnie: P(Y/D) gdzie D jest pewnym zestawem atrybutów opisujących klienta
Systemy uczące się Klasyfikacja Przykład: credit scoring ocena wiarygodności kredytowej Dwie klasy kredytobiorcy {wiarygodny, niewiarygodny} Kredytobiorca opisany za pomocą atrybutów takich jak: wiek, przychód, wydatki miesięczne, oszczędności, zawód, stan cywilny, liczba dzieci, itp. Dyskryminacja oddzielenie dwóch klas Cel: predykcja wiarygodności przyszłych klientów
Systemy uczące się Pattern recognition wykrywanie wzorców Face recognition Character recognition Speech recognition
Systemy uczące się Odkrywanie wiedzy (ang. knowledge extraction) Najlepiej w postaci zrozumiałej przez ludzi reguły Sieć neuronowa może dobrze działać (dobra predykcja), ale niczego nie wyjaśniać Kompresja Odkrycie wiedzy często prowadzi do kompresji danych Przykład: wiedząc, że pewien atrybut jest sumą dwóch innych, możemy z niego całkowicie zrezygnować Wykrywanie wartości nietypowych (ang. outlier detection) Nietypowy przykład wśród np. transakcji finansowych może oznaczać próbę oszustwa
Systemy uczące się Regresja Odpowiedzią systemu jest wartość rzeczywista Przykłady predykcja ceny nieruchomości, predykcja ceny samochodu Model może zakładać pewną zależność funkcyjną Cena = w1 * rocznik + w2 * przebieg + w0 Regresja liniowa
Systemy uczące się
Rozpoznawanie obrazów Pojęcie obrazu to niekoniecznie ilustracja dwuwymiarowa lub scena trójwymiarowa. Obrazy to również inne obiekty, które na pierwszy rzut oka nie wyglądają jak obrazy w klasycznym rozumieniu tego słowa.
obiektów, zdarzeń lub innych znaczących regularności za pomocą automatycznych lub półautomatycznych środków. Rozpoznawanie obrazów ROZPOZNAWANIE OBRAZÓW, ROZPOZNAWANIE WZORCÓW (pattern recognition, machine recognition) to: analizowanie opisywanie identyfikowanie klasyfikowanie
Rozpoznawanie obrazów Obrazem może być: zarówno litera jak i linie papilarne, zapis sejsmografu, przebieg elektrokardiogramu, sygnał mowy lub rentgenowskie zdjęcie narządu w organizmie człowieka. zbiór ekonomicznych parametrów opisujących gospodarkę przedsiębiorstwa może być analizowany jako opis pewnego obiektu, co pozwala go automatycznie zaliczyć do obrazu zakładów rozwojowych, wartych inwestowania albo bliskich bankructwa
Typowy problem Klasyfikacja Typowy problem rozpoznawania wzorców Mając zbiór trenujący zdecydować, które atrybuty opisujące obiekty są wartościowe z punktu widzenia dyskryminacji klas ang. feature selection, feature extraction Zdecydować jaki klasyfikator powinien być użyty (jaki da najlepszy wyniki dla przyszłych danych, tzw. testowych, dla których klasa nie jest znana) jak ocenić czy różnice w działaniu klasyfikatorów są statystycznie istotne?
Typowy problem Klasyfikacja Typowy problem rozpoznawania wzorców Oszacować jakiej wielkości błędu możemy się spodziewać po danym klasyfikatorze w przyszłości na nowych nieznanych danych Ocena za pomocą błędu na danych trenujących jest zazwyczaj zbyt optymistyczna
Typowy problem Analiza danych, wykrywanie grup / klas Typowy problem wykrywania grup / analizy danych Przykłady w zbiorze trenującym nie mają przypisanej etykiety klasy Celem jest wykrycie czy w całym zbiorze istnieją pewne podgrupy obiektów wyraźnie podobnych do siebie oraz wyraźnie odmiennych od innych przykładów Ponownie: Mając zbiór trenujący zdecydować, które atrybuty opisujące obiekty są wartościowe z punktu widzenia dyskryminacji klas Zdecydować jaki algorytm grupowania powinien być użyty Ile grup szukamy? Jak ocenić jakość wyników grupowania?
Typowy problem Analiza danych, wykrywanie grup / klas Przyszłe dane mogą być analizowane poprzez sprawdzenie w jakim stopniu należą do wyszczególnionych grup. Przykłady: Mając do dyspozycji historie zakupów pewnej liczby klientów, znaleźć grupy podobnie zachowujących się osób. Grupy takie mogą stać się celem specjalnie przygotowanej akcji marketingowej. Mając do dyspozycji opisy przebiegu chorób wielu pacjentów, znaleźć grupy podobnych przypadków, wyraźnie odróżniających się od pozostałych. Może to sugerować występowanie szczególnego podtypu danej choroby. Można wtedy próbować opracowywać specjalne terapie.
Rozpoznawanie obrazów Obiekt Aby klasyfikować obiekty muszą one być w jakiś sposób opisane, zmierzone, itd. Mierzone cechy (atrybuty): szerokość wysokość
Rozpoznawanie obrazów Jak rozpoznawać prawdziwe obrazy, zdefiniowane jako zbiór wartości pikseli? (Sama zmiana oświetlenia przy obrazie tego samego obiektu wprowadza ogromne zmiany.) Co trzeba zrobić by proces klasyfikacji był możliwy? Jakich metod użyć?
Trudności w rozwiązywaniu problemów Problem Model Rozwiązanie Jak bardzo uproszczony może być model, by rozwiązanie było wciąż użyteczne?
Trudności w rozwiązywaniu problemów Problem Model Rozwiązanie Co jest lepsze: -Dokładne rozwiązanie przybliżonego (czyli prostszego) modelu czy - Przybliżone rozwiązanie dokładnego modelu?
Trudności w rozwiązywaniu problemów Rozwiązania optymalne nie są wymagane! W praktyce priorytetem jest posiadanie dobrego, lecz niekoniecznie optymalnego rozwiązania, lecz odpowiednio szybko np. przed konkurencją
Rozpoznawanie wzorców Ludzie mają wielką zdolność dostrzegania zależności i wzorców. Była to, i jest nadal, zdolność warunkująca przetrwanie. Czasami jednak natrafiamy na pewne problemy w interpretacji faktów, używamy schematów myślenia, uproszczeń, nawyków, błędnego wnioskowania, dostrzegamy zależności tam gdzie ich nie ma.
Paradoksy W pewnym teleturnieju główną nagrodą jest samochód. Jest on ukryty za jedną z trzech bramek. Pozostałe dwie bramki są puste. Uczestnik obstawia jedną z bramek. Następnie prowadzący teleturniej otwiera jedna z pozostałych dwóch ujawniając, że jest ona pusta. Proponuje uczestnikowi zmianę wyboru bramki. Co powinien uczynić uczestnik teleturnieju, by prawdopodobieństwo wygranej było jak największe? Pozostać przy swoim poprzednim wyborze? Zamienić bramkę? Czy ma to jakiekolwiek znaczenie? A =? B =? C =?
Paradoksy Co powinien uczynić uczestnik teleturnieju, by prawdopodobieństwo wygranej było jak największe? Pozostać przy swoim poprzednim wyborze? Zamienić bramkę? Czy ma to jakiekolwiek znaczenie? Bramka C okazuje się być pusta. A =? B =? C = puste Uczestnik wybiera bramkę A
Paradoksy Rozwiązanie: Uczestnik powinien zmienić swój wybór na bramkę B. A =? B =? C =? Prawdopodobieństwo wygranej = 1/3 Prawdopodobieństwo wygranej = 2/3
Paradoksy Rozwiązanie: Uczestnik powinien zmienić swój wybór na bramkę B. A =? B =? C = pusta Prawdopodobieństwo wygranej = 1/3 Prawdopodobieństwo wygranej = 2/3
Paradoksy Rozwiązanie: Paradoks Monty'ego Halla Uczestnik powinien zmienić swój wybór na bramkę B. A =? B =? Prawdopodobieńśtwo wygranej = 1/3 Prawdopodobieńśtwo wygranej = 2/3 Wybór większego prawdopodobieństwa wygranej.
Paradoksy W celi znajdują się trzej więźniowie. Dwóch z nich rano zostanie straconych. Strażnik wie jaka jest decyzja.
Paradoksy Jednym z więźniów jest matematyk Oblicza szanse na przeżycie i wychodzi mu 1/3 A B M 1 E E U 2 U E E 3 E U E
Paradoksy Matematyk pyta strażnika, który z jego towarzyszy umrze bo przecież wiadomo, że któryś z nich na pewno jest w dwójce skazanych. A B M 1 E E U 2 U E E 3 E U E Strażnik mówi, że umrze A (dla B jest sytuacja symetryczna)
Paradoksy Matematyk cieszy się i twierdzi, że jego szanse na przeżycie wzrosły i wynoszą teraz ½!! Czy Matematyk popełnił błąd w swoim rozumowaniu? A B M 1 E E U 2 U E E 3 E U E Strażnik mówi, że umrze A (dla B jest sytuacja symetryczna)
Paradoksy Przestrzeń wyników eksperymentu jest zdefiniowana w kategoriach tego, na kogo wskaże strażnik.
Paradoksy Wiemy, że strażnik nigdy nie wskaże na M; załóżmy że wskazał A, ograniczając możliwe przypadki do dwóch: p(egzekuja A + M) = 1/3 p(egzakuja A + B) = 1/3 * ½ = 1/6 Matematyka interesuje ten drugi przypadek szansa na jego zajście jest: 1/ 6 1 1/ 6 1/ 3 3
Paradoksy 1/3 1/3 1/3 A+M B+M A+B 1 1 1/2 1/2 A B A B
Paradoksy 1/3 1/3 A+M A+B A 1 1/2 A Matematyka interesuje to zdarzenie Strażnik wskazując na A eliminuje część możliwości. 1/ 6 1/ 6 1/ 3 1 3
Paradoksy A Starsi 2/10 30/90 Młodsi 48/90 10/10 Dwie metody leczenia: A i B Dwie grupy wiekowe: Starsi i Młodsi Ułamki pokazują jaka część pacjentów z danej grupy wiekowej leczonych daną metodą powróciła do zdrowia. Widać, że metoda B góruje na metodą A w każdej grupie wiekowej. B
Paradoksy Ogółem 50/100 40/100 A B Rezultat całościowy wskazuje na to, iż leczenie metodą A jest lepsze. Jest to tzw. paradoks Simpsona (1951).
Paradoks Simpsona Paradoks Simpsona Pominięcie w analizie zmiennej uwikłanej może zmienić otrzymywane związki między dwiema innymi zmiennymi.
Paradoks Simpsona Kobiety Mężczyźni Osoby odrzucone 102 111 Osoby przyjęte 56 92 Rekrutacja na pewnym Wydziale Przyjęto 92 / 203 * 100% = 45% mężczyzn 56 / 158 * 100% = 35% kobiet Dyskryminacja!
Paradoks Simpsona Kierunek 1 Kobiety Mężczyźni Osoby odrzucone 11 71 Osoby przyjęte 12 73 52% 51% Kierunek 2 Kobiety Mężczyźni Osoby odrzucone 91 40 Osoby przyjęte 44 19 32% 32% Rekrutacja na poszczególnych kierunkach Brak dyskryminacji wcześniejsze wrażenie było wynikiem dużej popularności kierunku drugiego wśród kobiet.
Duża korelacja Korelacja a przyczynowość
Słaba korelacja Korelacja a przyczynowość
Brak korelacji Korelacja a przyczynowość
Korelacja a przyczynowość Bardzo łatwo nabrać błędnego przekonania o zależności przyczynowej między zmiennymi. Przykład: Wśród chorujących na raka płuc u 95% pacjentów zobserwowano żółtą skórę na palcach dłoni. Czy jest to przyczyna choroby? Czy jest to raczej współwystępowanie, a prawdziwą przyczyną jest inny, nieuwzględniony jeszcze czynnik? (Palenie papierosów).
Korelacja a przyczynowość Duża korelacja między zmiennymi nie oznacza występowania między nimi związku przyczynowego.
Wnioskowanie Jeśli świeci słońce, to jest jasno Jeśli uznajemy prawdziwość powyższej reguły, które z poniższych reguł są również logicznie prawdziwe? Jeśli jest jasno, to świeci słońce Jeśli nie świeci słońce, to nie jest jasno Jeśli nie jest jasno, to nie świeci słońce
Wnioskowanie Reguła wnoiskowania modus ponens Reguła wnioskowania modus tollens
Metoda NN Nearest Neighbor (Najbliższego sąsiada) x2 Zbiór uczący Przykłady z dwóch klas x1
Metoda NN Nearest Neighbor (Najbliższego sąsiada) x2 W metodzie NN, nieznany obiekt jest przyporządkowany do tej klasy, z której pochodzi najbliższy w sensie pewnej miary odległości przykład ze zbioru uczącego. Nieznany obiekt, który należy zaklasyfikować do którejś z klas. x1
Metoda NN Nearest Neighbor (Najbliższego sąsiada) Cechy metody NN: Wielka czułość na błędy i przekłamania w zbiorze uczącym. Brak prawdziwego uczenia, uogólnienia wiedzy Uczenie zastąpione zapamiętaniem zbioru uczącego Metody te są popularne ze względu na prostotę i intuicyjność oraz dają stosunkowo dobre wyniki. Metody oparte na minimalnej odległości są jednak kosztowne w realizacji ze względu na konieczność archiwizowania ciągu uczącego w pamięci oraz czasochłonnego obliczania odległości rozpoznawanego obiektu od wszystkich elementów ciągu uczącego, co sprawia, że konieczne jest zastosowanie dużych mocy obliczeniowych lub godzenie się z długim czasem rozpoznawania.
Metoda αnn Na początku określany jest parametr α, potem pojawia się obiekt rozpoznawania i obliczane są wartości jego odległości od wszystkich obiektów ciągu uczącego. Następnie dokonywane jest uporządkowanie ciągu uczącego według rosnących odległości. Później wybiera się α początkowych obiektów ciągu, tworząc podzbiór, który następnie rozbijany jest na podzbiory związane z poszczególnymi klasami. Funkcje przynależności mogą być teraz wyznaczone na podstawie liczebności tych podzbiorów. Metoda ta zapobiega błędom wynikającym z pomyłek w ciągu uczącym ale ogranicza czułość metody.
Metoda j N NN Określa się tu przynależność nieznanego obiektu do tej klasy, do której należy j N -ty w kolejności element uporządkowanego zbioru ciągu uczącego.
Metody wzorców 1. Z najprostszym przypadkiem rozpoznawania obrazów mamy do czynienia wtedy, gdy klasy podobieństwa są reprezentowane przez wektory wzorcowe. 2. Są one odpowiednikami klas, są to zbiory nieuporządkowane, a wektory wzorcowe są numerowane w poszczególnych klasach. 3. Założono, że każdą klasę reprezentuje co najmniej jeden wektor wzorcowy, lecz zbiory takich wektorów są skończone.
Metody wzorców Metoda uogólnionych wzorców i otoczeń kulistych
Metody wzorców Metoda uogólnionych wzorców i otoczeń kulistych
Metody wzorców Metoda uogólnionych wzorców i otoczeń kulistych
Metody liniowe Funkcja decyzyjna
Metody liniowe Perceptron Działa, jeśli dane są liniowo separowalne (tzn. jeśli istnieje rozwiązanie). System liniowy uczy się uogólnia wiedzę. Cała wiedza zawarta jest w wartościach wag.
Metody liniowe Co jeśli granice między klasami nie dadzą się opisać w sposób liniowy?
Które atrybuty wybrać? Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Co zrobić jeśli atrybutów jest bardzo dużo? (piksele w obrazach) Curse of dimentionality - Przekleństwo wymiarowości Im więcej wymiarów tym więcej potrzeba przykładów by stworzyć dobry klasyfikator. Odległość rośnie wraz ze wzrostem liczby wymiarów! Przykład: Odległość między punktami początku układu współrzęnych oraz (1,1,...) w 2D (0,0) oraz (1,1) dist = sqrt(2) < w 3D (0,0,0) oraz (1,1,1) dist = sqrt(3)
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Curse of dimentionality - Przekleństwo wymiarowości Z drugiej strony, zgodnie z twierdzeniem Cover a, dla złożonego problemu klasyfikacji w wielowymiarowej przestrzeni jest bardziej prawdopodobne, że będzie on liniowo separowalny w przestrzeni o większej ilości wymiarów niż w przestrzeni o mniejszej ilości wymiarów. Sieć neuronowa robi użytek dokładnie z tej własności. Przy większej liczbie neuronów radialnych niż wymiarowości wektora wejciowego (co w praktyce często, jeśli nie zawsze, jest spełnione) w warstwie radialnej następuje zwiększenie wymiarowości, co zwiększa prawdopodobieństwo, że dane zostaną liniowo odseparowane przez liniowe powierzchnie decyzyjne generowane przez neurony wyjściowe. Geometrycznie działanie sieci RBF polega na podziale przestrzeni wejściowej na podobszary, w których działają poszczególne neurony radialne.
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Curse of dimentionality - Przekleństwo wymiarowości W celu zmniejszenia liczby wymiarów z jednoczesnym zachowaniem wartościowych informacji w danych, stosuje się różne transformacje oryginalnych danych. W wyniku tej operacji problem klasyfikacyjny jest przeniesiony do nowej przestrzeni, w której prawdopodobnie łatwiej go rozwiązać. Niektóre metody uczenia (sieci neuronowe, SVM) w trakcie uczenia klasyfikatora wyznaczają jednocześnie takie transformacje.
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Które przykłady spośród wszystkich dostępnych wybrać do uczenia klasyfikatora? GIGO Garbage In, Garbage Out Śmieci na wejściu, śmieci na wyjściu Problem ten jest szczególnie istotny jeśli jest bardzo dużo dostępnych przykładów lub jeśli istnieje niebezpieczeństwo, że niektóre z nich są błędne.
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Jak uzyskać dobre efekty nauki, jeśli przykładów jest zbyt mało? Jak uzyskać dobrą generalizację stworzonego systemu? Przykład: Jak nauczyć system diagnozować rzadką chorobę?
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji Inne problemy Duże bazy danych Przekłamania w danych Mieszanie się danych - nakładanie się klas
Rozpoznawanie obrazów Jakie są cele nauki? Minimalizacja błędów na zbiorze trenującym nie oznacza małej liczby przyszłych błędów na nieznanych danych, a to właśnie jest celem. Pożądane jest przyszłe dobre działanie klasyfikatora, tzn. dobra generalizacja nabytej wiedzy.
Rozpoznawanie obrazów Możliwość osiągnięcia dobrej generalizacji jest związana z wielkością PRZESTRZENI HIPOTEZ. np. przestrzeń hipotez reprezentowanych przez klasyfikatory liniowe jest dużo mniejsza niż przestrzeń hipotez wielowarstwowych sieci neuronowych. Klasyfikatory liniowe nie są tak elastyczne jak sieci neuronowe, wiec nie będą w stanie nauczyć się niektórych problemów. Z drugiej strony sieci mogą się przeuczyć i źle generalizować.
Vapnik-Chervonenkis dimension Wymiar VC Vapnik-Chervonenkis dimension Maksymalny rozmiar zbioru, na którego elementach można dokonać wszystkich możliwych dychotomicznych podziałów.
Generalizacja klasyfikatora liniowego x2 Słaba generalizacja x1
Generalizacja klasyfikatora liniowego x2 Dobra generalizacja x1
Metoda SVM Support Vector Machines W procesie nauki nie jest minimalizowany błąd na zbiorze uczącym, a raczej maksymalizowany margines co czasami dopuszcza popełnianie błędów.
Metoda SVM Support Vector Machines W procesie nauki nie jest minimalizowany błąd na zbiorze uczącym, a raczej maksymalizowany margines co czasami dopuszcza popełnianie błędów.
Metoda SVM Support Vector Machines W procesie nauki nie jest minimalizowany błąd na zbiorze uczącym, a raczej maksymalizowany margines co czasami dopuszcza popełnianie błędów.
Metoda SVM Support Vector Machines
Metoda SVM Support Vector Machines Problem optymalizacji z ograniczeniami.
Metoda SVM Support Vector Machines Równoważne sformułowanie w tzw. dualnej formie. Dużo wygodniejsze praktycznie.
Metoda SVM Support Vector Machines Wektory podpierające definiują granice decyzyjne pozostały dane są nieistotne.
Problemy nieliniowe Jak rozwiązywać problemy nieliniowe? Oryginalną przestrzeń 2D zastępujemy nową Tworzymy model który uwzględnia nieliniowe zależności między atrybutami, ale jest nadal liniowy względem parametrow w, więc można użyć znanych algorytmów do problemów liniowych by znaleźć odpowiednie wartości w.
Problemy nieliniowe XOR x y x xor y 0 0 0 1 0 1 0 1 1 1 1 0 Nie istnieje jedna linia prosta, która oddziela te dwie klasy.
Problemy nieliniowe Wiele metod (sieci neuronowe, SVM) najpierw przenosi problem do przestrzeni gdzie zadanie klasyfikacji jest latwiejsze (liniowe), a potem rozwiązuje go w tej nowej przestrzeni. Takie jest między innymi zadanie kolejnych warstw w sieciach neuronowych.
Sieci radialne
Sieci radialne
Sieci radialne i problem XOR 4 3 3 r2 Liniowa granica decyzyjna w nowej przestrzeni. 1 2 2,4 1 r1 Tu umieszczamy dwa neurony radialne r1 oraz r2 W tej przestrzeni problem jest liniowy!
SVM w problemach nieliniowe Przeniesienie do nowej przestrzeni przez użycie kernel function K
SVM w problemach nieliniowe
Komitety klasyfikatorów Czy grupa słabych klasyfikatorów może razem osiągnąć lepsze wyniki? Słaby klasyfikator to taki, który nie myli się w niewielu ponad 50% przypadkach działa niewiele lepiej niż klasyfikator losowy. Okazuje się, że tak. Na takiej zasadzie działają algorytmy BAGGING BOOSTING RANDOM FORESTS Aby działały dobrze, takie klasyfikatory powinny być niezależne. W praktyce ciężko to spełnić klasyfikatory nie będą niezależne, jeśli zostały wytrenowane na tych samych danych.
Modele czarnej skrzynki Modele tzw. czarnej skrzynki nie objaśniają swego działania, nie wiadomo dlaczego klasyfikują tak a nie inaczej. Do takich metod należą sieci neuronowe wiedza nabyta w trakcie uczenia jest zaszyta w wartościach wag, ale one same nie wyjaśniają dlaczego decyzje są takie a nie inne, które atrybuty o tym decydują, itd. Jeśli celem jest nie tylko poprawna klasyfikacja ale również zrozumienie problemu, to użyteczne są inne metody, jak np. Reguły decyzyjne ( Jeśli coś jest takie i coś innego jest takie to wtedy...) Reguły lingwistyczne (logika rozmyta, Fuzzy Logic) Drzewa decyzyjne