Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Systemy uczące się
dr Przemysław Juszczuk
Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny
wykład 1
dr Przemysław Juszczuk Systemy uczące się
e-mail: [email protected]
Konsultacje: na stronie katedry + na stronie domowej
Pokój 202 budynek B
pjuszczuk.pl
dr Przemysław Juszczuk Systemy uczące się
Zaliczenie ćwiczeń – 70%
Prezentacja i demonstracja zaimplementowanego systemuwykorzystującego techniki maszynowego uczenia połączona z dyskusją natemat jego teoretycznych podstaw.
Zaliczenie wykładu – 30%
Test wielokrotnego wyboru bez możliwości korzystania z notatek.
dr Przemysław Juszczuk Systemy uczące się
Zakres przedmiotu1 Sztuczna inteligencja w uczeniu maszynowym.2 Eksploracja danych a uczenie maszynowe.3 Metody pozyskiwania wiedzy i podstawy preprocessingu danych.4 Wzorce i reguły.5 Klasyfikatory bazujące na drzewach decyzyjnych.6 Ocena jakości klasyfikacji.7 Metody probabilistyczne i naiwny klasyfikator Bayesa.8 Klasyfikator 1-nn i k-nn.9 Podsumowanie i przykłady zastosowań.
dr Przemysław Juszczuk Systemy uczące się
Zakres ćwiczeń
wczytywanie danych i preprocessing;projekty do wykonania: drzewa decyzyjne, sieci Kohonena, k-nn, siecineuronowe;WEKA (RapidMiner) i przegląd algorytmów;implementacja wybranych metod.
dr Przemysław Juszczuk Systemy uczące się
dr Przemysław Juszczuk Systemy uczące się
dr Przemysław Juszczuk Systemy uczące się
dr Przemysław Juszczuk Systemy uczące się
Uczenie się
zmienność systemu w czasie;poprawa określonego kryterium – możliwość dokładnegooszacowania, o ile w danym momencie system jest ”lepszy”, czyli oile lepsze wyniki osiąga. Możliwość dokładnego przełożenia nakonkretną wartość liczbową;możliwość wskazania zmian negatywnych i zmian pozytywnych;nie każda korzystna zmiana w systemie jest automatycznierównoważna procesowi uczenia się;autonomiczność systemu – zmiana wprowadzana jest przez systemsamodzielnie, a nie jest efektem interwencji z zewnątrz;doświadczenie zdobyte przez system na podstawie pewnychokreślonych czynników zewnętrznych.
dr Przemysław Juszczuk Systemy uczące się
Definicja
Każda autonomiczna zmiana w systemie zachodząca na podstawiedoświadczeń, która prowadzi do poprawy jakości jego działania. P.Cichosz, ”Systemy uczące się”.
Wynik uczenia się
W wyniku procesu uczenia się możliwe jest uzyskanie wiedzy orazumiejętności. Różnica pomiędzy wiedzą a umiejętnościami jest dośćpłynna, przy czym w sytuacji, kiedy konieczne jest wykonanie pewnegookreślonego szeregu czynności najczęściej używa się słowa ”umiejętność”.
dr Przemysław Juszczuk Systemy uczące się
Rysunek: Uczenie na przykładzie algorytmu
dr Przemysław Juszczuk Systemy uczące się
Przykłady uczenia się
gra w grę - uczenie na podstawie wcześniej rozegranych partii -modyfikacja pewnej funkcji oceniającej;diagnostyka medyczna - uczenie na podstawie poszerzenia zestawudostępnych danych;klasyfikacja - problem klasyfikacji obiektów pojawiających się wsystemie;kierowanie pojazdem.
Motywacja uczenia się
złożone problemy, dla których konieczne może okazać się podejścieniedeterministyczne;dążenie do maksymalnej autonomiczności ze strony systemów;analiza, klasyfikacja i odkrywanie zależności w złożonych zbiorachdanych.
dr Przemysław Juszczuk Systemy uczące się
Rodzaje systemów uczących się
metoda reprezentacji wiedzy - wybór wewnętrznej reprezentacjidanego problemu z uwzględnieniem dziedziny zastosowania systemu,możliwości wykorzystania wiedzy środowiskowej, prostotyprzekształcenia;sposób używania wiedzy/umiejętności - powiązany z reprezentacjąwiedzy oraz celem, jakiemu ma służyć - np. klasyfikacja lubaproksymacja;źródło i postać informacji trenującej - uczenie nadzorowane oraznienadzorowane (gdzie w pierwszym przypadku dostępna jestinformacja wyjściowa odpowiadająca zestawowi zmiennychwejściowych, natomiast w drugim przypadku uczenie możliwe jesttylko na podstawie pewnego zestawu wektorów wejściowych);mechanizm nabywania wiedzy/umiejętności- wyznaczany najczęściejprzez zastosowaną metodę reprezentacji wiedzy - np. indukcja, czyliuogólnianie zdobywanej wiedzy.
dr Przemysław Juszczuk Systemy uczące się
Dziedziny pokrewne
teoria prawdopodobieństwa;teoria informacji;logika formalna;statystyka;teoria sterowania;psychologia;neurofizjologia.
Sztuczna inteligencja - SI
system, który myśli jak człowiek;system, który myśli racjonalnie;
dr Przemysław Juszczuk Systemy uczące się
Główne działy sztucznej inteligencji
automatyczne wnioskowanie (systemy ekspertowe oraz automatycznedowodzenie twierdzeń);przeszukiwanie - zadanie przeszukiwania dużej przestrzeni rozwiązań;planowanie - znalezienie planu rozwiązania w sposób bardziejefektywny, niż poprzez przeszukiwanie;uczenie się - zachowanie racjonalne systemu oraz dążenie doposzerzania zakresu wiedzy/umiejętności (uczenie się, jakownioskowanie).
dr Przemysław Juszczuk Systemy uczące się
Przekształcenia wiedzy
generalizacja/specjalizacja;abstrakcja/konkretyzacja;podobieństwo/kontrastowanie;wyjaśnianie/predykcja.
dr Przemysław Juszczuk Systemy uczące się
Preprocessing danych
Przetwarzanie wstępne (ang. preprocessing) polega naprzekształceniu danych doprowadzonych do wejścia systemu doformatu akceptowanego przez moduł wnioskowania.
Przetwarzanie końcowe (ang. postprocessing) służy do konwersjidanych wyjściowych z tego modułu do postaci zgodnej z wymogamiukładów zewnętrznych.
Procedura fuzyfikacji (z ang. fuzzification), polega na transformacjiwartości z dziedziny liczb rzeczywistych na wartości z dziedzinyzbiorów rozmytych. W tym celu dokonuje się wyznaczenia wartościfunkcji przynależności dla kolejnych zmiennych lingwistycznych i dladanej rzeczywistej wartości wejściowej.
Defuzyfikacja (ang. defuzzification), zwana również wyostrzaniem,jest przekształceniem odwrotnym do rozmywania, czylitransformacją informacji zawartej w zbiorze rozmytym do postacipojedynczej wartości (crisp value)
dr Przemysław Juszczuk Systemy uczące się
Usuwanie danych odstających. Gdzie pewna wartość ze zbioru danychwejściowych znacznie odstaje od pozostałych. Może się tak zdarzyć naprzykład na skutek błędnie odczytanych wejściowych, przekłamania wzapisie itp.
Rysunek: Dane odstające na wykresie
dr Przemysław Juszczuk Systemy uczące się
Rysunek: Wartości obserwacji w tabeli
dr Przemysław Juszczuk Systemy uczące się
Skalowanie danych
Dane wejściowe należą do przedziału < xmin : xmax >Dane wyjściowe należą do przedziału < ymin : ymax >
y = ymin + (x−xmin)·(ymax−ymin)xmax−xmin
Sieci neuronowe < −1, 1 >Rozmyte sieci kognitywne < 0, 1 >
Normalizacja danych
Normalizacja danych do przedziału < 0 : 1 >y = x/xmax
W przypadku danych ujemnych : przedział < −xmin, xmax > na< 0, ymax >
Dyskretyzacja danych wejściowych
podział zbioru początkowego na n równych części.podział zbioru w zależności od częstości występowania obiektów.
dr Przemysław Juszczuk Systemy uczące się
Pozyskiwanie wiedzy
Pozyskiwanie wiedzy
Ekspert sam przedstawia wiedzę w postaci reguł (łańcuchprzyczynowo-skutkowy):„Jeśli coś to wtedy...”Zaletą jest czytelność. Liczne wady : czas potrzebny do przekazaniawiedzy, konieczność usystematyzowania wiedzy przez eksperta.Ekspert określa prawdopodobieństwo wpływu poszczególnych cechna daną sytuację. Np. Lekarz określający prawdopodobieństwowystąpienia danego objawu. Zdecydowaną wadą takiego podejściajest błędne szacowanie prawdopodobieństwa + różni eksperci mogąróżnie interpretować pewne fakty.Budowa bazy wiedzy opartej na przykładach. Nie zawsze jednak dladanego problemu istnieje wystarczająca liczba opisanych przypadków.
dr Przemysław Juszczuk Systemy uczące się
Problem pozyskiwania wiedzy
Duża liczba ekspertów. Metody wykorzystujące n ekspertów.
Mini metoda delficka
uczestnik niezależnie od innych opracowuje swoją ocenę,przedstawienie wszystkich ocen na forum (anonimowo),dyskusja nad rozbieżnościami,każdy ekspert weryfikuje swoją ocenę,mediana ostatnich wyników przyjmowana jako wynik końcowy.
dr Przemysław Juszczuk Systemy uczące się
Reprezentacje wiedzy
Reprezentacje wiedzy
Regułowe bazy wiedzy - wiedza zapisana w postaci reguł :if obiekt = wartość then regułaTablice decyzyjne - odpowiadają regułom. Zapis w tablicy, gdziejeden wiersz odpowiada jednej regule. Zawiera atrybuty warunkoweoraz atrybut/atrybuty decyzyjne.Język perceptów - (SKRZYDLA : SAMOLOT : X ,MA)Język predykatów - Wyższy(Paweł, Piotr)wiedza niepewna (zbiory przybliżone, sieci Bayesa).
dr Przemysław Juszczuk Systemy uczące się
Podstawowe definicje
Fakt;Przesłanka;Konkluzja;Reguła;Wnioskowanie.
dr Przemysław Juszczuk Systemy uczące się
Typy wnioskowania
Wnioskowanie w przód : wnioskowanie od faktów do celu(wnioskowanie sterowane danymi).Wnioskowanie w tył : wnioskowanie od celu do faktów(wnioskowanie sterowane celem).Wnioskowanie mieszane : cechy wnioskowania w tył i w przód. Np.podział bazy wiedzy na dwie części dla wnioskowania w przód orazw tył.
dr Przemysław Juszczuk Systemy uczące się
Przykład wnioskowania
Dana jest baza wiedzy :R1: jeżeli „a” i „b” i „c” to „d”R2: jezeli „a” i „b” to „g”R3: jeżeli „b” i „c” to „e”R4: jeżeli „a” i „c” to „f”R5: jeżeli „e” i „b” i „c” to „f”
Dane są fakty : „a”, „b”, „c”. Celem wnioskowania jest „f”.
dr Przemysław Juszczuk Systemy uczące się
Przykład wnioskowania
Dana jest baza wiedzy :R1: jeżeli „a” i „b” i „c” to „d”R2: jeżeli „a” i „d” to „g”R3: jeżeli „a” i „f” to „b”R4: jeżeli „b” i „g” to „f”R5: jeżeli „a” i „e” to „f”R6: jeżeli „e” i „f” to „a”R7: jeżeli „a” i „b” to „c”
Dane są fakty : „a” i „e”. Udowodnić hipotezę „g”.
dr Przemysław Juszczuk Systemy uczące się
Tablicowe przedstawienie wiedzy KRS - Knowledge RepresentationSystem.
Tablica decyzyjna jest modyfikacją KRS.
Definicja bazy wiedzy:
K = (U,R),U - skończony zbiór obiektów zwany uniwersum,
R = {R1,R2, ...,Rn} - zbiór relacji równoważnościowych nad U
KRS to skończona tablica, w której rzędy są etykietowane przezobiekty a kolumny przez atrybuty
na przecięciu wiersza i kolumny znajduje się wartość atrybutudanego obiektu.
dr Przemysław Juszczuk Systemy uczące się
Tablica: Klasyfikacja zabawek.
Kolor Kształt Materiał Wielkość CenaMiś brązowy owalny plusz duża niska
Lalka różowy owalny guma średnia wysokaSamochód czerwony kanciasty metal mała wysoka
Piłka zielony okrągły plastyk średnia średnia
U = {{Mis}, {Lalka}, {Samochod}, {Pilka}}A = {{Kolor}, {Ksztalt}, {Material}, {Wielkosc}, {Cena}}
dr Przemysław Juszczuk Systemy uczące się
Tablica: Klasyfikacja zabawek.
Kolor Kształt Materiał Wielkość CenaMiś brązowy owalny plusz duża niska
Lalka różowy owalny guma średnia wysokaSamochód czerwony kanciasty metal mała wysoka
Piłka zielony okrągły plastyk średnia średnia
Klasa abstrakcji obiektu x relacji R (oznaczamy [x ]R) to zbiór tychobiektów z U, które są w relacji R z obiektem x.
Przez U/R oznaczamy zbiór wszystkich klas abstrakcji R.
Klasy abstrakcji są rozłączne i tworzą pokrycie zbioru U
Przez U/IND(B) oznaczmy klasy abstrakcji relacji IND(B).
dr Przemysław Juszczuk Systemy uczące się
Tablica: Tablica decyzyjna.
a b c d eX1 1 0 2 2 0X2 0 1 1 1 2X3 2 0 0 1 1X4 1 1 0 2 2X5 1 0 2 0 1X6 2 2 0 1 1X7 2 1 1 2 2X8 0 1 1 0 1
Obiekty : X = {1,..,8}Atrybuty warunkowe : C = {a,b,c}Atrybuty decyzyjne : D = {d,e}Atrybuty : A = C ∪ DWartości a : Va = {0,1,2}Wartości b : Vb = {0,1,2}Wartości c : Vc = {0,1,2}
dr Przemysław Juszczuk Systemy uczące się
Predykaty
Skrócona metoda zero-jedynkowa
Tablica: Skrócona zero-jedynkowa
(p ∧ q) → (q ∧ p)1
1 1 11 1 1 1 11 1 1 1 1 11 1 1 1 1 1 1
dr Przemysław Juszczuk Systemy uczące się
Sieci kognitywne
Dane temporalne - definicja
Niech T = t0, t1, ..., tn - ciąg etykiet czasu;∀i ∈ T , ti − ti−1 = ∆ti = 1;
Dane temporalne - przykład
t1 : a1 = 0.3; a2 = 0.6; a3 = 0.1;t2 : a1 = 0.6; a2 = 0.2; a3 = 0.5;tn : a1 = 0.3; a2 = 0.3; a3 = 0.6;
dr Przemysław Juszczuk Systemy uczące się
Czym jest sieć kognitywna?
Jedna z metod reprezentacji wiedzy stosowanych w systemachwspomagania decyzji.Zainspirowane biologią i psychologią.Korzystają z takich elementów jak : pojęcie, relacja przyczynowa.Mają formę grafu.Przy pomocy sieci kognitywnej zaprojektować można pewien procesdecyzyjny, lub środowisko.
dr Przemysław Juszczuk Systemy uczące się
Sieć kognitywna
FCM = 〈C ,A,W 〉 (1)
gdzie: C jest skończonym zbiorem pojęć, A to zbiór aktywacji pojęć(ai ∈ [0, 1]), W zbiór wartości wag wij ∈ [−1, 1].
dr Przemysław Juszczuk Systemy uczące się
Rysunek: Sieć kognitywna
dr Przemysław Juszczuk Systemy uczące się
Rysunek: a - reprezentacja grafowa; b - reprezentacja macierzowa
dr Przemysław Juszczuk Systemy uczące się
Rozmycie sieci
Podstawowa wersja sieci kognitywnej zakłada dwa stany : dodatniwpływ, oraz ujemny wpływ pojęć na siebie.FCM pozwala na określenie częściowego ujemnego, lub dodatniegowpływu.Rozmycie określane jest na podstawie pewnych ustalonychpoziomów.
Rozmycie
bardzo słaby 0− 0.2słaby 0.2− 0.4średni 0.4− 0.6silny 0.6− 0.8bardzo silny 0.8− 1.0
dr Przemysław Juszczuk Systemy uczące się
Więcej o macierzach
Macierz nie jest częścią sieci kognitywnej, tylko jej strukturąpomocniczą.Macierz wskazuje zależności pomiędzy pojęciami.Macierz jest strukturą kwadratową, gdzie liczba wierszy i kolumnrówna jest liczbie pojęć.Każda komórka macierzy to jedno połączenie pomiędzy pojęciami.W przypadku braku zależności pomiędzy pojęciami, w danej komórceznajduje się 0.Wartość w komórce macierzy określa siłę wpływu (wagę) jednegopojęcia na inne.Wagi znajdują się w przedziale [−1, 1], gdzie -1 określa wpływujemny, natomiast 1 dodatni.
dr Przemysław Juszczuk Systemy uczące się
Uczenie sieci - problem
Dane historyczne dla pojęć,Brak informacji na temat zależności pomiędzy pojęciami,Brak informacji na temat wag sieci,
Zadanie
Wykrycie zależności pomiędzy pojęciami,Wykrycie wartości wag pomiędzy pojęciami.
dr Przemysław Juszczuk Systemy uczące się
Uczenie sieci - problem
Dane historyczne dla pojęć,Brak informacji na temat zależności pomiędzy pojęciami,Brak informacji na temat wag sieci,
Zadanie
Wykrycie zależności pomiędzy pojęciami,Wykrycie wartości wag pomiędzy pojęciami.
dr Przemysław Juszczuk Systemy uczące się
Uczenie sieci - problem II
Potrzebny jest algorytm, który w sposób automatyczny potrafi:Określić zbiór pojęć danej sieci,Znaleźć zależności pomiędzy nimi,Obliczyć wpływ poszczególnych pojęć na siebie.
dr Przemysław Juszczuk Systemy uczące się
Uczenie sieci
Znane są dwie główne metody uczenia rozmytych sieci kognitywnych:Uczenie z wykorzystaniem wiedzy eksperta z danej dziedziny.Automatyczne generowanie sieci z danych historycznych.
Metoda klasyczna
Pierwsza opisywana metoda opiera się na wykorzystaniu pomocyekspertów dziedzinowych. Zadaniem ekspertów jest:
Określenie kluczowych pojęć.Wskazanie relacji pomiędzy pojęciami.Ustalenie siły wpływu poszczególnych pojęć na siebie.
dr Przemysław Juszczuk Systemy uczące się
Wnioskowanie w FCM
Ci (t + 1) = γ(Σni=1wij ·Ci (t))
C1(t + 1) = 0.9· 0.9 + 0.8· 0.8C1 = 1.45, a wartość C musi należeć do przedziału [0, 1].
γ
γ pełni rolę funkcji normalizującej wartość pojęcia do przedziału [0, 1].
Coś o normalizacji
Wartość każdego pojęcia zmieniana jest tak, aby pasowała do przedziału[0, 1]. Dokonać można tego za pomocą specjalnej funkcji zwanej funkcjąsigmoidalną:
f (x) = 11+e−Cx
dr Przemysław Juszczuk Systemy uczące się
Rysunek: Rozmyta sieć kognitywna
dr Przemysław Juszczuk Systemy uczące się
f =1
(te − 1) · n·
te∑t=ts
n∑i=1
|ai (t)− a′i (t)|p, (2)
where:
tl dolna granica okna czasowego oraz indeks początkowy seriidanych;
tu górna granica okna czasowego oraz indeks końcowy serii danych;
n = card(C ) liczba pojęć;
p parametr sterujący procesu uczenia p = 1,
an(t) obserwowana wartość i-tego pojęcia w chwili czasu t
a′n(t) obserwowana wartość wygenerowana przez FCM.
dr Przemysław Juszczuk Systemy uczące się
Rysunek: Atraktor chaotyczny
dr Przemysław Juszczuk Systemy uczące się
Zadanie klasyfikacji – dane wejściowe
Zestaw danych w dowolnym formacie, w którym uwzględniony zostałzestaw atrybutów warunkowych oraz atrybut decyzyjny.
Zadanie klasyfikacji – dane wyjściowe
Model pozwalający wskazać nowym danym wyjściowym określonąwartość atrybutu decyzyjnego na podstawie obserwacji dostępnych zdanych wejściowych.
Predykcja klasy decyzyjnej
Zadaniem klasyfikatora jest predykcja pewnej nieznanej wartości atrybutudecyzyjnego danego obiektu.
dr Przemysław Juszczuk Systemy uczące się
Proces klasyfikacji
zbiór trenujący i testujący;klasyfikator budowany jest na podstawie zbioru trenującego;ocena jakości klasyfikacji bazuje na zbiorze testującym;wynikiem klasyfikacji może być zbiór reguł, budowa klasyfikatora;współczynnik dokładności jako miara oceny klasyfikacji.
dr Przemysław Juszczuk Systemy uczące się
dr Przemysław Juszczuk Systemy uczące się
Ocena klasyfikacji
Popularne miary jakości klasyfikacji:
dokładność,
czułość,
precyzja.
dr Przemysław Juszczuk Systemy uczące się
Macierz błędu
Informacje zawarte w macierzy dotyczą klasy decyzyjnej obiektu. Napodstawie macierzy możliwe jest wskazanie wartości miar ocenyklasyfikacji takich jak dokładność, precyzja, czy czułość.
Przewidziana pozytywna Przewidziana negatywnaPozytywne True positive False negativeprzykłady (TP) (FN)
Negatywne False positive True negativeprzykłady (FP) (TN)
dr Przemysław Juszczuk Systemy uczące się
Dokładność
Klasyczna miara oceny jakości klasyfikacji. Opisuje liczbę obiektów, którezostały sklasyfikowane poprawnie, do wszystkich obiektów.
evacc(T ,S) =(TP + TN)
(TP + TN + FP + FN)
Przewidziana pozytywna Przewidziana negatywnaPozytywne True positive False negativeprzykłady (TP) (FN)Negatywne False positive True negativeprzykłady (FP) (TN)
dr Przemysław Juszczuk Systemy uczące się
Czułość
Miara stosowana w przypadku klasyfikacji binarnej. Wskazuje stosunekliczby obiektów zaklasyfikowanych do klasy P do wszystkich obiektów,które powinny zostać zaklasyfikowane do P.
evrec(T ,S) =TP
(TP + FN)
Przewidziana pozytywna Przewidziana negatywnaPozytywne True positive False negativeprzykłady (TP) (FN)Negatywne False positive True negativeprzykłady (FP) (TN)
dr Przemysław Juszczuk Systemy uczące się
Precyzja
Pozwala wyznaczyć liczbę niepoprawnych prób klasyfikacji obiektów zklasy N do klasy P. Jest to stosunek obiektów poprawniesklasyfikowanych do P do wszystkich obiektów przypisanych do tej klasy.
evprec(T ,S) =TP
(TP + FP).
Przewidziana pozytywna Przewidziana negatywnaPozytywne True positive False negativeprzykłady (TP) (FN)Negatywne False positive True negativeprzykłady (FP) (TN)
dr Przemysław Juszczuk Systemy uczące się
Metody klasyfikacji
drzewa decyzyjne;klasyfikator Bayesa;sieci neuronowe;algorytm k-nn;metaheurystyki.
dr Przemysław Juszczuk Systemy uczące się
Klasyfikacja a predykcja
w przypadku klasyfikacji chodzi nam o wskazanie klasy decyzyjnejdla określonego obiektu, przy czym wartości atrybutu decyzyjnego sądyskretne;predykcja to modelowanie funkcji ciągłych.
dr Przemysław Juszczuk Systemy uczące się
Dziękuję za uwagę.
dr Przemysław Juszczuk Systemy uczące się