Wybrane zagadnienia uczenia maszynowego. Zastosowania Informatyki w Informatyce W2 Krzysztof Krawiec

Podobne dokumenty
Wybrane zagadnienia uczenia maszynowego

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Drzewa decyzyjne i lasy losowe

ALGORYTM RANDOM FOREST

Algorytmy klasyfikacji

INDUKCJA DRZEW DECYZYJNYCH

KLASYFIKACJA. Słownik języka polskiego

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Systemy agentowe. Uwagi organizacyjne i wprowadzenie. Jędrzej Potoniec

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

Wprowadzenie do uczenia maszynowego

Metody klasyfikacji danych - część 1 p.1/24

Indukowane Reguły Decyzyjne I. Wykład 3

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.

INDUKCJA DRZEW DECYZYJNYCH

Co to są drzewa decyzji

RILL - przyrostowy klasyfikator regułowy uczący się ze zmiennych środowisk

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,

Drzewa decyzyjne. Inteligentne Obliczenia. Wydział Mechatroniki Politechniki Warszawskiej. Anna Sztyber

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

Uczenie się maszyn. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

Agnieszka Nowak Brzezińska Wykład III

Projekt Sieci neuronowe

Wprowadzenie do klasyfikacji

Agnieszka Nowak Brzezińska Wykład III

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

Systemy uczące się wykład 2

Agnieszka Nowak Brzezińska

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość

Metody selekcji cech

Data Mining Wykład 4. Plan wykładu

Widzenie komputerowe (computer vision)

Drzewa klasyfikacyjne Lasy losowe. Wprowadzenie

PODYPLOMOWE STUDIA ZAAWANSOWANE METODY ANALIZY DANYCH I DATA MINING W BIZNESIE

TEORETYCZNE PODSTAWY INFORMATYKI

Uwaga: szarych kropek po pokolorowaniu nie uwzględniaj w klasyfikowaniu kolejnych szarych.

Elementy modelowania matematycznego


SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Stan dotychczasowy. OCENA KLASYFIKACJI w diagnostyce. Metody 6/10/2013. Weryfikacja. Testowanie skuteczności metody uczenia Weryfikacja prosta

Systemy uczące się wykład 1

Złożoność i zagadnienia implementacyjne. Wybierz najlepszy atrybut i ustaw jako test w korzeniu. Stwórz gałąź dla każdej wartości atrybutu.

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

Metody klasyfikacji i rozpoznawania wzorców. Najważniejsze rodzaje klasyfikatorów

Systemy uczące się Lab 4

PODSTAWY STATYSTYCZNEGO MODELOWANIA DANYCH. Wykład 6 Drzewa klasyfikacyjne - wprowadzenie. Reguły podziału i reguły przycinania drzew.

Wprowadzenie. Data Science Uczenie się pod nadzorem

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016

CLUSTERING. Metody grupowania danych

Mail: Pokój 214, II piętro

Sztuczna inteligencja : Algorytm KNN

Klasyfikacja. Sformułowanie problemu Metody klasyfikacji Kryteria oceny metod klasyfikacji. Eksploracja danych. Klasyfikacja wykład 1

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

ED Laboratorium 3. Drzewa decyzyjne

Wprowadzenie do uczenia maszynowego

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Indukcja drzew decyzyjnych

LEMRG algorytm generowania pokoleń reguł decyzji dla baz danych z dużą liczbą atrybutów

SZTUCZNA INTELIGENCJA

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

WYKŁAD 1. Wprowadzenie w tematykę kursu

Analiza danych. TEMATYKA PRZEDMIOTU

SPOTKANIE 2: Wprowadzenie cz. I

Klasyfikacja LDA + walidacja

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Metody probabilistyczne klasyfikatory bayesowskie

Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji

Drzewa klasyfikacyjne algorytm podstawowy

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Metody oceny podobieństwa

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Metody scoringowe w regresji logistycznej

Wyk lad 8: Leniwe metody klasyfikacji

Szkolenie Analiza dyskryminacyjna

Drzewa decyzyjne. Nguyen Hung Son. Nguyen Hung Son () DT 1 / 34

Systemy agentowe. Uwagi organizacyjne. Jędrzej Potoniec

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 8 AiR III

Uczenie maszyn. Projekt: Porównanie algorytmów tworzenia drzew decyzyjnych. Politechnika Wrocławska. Michał Płodowski Michał Suszko

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

Wprowadzenie do programu RapidMiner Studio 7.6, część 4 Michał Bereta

WYKŁAD 6. Reguły decyzyjne

WYKŁAD: DRZEWA KLASYFIKACYJNE I REGRESYJNE. Metoda CART. MiNI PW

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Pattern Classification

Baza danych dla potrzeb zgłębiania DMX

komputery? Andrzej Skowron, Hung Son Nguyen Instytut Matematyki, Wydział MIM, UW

Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori.

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów

A Zadanie

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Optymalizacja ciągła

mgr inż. Magdalena Deckert Poznań, r. Uczenie się klasyfikatorów przy zmieniającej się definicji klas.

Metody Optymalizacji: Przeszukiwanie z listą tabu

Eksploracja danych. KLASYFIKACJA I REGRESJA cz. 2. Wojciech Waloszek. Teresa Zawadzka.

Transkrypt:

Wybrane zagadnienia uczenia maszynowego Zastosowania Informatyki w Informatyce W2 Krzysztof Krawiec

Przygotowane na podstawie T. Mitchell, Machine Learning S.J. Russel, P. Norvig, Artificial Intelligence A modern approach P. Cichosz, Systemy uczące się

Plan 1. Wprowadzenie do UM paradygmat uczenia sie z przykladow problemy klasyfikacji i regresji Klasyfikator minimalnoodleglosciowy Drzewa decyzyjne Rozwinięcia

Definicja zadania uczenia Uczenie = automatyczne modyfikowanie (się) systemu uczącego w celu polepszania skuteczności Realizowane przez pozyskiwanie wiedzy z danych uczących

Pojęcia podstawowe Dane uczące (training data): dane z których system uczący się uczy się, pozyskując wiedzę System uczący się (learning/induction algorithm) algorytm pozyskujący wiedzę z danych uczących Klasyfikator (classifier) ostateczna reprezentacja wiedzy wygenerowana przez system uczący się

Typowy przypadek użycia systemu uczącego się Proces odpytywania Nowa dana (przykład) Proces uczenia Dane uczące Algorytm uczący się Nauczony system (np. klasyfikator) Decyzja systemu

W ramach tego wykładu ograniczymy się do: Uczenie się z przykładów (learning from examples): dane uczące to przykłady prawidłowych decyzji podjętych w przeszłości (Uczenie się z innych danych niż przykłady możliwe, ale rzadkie w praktyce) Reprezentacja przykładów w postaci par atrybutwartość (attribute-value) (Inne reprezentacje możliwe, np. teksty)

Problem gry w tenisa/golfa Cel: Mając dane o warunkach pogodowych, podejmij decyzję czy grać w tenisa czy też nie Możliwe sposoby osiągnięcia celu: 1. Ręczna konstrukcja algorytmu (reguły decyzyjnej) => system ekspercki (poza zakresem tego wykładu) 2. Automatyczne pozyskanie wiedzy z danych => uczenie maszynowe

Problem gry w tenisa

Analogie w terminologii statystycznej Przykłady obserwacje Atrybuty zmienne niezależne Zmienna decyzyjna zmienna zależna

Skale atrybutów Nominalna szczególny przypadek: atrybut binarny Porządkowa Metryczne: Przedziałowa Ilorazowa

Odmiany zadania uczenia się z przykładów Atrybut decyzyjny (zmienna zależna) dyskretny -> klasyfikacja (classification) Atrybut decyzyjny ciągły -> regresja (regression) W ramach przedmiotu skupimy się na klasyfikacji

Motywacje Brak wiedzy o badanym zjawisku Np. robot poruszający się w nieznanym wcześniej środowisku Lenistwo projektanta systemu Czasami łatwiej nauczyć system niż konstruować go ręcznie od zera Duża liczba atrybutów Duża liczba przykładów

Reprezentacje wiedzy... stosowane w systemach uczących się: Wybrane przykłady uczące Drzewa decyzyjne Reguły decyzyjne Sieci neuronowe Rozkłady prawdopodobieństw

Cele uczenia 1. Skonstruuj możliwie prostą hipotezę możliwie dobrze opisującą (zgodną z) przykładami uczącymi 2. Skonstruuj model wyjaśniający obserwowane zjawisko

Który system/algorytm uczący się jest lepszy? Miary skuteczności systemów uczących się: Trafność/błąd klasyfikowania: procent poprawnie/niepoprawnie zaklasyfikowanych przykładów Czułość/specyficzność Mniej istotne: czasochłonność procesu uczenia czasochłonność procesu testowania

Pożądane właściwości Pożądane właściwości systemów uczących się: Wysoka trafność klasyfikowania w tym na nowych przykładach, czyli => zdolność uogólniania Odporność na szumy (na atr. warunkowych i decyzyjnym) Szybkość działania: Szybkość uczenia Szybkość odpytywania

Reprezentacja graficzna Chwilowo załóżmy że: 2. Atrybuty Temperature i Humidity są ciągłe 3. Inne atrybuty są nieistotne

Reprezentacja graficzna Humidity Przykłady negatywne (No) Przykłady pozytywne (Yes) Temp

Klasyfikatory minimalnoodległościo we

Idea Klasyfikuj nowe przykłady na podstawie ich podobieństwa do przykładów uczących Uczenie: Zapamiętaj wszystkie przykłady uczące Odpytywanie: Dla nowego przykładu X: Znajdź przykład uczący Y najbardziej podobny do X Zaklasyfikuj X do tej samej klasy do której należy Y Algorytm najbliższego sąsiada (nearest neighbour, NN)

Funkcja podobieństwa Zazwyczaj: podobieństwo = 1/odległość (np. odległość Euklidesowa) Im mniejsza odległość, tym większe podobieństwo

Działanie klasyfikatora NN Humidity Przykłady negatywne (No) Przykłady pozytywne (Yes) Temp

Działanie klasyfikatora NN Humidity Przykłady negatywne (No) Przykłady pozytywne (Yes) Temp

Cechy klasyfikatora NN Zalety: Prostota Bardzo szybki proces uczenia Wady: Duże zapotrzebowanie na pamięć Powolne odpytywanie Wiedza = przykłady uczące (brak reprezentacji wiedzy) Wszystkie atrybuty są tak samo istotne Znaczna podatność na przeuczenie

Rozszerzenia NN knn: wykorzystaj k>1 najbliższych sąsiadów do zaklasyfikowania nowego przykładu k najbliższych sąsiadów przeprowadza głosowanie (większościowe) nad przynależnością nowego przykładu

Klasyfikator knn, k=5 Humidity Przykłady negatywne (No) Przykłady pozytywne (Yes) Temp

Inne rozszerzenia Specjalne definicje odległości dla atrybutów dyskretnych/nominalnych Metody zapamiętujące tylko niektóre przykłady uczące (instance-based learning, IBL) Krytyczne jest zapamiętanie przykładów uczących leżących na granicach klas decyzyjnych

Idea IBL2 Przykłady negatywne (No) Przykłady pozytywne (Yes) Humidity Niepotrzebne przykłady uczące Temp

Drzewa decyzyjne

Testowanie wartości atrybutów Elementarną operacją wykorzystywaną w drzewach decyzyjnych jest testowanie wartości pojedynczego atrybutu, np. Outlook = Sunny? Temperature > 24?

Problem gry w tenisa

Cechy drzew Cechy drzew decyzyjnych jako formy reprezentacji wiedzy: Węzły odpowiadają testom na atrybutach Krawędzie odpowiadają wartościom atrybutów Każdy liść ma przypisaną etykietę klasy decyzyjnej

Które drzewo jest najlepsze? Hipotetycznie można by wygenerować wszystkie możliwe drzewa i testować czy są zgodne (spójne) ze zbiorem przykładów uczących Problem: jest ich bardzo dużo (wykładniczo względem liczby atrybutów, 2 2n dla n atrybutów binarnych) Potrzeba innego algorytmu (heurystyki)

TDIDT Top-Down Induction of Decision Trees Dla bieżącego węzła N: Wybierz najlepszy* atrybut A dla N Dla każdej wartości A, utwórz nowy węzeł potomny Skieruj przykłady do węzłów potomnych (stosownie do wartości A) Powtarzaj powyższe kroki dla wszystkich węzłów potomnych, aż do uzyskania idealnie czystych węzłów

Przestrzeń hipotez (drzew)

Właściwości TDIDT Rekurencyjna procedura Zachłanny charakter => zbudowane drzewo nie musi być optymalne (heurystyka)

Co to znaczy najlepszy atrybut? Idea: Sprawdź dla każdego atrybutu A, co by było gdyby użyć go w bieżącym węźle. Dla każdego takiego scenariusza oceń jakość wygenerowanego poddrzewa Wybierz/zaakceptuj poddrzewo o najwyższej jakości

Jak zdefiniować jakość poddrzewa?

Entropia Entropia (zawartość informacyjna, information content): miara oceniająca zbiór przykładów pod kątem czystości (jednolitości przynależności do klas decyzyjnych) Dla dwóch klas decyzyjnych (pozytywna, negatywna): p I p n, n p n = p p n log p 2 p n n p n log n 2 p n

Entropia

Information gain Entropia warunkowa: entropia po podziale zbioru przykładów przy pomocy atrybutu A (załóżmy że A przyjmuje v możliwych wartości): EntropiaWarunkowa A = i=1 v p i n i p n I p i p i n i, n i p i n i Zysk informacyjny (Information Gain): redukcja entropii przy wykorzystaniu danego atrybutu: IG A =I EntropiaWarunkowa A

Zalety drzew decyzyjnych Szybkie generowanie klasyfikatora Szybkie klasyfikowanie ( odpytywanie ) klasyfikatora Czytelność

Problem przeuczenia Indukowanie wiedzy z niekompletnych danych uczących pociąga za sobą w sposób nieunikniony ryzyko przeuczenia. Formalnie: przeuczenie zachodzi gdy: Trafność(zb_uczący) > Trafność(zb_testujący) Unikanie przeuczenia to jeden z podstawowych problemów w uczeniu maszynowym.

Przeuczenie drzewa decyzyjnego

Jak uniknąć przeuczenia? Obserwacja: Im dłuższa hipoteza (większa liczba warunków elementarnych), tym większe ryzyko przeuczenia Brzytwa Ockhama: preferuj najprostszą hipotezę która pasuje do danych (wyjaśnia dane) Dwie możliwości: Zatrzymywać budowanie drzewa gdy podział na węzłach stają się niestotne statystycznie => preprunning Budować pełne drzewo, a następnie je upraszczać => postprunning

Przykłady warunków preprunningu Nie dziel dalej węzła N jeżeli: liczba przykładów w N jest niewarygodnie mała zysk na kryterium jakości jest mało satysfakcjonujący

Które drzewo jest najlepsze? Miary oceny jakości drzewa: Trafność na zbiorze uczącym Trafność na osobnym podzbiorze walidującym Trafność + rozmiar drzewa

Algorytmy ID3 C4.5 = ID3 + obsługa atrybutów ciągłych + inne metody upraszczania drzewa CART

Rozszerzenia Obsługa atrybutów ciągłych Binaryzacja drzew (zwłaszcza w obecności atrybutów nominalnych o licznych dziedzinach) Wyrafinowane algorytmy upraszczania drzew Konwertowanie drzew na reguły decyzyjne Obsługa wartości brakujących (missing values) Uwzględnianie kosztów atrybutów

Uzupełnienia

Zastosowania Diagnostyka medyczna Diagnostyka techniczna Sterowanie robotami Finanse (np. klasyfikacja wniosków kredytowych, wniosków o karty kredytowe) Internet: filtry antyspamowe Wykrywanie włamań do systemów informatycznych Rozpoznawanie obrazów (np. klasyfikacja obiektów astronimocznych) Zastosowania wojskowe

Przykład: Problem medyczny Cięcie cesarskie Drzewo wyindukowane z opisów 1000 pacjentek Przykłady negatywne: zastosowanie cięcia

Zadanie regresji Tym razem celem jest przewidywanie (predykcja) wartości ciągłej zmiennej f(x) na podstawie zmiennych niezależnych (poniżej: x)

Zadanie regresji Prosty model (hipoteza) dokonujący w przybliżeniu poprawnej predykcji

Zadanie regresji Bardziej wyrafinowany model: zmniejszenie błędu na wielu przykładach kosztem polepszenia na jednym przykładzie

Zadanie regresji Model perfekcyjnie dopasowany do danych uczących. Czy to jest najlepszy model?

Zadanie regresji Odpowiedź: niekoniecznie, rzeczywiste zjawisko które wygenerowało obserwacje mogło wyglądać tak:

Inne warianty zadania uczenia Uczenie opisywane tutaj to uczenie nadzorowane (supervised learning): dane uczące zawierają poprawną decyzję dla każdego przykładu Inne warianty: Uczenie nienadzorowane (unsupervised learning): decyzje nieznane => m.in. analiza skupień Uczenie ze wzmacnianiem (reinforcement learning)