Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis Elementy uczenia maszynowego Literatura [1] Bolc L., Zaremba J., Wprowadzenie do uczenia się maszyn, Akadamicka Oficyna Wydawnicza RM, Warszawa, 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 Generalisation = 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, Stanford University, 1998. [7] Russell S.J., Norvig P., Artificial Intelligence: A Mo- -dern Approach, Prentice Hall, New Jersey, 2003. 1
1. Wprowadzenie 2017 Adam Meissner Plan wykładu 2. Uczenie nadzorowane i bez nadzoru 3. Ujęcia logiczne w uczeniu maszynowym indukowanie pojęć poprzez przeszukiwanie przestrzeni wersji (ang. version space search) indukcyjne programowanie w logice (ang. inductive logic programming) uczenie przez objaśnianie (ang. explanation-based learning) 2
Wprowadzenie uczenie maszynowe (ang. machine learning) to zdolność maszyny (systemu) do rozszerzania wiedzy i udoskonalania swoich zachowań na podstawie zdobywanych doświadczeń podstawą maszynowego uczenia jest indukcja, czyli wyprowadzanie wniosków i uogólnień z przykł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 analizowanych danych 3
Uczenie nadzorowane (1) niech termin przykład oznacza wektor (f 1,, f n ), gdzie każdy element f i 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 element zbioru L' nosi nazwę wartości docelowej Przykład 1 Przykłady treningowe dla zmiennej docelową rozgrywanie meczu na dworze 4
Uczenie nadzorowane (2) celem uczenia nadzorowanego jest znalezienie klasyfikatora, czyli jak najlepszej aproksymacji funkcji l na podstawie funkcji l' problemy spotykane przy poszukiwaniu klasyfikatorów: nadmierne dopasowanie skrzywione zbiory danych rodzaje klasyfikatorów w uczeniu nadzorowanym: klasyfikatory Bayesa maszyny wektorów wspierających (ang. support vector machines) drzewa decyzyjne uczenie na przykładach (ang. instance-based learning) sztuczne sieci neuronowe 5
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 odkrywaniu 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 hierarchiczne - w drugim przypadku odkrywane grupy porzą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
Przeszukiwanie przestrzeni wersji (1) Założenia wstępne T teoria przedmiotowa, E+ zbiór przykładów pozytywnych, E- zbiór przykładów negatywnych, E zbiór wszystkich przykładów (E = E+ E-), H 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ą przedmiotową ( 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
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ładów E, relacja -subsumpcji (-s) relacja określona na zbiorze par klauzul; klauzula C 1 -subsumuje klauzulę C 2 (C 1 jest bardziej ogólna od C 2 ) wtw. istnieje takie podstawienie, że każdy literał występujący w klauzuli C 1 występuje również w C 2, relacja -subsumpcji określa częściowy porządek w przestrzeni wersji. Działania zachowujące relację C 1 -s C 2 uogólnienie klauzuli C 1 poprzez usunięcie literału lub zastąpienie termu zmienną, specjalizowanie klauzuli C 2 poprzez dodanie literału lub zastą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 ostatecznie uzyskać możliwie najmniej ogólne H, które obejmuje każdy przykład pozytywny i nie obejmuje żadnego przykładu negatywnego. 8
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):-m(x,czerwona). p(x):- wnw(x,10) p(x):-k(x,karo), w(x,2). Konstruowanie hipotezy H 1. H 1 = { p(x). } E 1 = kolor(x,karo), wartość(x,2). 2. H 2 = { p(x). } E 2 = :- maść(x,czarna),wartość_większa(x,10). 3. H 3 = { p(x):- maść(x,czerwona)., p(x):- wartość_niewiększa(x,10).) E 3 = kolor(x,kier), wartość(x,król). 4. H 4 = { p(x):-maść(x,czerwona) }. 9
Elementy indukcyjnego programowania w logice (1) Rezolucja odwrotna (inverse resolution) Zasada rezolucji L., H : L H. jeżeli L = L dane: przesłanka C 1 = (L.), przesłanka C 2 = (H : L.) wynik: wniosek (rezolwenta) C = (H). Idea rezolucji odwrotnej [Muggleton 1988] dane: przesłanka C 1 należąca do teorii przedmiotowej T klauzula C należący do zbioru przykładów E wynik: przesłanka C 2 taka, że można przeprowadzić wnioskowanie rezolucyjne od C 1 i C 2 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
Elementy indukcyjnego programowania w logice (2) Reguła absorpcji dla rachunku predykatów Def. (odwrotność podstawienia) Niech będzie dowolnym podstawieniem postaci {x 1 /t 1,..., x n /t n }, gdzie symbole x 1,..., x n oznaczają zmienne a wyrażenia t 1,..., t n są dowolnymi termami. Odwrotnością podstawienia nazywa sięman wyrażenie 1 postaci {t 1 /x 1,..., t n /x n }. Uwaga: dla dowolnego wyrażenia E, E 1 = E. Wnioskowanie za pomocą reguły absorpcji dane: przesłanka C 1 = (L.), wniosek C = (H.) wynik: przesłanka C 2 = (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 C 2. Przykład 3 [3] 1. C 1 = less(x, s(x))., C = less(y, s(s(y))). 2. C 2 = less(y, s(s(y))) : less(x, s(x)). 3. Niech 1 = {X/s(Y)}, wtedy C 2 = less(y,s(s(y))) : less(s(y), s(s(y))). 4. Niech 2-1 = { s(s(y)) / Z}, wtedy C 2 = less(y, Z) : less(s(y), Z). Rezolwenta C uzyskana z przesłanek C 1 i C 2 11
Uczenie przez objaśnianie (1) Dane: pojęcie docelowe pewna definicja D (w postaci zbioru 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-based learning, EBL) jest nowa definicja pojęcia p, skonstruowana na podstawie teorii przedmiotowej T i spełniająca kryterium operatywności K. Metoda Przekształcić pojęcie docelowe D do nowej postaci za pomocą dedukcji częściowej (ang. partial deduction) [4]. Dedukcja częściowa (Komorowski 1981) skonstruować drzewo wywodów rezolucyjnych dla hipotezy p i teorii D T, którego liście spełniają kryterium K przekształcić uzyskane wywody w nową definicję pojęcia p. 12
Przykład 4 2017 Adam Meissner Uczenie przez objaśnianie (2) 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 k(is/2). k(gęstość/2). k(</2). k(objętość/2). k(jest_to/2). NOWA DEFINICJA POJĘCIA 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