Systemy uczące się - Michaďż˝ Beretamichalbereta.pl/dydaktyka/systemy_uczace/Systemy...

Post on 21-Jul-2021

5 views 0 download

Transcript of Systemy uczące się - Michaďż˝ Beretamichalbereta.pl/dydaktyka/systemy_uczace/Systemy...

Systemy uczące się

Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki

mbereta@pk.edu.pl beretam@torus.uck.pk.edu.pl

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