Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Systemy uczące się
Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki
[email protected] [email protected]
www.michalbereta.pl
Systemy uczące się
Zaliczenie przedmiotu
• Egzamin
• Laboratorium – kolokwia + zadania “projektowe”
• Wykład (obowiązkowy)
• Obecności
Co jest na zdjęciu?
Iluzja Thatchera
Iluzja Thatchera
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ę
Literatura
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śnid swojej wiedzy
• Ciężko napisad program gotowy na każdy przypadek
• Środowisko/warunki ulegają zmianie po uruchomieniu programu – musi on posiadad zdolnośd adaptacji – Optymalizacja ruchu w sieci komputerowej
• Niekóre problemy ciężko modelowad 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śd metod uczenia maszynowego spowodowana jest również łatwością gromadzenia danych, które cieżko analizowad 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 sprawdzad się w 100%, lecz mimo tego może okazad 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 stworzyd 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śd 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 wybrad reprezentatywny podzbiór wszystkich dostępnych danych?
• Dane są rozposzone, np. różne bazy przechowują
– częśd rekordów
– częśd atrybutów
– częśd 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
Data mining
Odkrywanie zależności w danych – głównie w olbrzymich zbiorach danych, które to zależności charakteryzują się:
Dużym zakresem, czyli zachodzą dla wielu rekordów
Dużą dokładnością, czyli występują od nich co najwyżej niewielkie odchylenia dla rekordów, dla których zachodzą
Dużym poziomem statystycznej istotności, czyli nie są przypadkowe
Data mining
Problemy Duże zbiory danych
Liczne atrybuty
Liczne kategorie
Nierównomierny rozkład kategorii
Inkrementacyjna aktualizacja (wciąż uaktualniane bazy dancyh)
Niekompletne dane
Niepoprawne dane
Systemy uczące się
Uczenie maszynowe jest również pokrewne ze sztuczną inteligencją
• Sztuczna inteligencja – musi umied wykonywad czynności, o których powiedzielibyśmy, że wymagają użycia inteligencji, gdyby były wykonywane przez człowieka
• Zdolnośd uczenia się
• Zdolnośd 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 byd zaklasyfikowana jako należąca do danej osoby
• Wzorzec to nie tylko obraz 2D lub 3D; jest to dowolny obiekt, który możemy opisad 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 klasyfikowad
do znanych klas
– Wykrywaniu struktury w danych, w których jeszcze nie określono wyraźnie klas – klasy te mają zostad 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 podlegad mają pewne parametry tego modelu (np. wagi połączeo między sztucznymi neuronami).
Systemy uczące się
Tworzony model może mied na celu
• Predykcję (ang. predictive)– chcemy klasyfikowad 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ęd (klas)
• Uczenie bez nadzoru (ang. unsupervised learning)
– Tworzenie pojęd (klas)
• Uczenie ze wzmocnieniem (ang. reinforcement learning)
Systemy uczące się
Główne typy uczenia maszynowego
• Uczenie pod nadzorem (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 wykorzystad 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 wykorzystad
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. zdefiniowad klasy, które później mogą byd 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
Metody uczenia maszynowego
• Uczenie z krytykiem (ze wzmocnieniem, ang. reinforcement learning)
– Istnieje nauczyciel, ale udziela on odpowiedzi jedynie “dobrze” lub “źle” w odpowiedzi na zachowanie systemu
– Przykład: uczenie się strategi gry
• Wygrana = “dobrze”
• Przegrana = “źle”
Systemy uczące się Główne typy uczenia maszynowego
• 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 koocowego rezultatu całej sekwencji akcji
– Przykład: gra w szachy – pojedynczy ruch cieżko ocenid, jednak wygrana na koocu 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 byd 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ędniad 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 prawdopodobieostw 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.
Cel: predykcja wiarygodności przyszłych klientów
Dyskryminacja – oddzielenie dwóch klas
Systemy uczące się
Pattern recognition – wykrywanie wzorców
• Face recognition
• Character recognition
• Speech recognition
Systemy uczące się
• Okrywanie wiedzy (ang. knowledge extraction) – Najlepiej w postaci zrozumiałej przez ludzi reguły
– Sied neuronowa może dobrze działad (dobra predykcja), ale niczego nie wyjaśniad
• 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 zrezygnowad
• Wykrywanie wartości nietypowych (ang. outlier detection) – Nietypowy przykład wśród np. transakcji finansowych może oznaczad
próbę oszustwa
Systemy uczące się
Regresja
• Odpowiedzią systemu jest wartośd rzeczywista
• Przykłady – predykcja ceny nieruchomości,
– predykcja ceny samochodu
• Model może zakładad pewną zależnośd 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.
Rozpoznawanie obrazów
ROZPOZNAWANIE OBRAZÓW, ROZPOZNAWANIE WZORCÓW (pattern recognition, machine recognition) to: analizowanie opisywanie identyfikowanie klasyfikowanie obiektów, zdarzeo lub innych znaczących regularności za pomocą automatycznych lub półautomatycznych środków.
Rozpoznawanie obrazów
Obrazem może byd: 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 byd analizowany jako opis pewnego obiektu, co pozwala go automatycznie zaliczyd do obrazu zakładów rozwojowych, wartych inwestowania albo bliskich bankructwa
Rozpoznawanie obrazów
INNE NAZWY Rozpoznawanie wzorców, obiektów Pattern recognition Klasyfikacja Klasteryzacja, segmentacja, grupowanie danych
Rozpoznawanie obrazów
Rozpoznawanie obrazów
Rozpoznawanie obrazów
Grupowanie, klasteryzacja
Sieci neuronowe
Metoda PCA
SVM
Drzewa decyzyjne
Redukcja wymiarowości
Ekstrakcja cech
Statystyka
Rozpoznawanie obrazów
Typowy problem Klasyfikacja
Typowy problem rozpoznawania wzorców
• Mając zbiór trenujący zdecydowad, które atrybuty opisujące obiekty są wartościowe z punktu widzenia dyskryminacji klas
– ang. feature selection, feature extraction
• Zdecydowad jaki klasyfikator powinien byd użyty (jaki da najlepszy wyniki dla przyszłych danych, tzw. testowych, dla których klasa nie jest znana)
– jak ocenid czy różnice w działaniu klasyfikatorów są statystycznie istotne?
Typowy problem Klasyfikacja
Typowy problem rozpoznawania wzorców
• Oszacowad jakiej wielkości błędu możemy się spodziewad 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 zdecydowad, które atrybuty opisujące obiekty są wartościowe z punktu widzenia dyskryminacji klas
• Zdecydowad jaki algorytm grupowania powinien byd użyty – Ile grup szukamy?
– Jak ocenid jakośd wyników grupowania?
Typowy problem Analiza danych, wykrywanie grup / klas
Przyszłe dane mogą byd 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źd grupy
podobnie zachowujących się osób. Grupy takie mogą stad się celem specjalnie przygotowanej akcji marketingowej.
Mając do dyspozycji opisy przebiegu chorób wielu pacjentów, znaleźd grupy podobnych przypadków, wyraźnie odróżniających się od pozostałych. Może to sugerowad występowanie szczególnego podtypu danej choroby. Można wtedy próbowad opracowywad specjalne terapie.
Rozpoznawanie obrazów
Pokrewne pojęcia
• Data mining (drążenie danych)
• Machine learning (uczenie maszynowe) – uczenie się pojęd (uczenie pod nadzorem, z nauczycielem)
– tworzenie pojęd (analiza skupieo, grupowanie)
– aproksymacja funkcji
• Metody sztucznej inteligencji
• Soft computing (obliczenia miękkie)
• Sieci neuronowe
• Algorytmy ewolucyjne
Rozpoznawanie obrazów
Obiekt
Mierzone cechy (atrybuty): szerokośd wysokośd
Aby klasyfikowad obiekty muszą one byd w jakiś sposób opisane, zmierzone, itd.
Rozpoznawanie obrazów
Jak rozpoznawad prawdziwe obrazy, zdefiniowane jako zbiór wartości pikseli? (Sama zmiana oświetlenia przy obrazie tego samego obiektu wprowadza ogromne zmiany.) Co trzeba zrobid by proces klasyfikacji był możliwy? Jakich metod użyd?
Trudności w rozwiązywaniu problemów
Problem
Model
Rozwiązanie
Jak bardzo uproszczony może byd 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śd dostrzegania zależności i wzorców. Była to, i jest nadal, zdolnośd warunkująca przetrwanie.
Czasami jednak natrafiamy na pewne problemy w interpretacji faktów, używamy schematów myślenia, uproszczeo, 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 uczynid uczestnik teleturnieju, by prawdopodobieostwo wygranej było jak największe? Pozostad przy swoim poprzednim wyborze? Zamienid bramkę? Czy ma to jakiekolwiek znaczenie?
A = ? B = ? C = ?
Paradoksy
Co powinien uczynid uczestnik teleturnieju, by prawdopodobieostwo wygranej było jak największe? Pozostad przy swoim poprzednim wyborze? Zamienid bramkę? Czy ma to jakiekolwiek znaczenie?
A = ? B = ? C = puste
Uczestnik wybiera bramkę A
Bramka C okazuje się byd pusta.
Paradoksy
Rozwiązanie: Uczestnik powinien zmienid swój wybór na bramkę B.
A = ? B = ? C = ?
Prawdopodobieostwo wygranej = 1/3 Prawdopodobieostwo wygranej = 2/3
Paradoksy
Rozwiązanie: Uczestnik powinien zmienid swój wybór na bramkę B.
A = ? B = ? C = pusta
Prawdopodobieostwo wygranej = 1/3 Prawdopodobieostwo wygranej = 2/3
Paradoksy
Rozwiązanie: Uczestnik powinien zmienid swój wybór na bramkę B.
A = ? B = ?
Prawdopodobieośtwo wygranej = 1/3 Prawdopodobieośtwo wygranej = 2/3
Wybór większego prawdopodobieostwa wygranej.
Paradoks Monty'ego Halla
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
• Przestrzeo 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:
3
1
3/16/1
6/1
Paradoksy
A+M B+M A+B
A A B B
1/3 1/3
1/3
1 1 1/2 1/2
Paradoksy
A+M A+B
A A
1/3 1/3
1 1/2
Strażnik wskazując na A eliminuje częśd możliwości.
3
1
3/16/1
6/1
Matematyka interesuje to zdarzenie
Paradoksy
A B
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ęśd pacjentów z danej grupy wiekowej leczonych daną metodą powróciła do zdrowia. Widad, że metoda B góruje na metodą A w każdej grupie wiekowej.
Paradoksy
A B
Ogółem 50/100 40/100
Rezultat całościowy wskazuje na to, iż leczenie metodą A jest lepsze. Jest to tzw. paradoks Simpsona (1951).
Korelacja a przyczynowośd Duża korelacja
Korelacja a przyczynowośd Słaba korelacja
Korelacja a przyczynowośd Brak korelacji
Korelacja a przyczynowośd
Bardzo łatwo nabrad 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śd
Duża korelacja między zmiennymi nie oznacza występowania między nimi związku przyczynowego.
Wnioskowanie
• Jeśli świeci słooce, to jest jasno
Jeśli uznajemy prawdziwośd powyższej reguły, które z poniższych
reguł są również logicznie prawdziwe?
• Jeśli jest jasno, to świeci słooce
• Jeśli nie świeci słooce, to nie jest jasno
• Jeśli nie jest jasno, to nie świeci słooce
Wnioskowanie
Reguła wnoiskowania modus ponens
Reguła wnioskowania modus tollens
Metoda NN Nearest Neighbor
(Najbliższego sąsiada)
x1
x2
Zbiór uczący Przykłady z dwóch klas
Metoda NN Nearest Neighbor
(Najbliższego sąsiada)
x1
x2
Nieznany obiekt, który należy zaklasyfikowad do którejś z klas.
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.
Metoda NN Nearest Neighbor
(Najbliższego sąsiada) Cechy metody NN: Wielka czułośd 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śd oraz dają stosunkowo dobre wyniki. Metody oparte na minimalnej odległości są jednak kosztowne w realizacji ze względu na koniecznośd 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.
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ą byd 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śd metody.
Metoda αNN
Metoda jNNN
Określa się tu przynależnośd nieznanego obiektu do tej klasy, do której należy jN-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 podobieostwa 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ą skooczone.
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ę opisad w sposób liniowy?
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji
Które atrybuty wybrad?
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji
Co zrobid jeśli atrybutów jest bardzo dużo? (piksele w obrazach)
Curse of dimentionality - Przekleostwo wymiarowości Im więcej wymiarów tym więcej potrzeba przykładów by stworzyd dobry klasyfikator. Odległośd “rośnie” wraz ze wzrostem liczby wymiarów! Przykład: Odległośd 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 - Przekleostwo 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. Sied 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 prawdopodobieostwo, ż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 - Przekleostwo 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ązad. 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 wybrad 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 niebezpieczeostwo, że niektóre z nich są błędne.
Rozpoznawanie obrazów Problemy w zadaniach rozpoznawania i klasyfikacji
Jak uzyskad dobre efekty nauki, jeśli przykładów jest zbyt mało? Jak uzyskad dobrą generalizację stworzonego systemu? Przykład: Jak nauczyd system diagnozowad 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śd osiągnięcia dobrej generalizacji jest związana z wielkością PRZESTRZENI HIPOTEZ. np. przestrzeo hipotez reprezentowanych przez klasyfikatory liniowe jest dużo mniejsza niż przestrzeo hipotez wielowarstwowych sieci neuronowych. Klasyfikatory liniowe nie są tak elastyczne jak sieci neuronowe, wiec nie będą w stanie nauczyd się niektórych problemów. Z drugiej strony sieci mogą się przeuczyd i źle generalizowad.
Vapnik-Chervonenkis dimension
Wymiar VC Vapnik-Chervonenkis dimension
Maksymalny rozmiar zbioru, na którego elementach można dokonad wszystkich możliwych dychotomicznych podziałów.
Generalizacja klasyfikatora liniowego
x1
x2
Słaba generalizacja
Generalizacja klasyfikatora liniowego
x1
x2
Dobra generalizacja
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.
Wektory podpierające definiują granice decyzyjne – pozostały dane są nieistotne.
Metoda SVM Support Vector Machines
Problemy nieliniowe
Jak rozwiązywad problemy nieliniowe?
Oryginalną przestrzeo 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żyd znanych algorytmów do problemów liniowych by znaleźd 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
Tu umieszczamy dwa neurony radialne r1 oraz r2
1 2
4 3
r1
r2
1 2,4
3
W tej przestrzeni problem jest liniowy!
Liniowa granica decyzyjna w nowej przestrzeni.
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ąd 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 byd niezależne. W praktyce ciężko to spełnid – 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
Metody Bayesowskie
Analiza danych
Analiza danych ma za zadanie wykrycie istniejących w danych grup podobnych przykładów, sytuacji, itp.
Każda grupa zawiera przykłady, które są podobne bardziej do siebie nawzajem niż do przykładów z innych grup.
Częstym zadaniem jest również “streszczenie” danego zbioru danych.
Analiza danych
Problemy:
• Ile grup szukamy?
• Jak mierzyd podobieostwo?
• Jak sobie radzied z danymi o dużej wymiarowości (duża liczba parametrów opisujących każdy przykład)?
• Jak sobie radzid 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 byd 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
Analiza danych
Czy to są oddzielne grupy?
Analiza danych
Grupy czy "szumy"?
Analiza danych
• Algorytm k-średnich (K-means)
– Określ liczbę szukanych grup
– Zainicjuj centra grup losowo lub za pomocą wybranych przykładów
– Powtarzaj dopóki centra ulegają zmianie:
• Dla każdego centrum określ zbiór przykładów, dla których jest to najbliższe centrum (przy danej mierze odległości)
• Wylicz nowe centrum jako średnia z przykładów z poprzedniego punktu
Analiza danych
• Problemy z algorytmem k-średnich
– Jak dobrad liczbę grup?
• Zastosowad współczynniki jakości grupowania – Który współczynnik jakości wybrad?
– Algorytm może utknąd (centrum ustala się w miejscu gdzie nie ma żadnych danych)
– Dobrze działa dla danych, w których istnieją wyraźnie grupy sferyczne
Analiza danych
• Algorytm rozmytych k-średnich (fuzzy k-means)
– Każdy przykład może należed jednocześnie do więcej niż jednej grupy, ale z różnych stopniem przynależności
– Brak ostrego przydziału do wybranej grupy
• Może byd zaletą – wykrycie wątpliwych przypadków “na granicy”
• Ostry podział łatwy do otrzymania z podziału rozmytego
Analiza danych
• Duża liczba innych algorytmów
– Possibility clustering
– Algorytmy grupowania hierachicznego
– Sieci Kohonena
– Algorytm gazu neuronowego
– Sztuczne systemy immunologiczne
• Sieci diotypowe