Instytut Automatyki i Inżynierii Informatycznej Politechniki
Transkrypt
Instytut Automatyki i Inżynierii Informatycznej Politechniki
2016 © Adam Meissner Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner [email protected] http://www.man.poznan.pl/~ameis Elementy uczenia maszynowego Literatura [1] Bolc L., Zaremba J., Wprowadzenie do uczenia się maszyn, Akadamicka Oficyna Wydawnicza RM, War szawa, 1992. [2] Cichosz P., Systemy uczące się, WNT, Warszawa, 2000. [3] Flach P. A., Logical approaches to Machine Learning – an overview, in Think, vol. 1, Sept. 1992, pp. 25–36. [4] Harmelen F. van, Bundy A., Explanation-Based Gene ralisation = Partial Evaluation, Artif. Intell. 36(3), 1988, pp. 401–412. [5] Martinek J., Materiały do wykładów z przedmiotu Sztuczna inteligencja, prowadzonych w latach 1998 2008 na Wydz. Elektrycznym Politechniki Poznańskiej. [6] Nilsson N. J., Introduction to Machine Learning, Stan ford University, 1998. [7] Russell S.J., Norvig P., Artificial Intelligence: A Modern Approach, Prentice Hall, New Jersey, 2003. 1 2016 © Adam Meissner Plan wykładu 1. Wprowadzenie 2. Uczenie nadzorowane i bez nadzoru 3. Ujęcia logiczne w uczeniu maszynowym ● ● ● indukowanie pojęć poprzez przeszukiwanie przestrze ni wersji (ang. version space search) indukcyjne programowanie w logice (ang. inductive lo gic programming) uczenie przez objaśnianie (ang. explanation-based le arning) 2 2016 © Adam Meissner Wprowadzenie • uczenie maszynowe (ang. machine learning) to zdolność maszyny (systemu) do rozszerzania wie dzy i udoskonalania swoich zachowań na podsta wie zdobywanych doświadczeń • podstawą maszynowego uczenia jest indukcja, czyli wyprowadzanie wniosków i uogólnień z przy kładów Klasyfikacja metod uczenia indukcyjnego • uczenie nadzorowane (ang. supervised learning), które zwykle wykorzystuje się do klasyfikowania przykładów • uczenie bez nadzoru (ang. unsupervised learning), stosowane zazwyczaj do odkrywania struktur (np. skupień, regularności) występujących w analizo wanych danych 3 2016 © Adam Meissner Uczenie nadzorowane (1) • niech termin przykład oznacza wektor (f1, …, fn), gdzie każdy element fi dla 1 ≤ i ≤ n jest wartością pewnej cechy • niech E oznacza zbiór przykładów a L niech bę dzie zbiorem klas, do których należą przykłady ze zbioru E, niech l oznacza klasyfikację, tj. funkcję l: E → L; jeżeli L jest zbiorem ciągłym, wówczas funkcja l nosi nazwę regresji • daną wejściową dla rozpatrywanych metod jest funkcja l': E' → L' nazywana zbiorem treningowym, gdzie E' ⊆ E to zbiór przykładów treningowych a zbiór L' ⊆ L jest zmienną docelową; dowolny ele ment zbioru L' nosi nazwę wartości docelowej Przykład 1 Przykłady treningowe dla zmiennej docelową rozgry wanie meczu na dworze 4 2016 © Adam Meissner Uczenie nadzorowane (2) • celem uczenia nadzorowanego jest znalezienie klasyfikatora, czyli jak najlepszej aproksymacji funkcji l na podstawie funkcji l' • problemy spotykane przy poszukiwaniu klasyfika torów: − nadmierne dopasowanie − skrzywione zbiory danych − rodzaje klasyfikatorów w uczeniu nadzorowanym: − klasyfikatory Bayesa − maszyny wektorów wspierających (ang. sup port vector machines) − drzewa decyzyjne − uczenie na przykładach (ang. instance-based learning) − sztuczne sieci neuronowe 5 2016 © Adam Meissner Uczenie bez nadzoru • celem uczenia bez nadzoru jest odkrywanie struktur, regularności lub powtarzających się wzorców w (zbiorach) danych wejściowych • uczenie bez nadzoru stosuje się zwykle w związku z eksploracją danych (ang. data mining) • w rozpatrywanej klasie metod nie wymaga się podawania zbiorów treningowych • do popularnych metod uczenia bez nadzoru należą: − grupowanie (klasteryzacja), polegające na od krywaniu grup lub klastrów podobnych obiektów wśród danych − techniki wydobywania reguł asocjacji, opisujących powiązania między danymi • algorytmy grupowania dzielą się na: − grupowanie niehierarchiczne oraz hierarchicz ne - w drugim przypadku odkrywane grupy po rządkuje się w strukturę drzewiastą − grupowanie twarde i miękkie - w pierwszym przypadku przypisanie obiektu do grupy jest jednoznaczne, w przypadku drugim przypisanie określa się z pewnym stopniem przynależności 6 2016 © Adam Meissner Przeszukiwanie przestrzeni wersji (1) Założenia wstępne T E+ EE H – – – – – teoria przedmiotowa, zbiór przykładów pozytywnych, zbiór przykładów negatywnych, zbiór wszystkich przykładów (E = E+ ∪ E-), hipotetyczna definicja pojęcia (hipoteza). T, E i H są zbiorami klauzul Horna. Zadanie ogólne Znaleźć hipotezę H na podstawie zbiorów T i E, spełniają cą warunki: • hipoteza jest niesprzeczna z przykładami i teorią przed miotową (∀ h ∈ H) ~( T ∪ E |= ~h) • hipoteza objaśnia przykłady: (T ∪ H) |= E Metoda rozwiązania Konstruowanie formuły H poprzez rozpatrywanie kolejnych jej wersji, aż do uzyskania najbardziej specyficznego uogólnienia (ang. Least General Generalisation) 7 2016 © Adam Meissner Przeszukiwanie przestrzeni wersji (2) Konstruowanie najbardziej specyficznego uogólnienia • przestrzeń wersji V (ang. Version Space) – zbiór wszystkich hipotez utworzonych dla teorii przedmiotowej T i zbioru przykła dów E, • relacja Θ-subsumpcji (Θ-s) – relacja określona na zbiorze par klauzul; klauzula C1 Θ-subsumuje klauzulę C2 (C1 jest bardziej ogólna od C2) wtw. istnieje takie podstawienie Θ, że każdy lite rał występujący w klauzuli C1Θ występuje również w C2, • relacja Θ-subsumpcji określa częściowy porządek w przestrzeni wersji. Działania zachowujące relację C1 Θ-s C2 • uogólnienie klauzuli C1 poprzez usunięcie literału lub zastą pienie termu zmienną, • specjalizowanie klauzuli C2 poprzez dodanie literału lub za stąpienie zmiennej termem. Specyfikacja problemu Dla teorii przedmiotowej T i zbioru przykładów E skonstruować taką hipotezę H, że w przestrzeni wersji V określonej dla T i E nie istnieje hipoteza mniej ogólna od H. Zarys metody rozwiązania 1. Niech H będzie najogólniejszym elementem zbioru V. 2. Iterując po wszystkich elementach zbioru E przekształcać H przez specjalizowanie lub uogólnianie w taki sposób, aby osta tecznie uzyskać możliwie najmniej ogólne H, które obejmuje każdy przykład pozytywny i nie obejmuje żadnego przykładu negatywnego. 8 2016 © Adam Meissner Przeszukiwanie przestrzeni wersji (3) Przykład 2 Teoria przedmiotowa T kolor(X,Y):Y = trefl; Y = pik; Y = kier; Y = karo. wartość(X,W):W = 2; W = 3; … ; W = 10; W = walet; W = dama; W = król; W = as. wartość_większa(X,W):- wartość(X,W1),większe(W1,W). maść(X,czarna):kolor(X,trefl); kolor(X,pik). maść(X,czerwona):kolor(X,kier); kolor(X,karo). Zbiór przykładów pojęcia E = { (kolor(X,karo), wartość(X,2).), (:- maść(X,czarna), wartość_większa(X,10).), (kolor(X,kier), wartość(X,król).)} Przykład przestrzeni wersji p(X). p(X):- wnw(X,10) p(X):-m(X,czerwona). p(X):-k(X,karo), w(X,2). Konstruowanie hipotezy H 1. H1 E1 2. H2 E2 3. H3 = = = = = { p(X). } kolor(X,karo), wartość(X,2). { p(X). } :- maść(X,czarna),wartość_większa(X,10). { p(X):- maść(X,czerwona)., p(X):- wartość_niewiększa(X,10).) E3 = kolor(X,kier), wartość(X,król). 4. H4 = { p(X):-maść(X,czerwona) }. 9 2016 © Adam Meissner Elementy indukcyjnego programowania w logice (1) Rezolucja odwrotna (inverse resolution) Zasada rezolucji L., H :– L′ Hθ. jeżeli Lθ = L′θ • dane: − przesłanka C1 = (L.), − przesłanka C2 = (H :– L′.) • wynik: wniosek (rezolwenta) C = (Hθ). Idea rezolucji odwrotnej [Muggleton 1988] • dane: − przesłanka C1 należąca do teorii przedmiotowej T − klauzula C należący do zbioru przykładów E • wynik: przesłanka C2 taka, że można przeprowadzić wniosko wanie rezolucyjne od C1 i C2 do C • szczególnym przypadkiem rezolucji odwrotnej jest regu ła absorpcji, która dla rachunku zdań ma postać: q :– A. , p :– A , B. q :– A. , p :– q , B. 10 2016 © Adam Meissner Elementy indukcyjnego programowania w logice (2) Reguła absorpcji dla rachunku predykatów Def. (odwrotność podstawienia) Niech θ będzie dowolnym podstawieniem postaci {x1/t1, ..., xn/tn}, gdzie symbole x1, ..., xn oznaczają zmienne a wyrażenia t1, ..., tn są dowolnymi termami. Odwrotnością podstawienia θ nazywa się man wyrażenie θ –1 postaci {t1/x1, ..., tn/xn}. Uwaga: dla dowolnego wyrażenia E, Eθθ –1 = E. Wnioskowanie za pomocą reguły absorpcji • dane: − przesłanka C1 = (L.), − wniosek C = (H.) • wynik: przesłanka C2 = (Hθ2-1 :– Lθ1θ2-1) gdzie podstawienie θ1 dotyczy zmiennych występujących wyłącznie w formule L, a podstawienie θ2 dotyczy pozostałych zmiennych w klauzuli C2. Przykład 3 [3] 1. C1 = less(X, s(X))., C = less(Y, s(s(Y))). 2. C2′ = less(Y, s(s(Y))) :– less(X, s(X)). 3. Niech θ1 = {X/s(Y)}, wtedy C2′′ = less(Y,s(s(Y))) :– less(s(Y), s(s(Y))). 4. Niech θ2- 1 = { s(s(Y)) / Z}, wtedy C2 = less(Y, Z) :– less(s(Y), Z). Rezolwenta C uzyskana z przesłanek C1 i C2 11 2016 © Adam Meissner Uczenie przez objaśnianie (1) Dane: • pojęcie docelowe – pewna definicja D (w postaci zbio ru klauzul) pojęcia p dla którego należy sformułować definicję spełniającą kryterium operatywności K • kryterium operatywności – zbiór pojęć (predykatów) K, których można użyć w nowej definicji pojęcia p • teoria przedmiotowa – zbiór klauzul T, objaśniający znaczenie pojęcia docelowego. Wynik Efektem uczenia przez objaśnianie (ang. explanation-ba sed learning, EBL) jest nowa definicja pojęcia p, skonstru owana na podstawie teorii przedmiotowej T i spełniająca kryterium operatywności K. Metoda Przekształcić pojęcie docelowe D do nowej postaci za po mocą dedukcji częściowej (ang. partial deduction) [4]. Dedukcja częściowa (Komorowski 1981) • skonstruować drzewo wywodów rezolucyjnych dla hipo tezy p i teorii D ∪ T, którego liście spełniają kryterium K • przekształcić uzyskane wywody w nową definicję poję cia p. 12 2016 © Adam Meissner Uczenie przez objaśnianie (2) Przykład 4 POJĘCIE DOCELOWE można_położyć_na(X,Y) :- lżejsze_od(X,Y). TEORIA PRZEDMIOTOWA T lżejsze_od(X,Y) :ciężar(X,W1), ciężar(Y,W2), W1 < W2. ciężar(X,50):- jest_to(X, stół). ciężar(X,W):objętość(X,V), gęstość(X,D), W is V * D. TKRYTERIUM OPERATYWNOŚCI k(is/2). k(</2). k(jest_to/2). NOWA DEFINICJA POJĘCIA K k(gęstość/2). k(objętość/2). p można_położyć_na(X,Y) :jest_to(X,stół), objętość(Y,V), gęstość(Y,D), W2 is V*D, 50 < W2. można_położyć_na(X,Y) :objętość(X,V), gęstość(X,D), W1 is V*D, jest_to(Y,stół), W1 < 50. można_położyć_na(X,Y) :objętość(X,V), gęstość(X,D), W1 is V*D, objętość(Y,V1),gęstość(Y,D1), W2 is V1*D1, W1 < W2. 13