Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Sztuczna Inteligencja Uczenie maszynowe Włodzisław Duch Katedra Informatyki Stosowanej UMK www.phys.uni.torun.pl/~duch Włodzisław Duch Katedra Informatyki.

Podobne prezentacje


Prezentacja na temat: "Sztuczna Inteligencja Uczenie maszynowe Włodzisław Duch Katedra Informatyki Stosowanej UMK www.phys.uni.torun.pl/~duch Włodzisław Duch Katedra Informatyki."— Zapis prezentacji:

1 Sztuczna Inteligencja Uczenie maszynowe Włodzisław Duch Katedra Informatyki Stosowanej UMK Włodzisław Duch Katedra Informatyki Stosowanej UMK

2 2 Co było: Teorie poznania Systemy oparte na wiedzy Modele kognitywne SOAR ACT Cog

3 3 Co będzie: Uczenie maszyn Metody indukcyjne Metody oparte na podobieństwie Drzewa decyzyjne Sieci neuronowe Algorytmy genetyczne

4 4 Uczenie maszyn Machine Learning, ML: część sztucznej inteligencji (symboliczne) lub inteligencji obliczeniowej (CI, computational intelligence) Modele adaptujące się, zmieniające swoje wewnętrzne parametry tak, by rozpoznać charakter danych. ML umożliwia mechanizację akwizycji wiedzy. Alternatywa dla tworzenia reguł na podstawie analizy zachowań ekspertów lub danych doświadczalnych. ML umożliwia mechanizację akwizycji wiedzy. Alternatywa dla tworzenia reguł na podstawie analizy zachowań ekspertów lub danych doświadczalnych. ML czerpie inspiracje z informatyki, statystyki, rozpoznawania struktur (pattern recognition) i kognitywistyki.

5 5 Uczenie maszyn System uczący się używa danych tworząc model pozwalający na przewidywanie zachowania dla przyszłych danych, czasami wyrażając swoją wiedzę w symbolicznej postaci. Uczenie: zmiany w systemie adaptującym się pozwalające mu w przyszłości działać bardziej efektywnie na zadaniach o podobnym lub analogicznym charakterze. System uczący się używa danych tworząc model pozwalający na przewidywanie zachowania dla przyszłych danych, czasami wyrażając swoją wiedzę w symbolicznej postaci. Uczenie: zmiany w systemie adaptującym się pozwalające mu w przyszłości działać bardziej efektywnie na zadaniach o podobnym lub analogicznym charakterze. Często dane są w postaci przykładów. Eksperci opisują sytuacje podając przykłady. Problemy redukują się do klasyfikacji (diagnozy). Reguły otrzymane metodami ML mogą być lepsze niż reguły wydedukowane przez ludzi. ML oferuje szybszą drogę do tworzenia systemów eksperckich - jeśli reguły nie są znane czasami jedyną drogę. Często dane są w postaci przykładów. Eksperci opisują sytuacje podając przykłady. Problemy redukują się do klasyfikacji (diagnozy). Reguły otrzymane metodami ML mogą być lepsze niż reguły wydedukowane przez ludzi. ML oferuje szybszą drogę do tworzenia systemów eksperckich - jeśli reguły nie są znane czasami jedyną drogę.

6 6 Porównanie czasów rozwoju ES NazwaTypL. regułCzas (lat)Poprawki (lata) MYCINES wiele XCONES GASOILML ,1 BMTML

7 7 Uczenie z nadzorem Uczenie z nadzorem: podział na znane klasy, przekazywanie znanej wiedzy, heteroasocjacja - kojarzenie obiektów i ich własności. Opis obiektów System adaptujący się Wyniki działania Pożądane odpowiedzi Funkcja kosztu Algorytm uczący Cel uczenia: generalizacja Opis obiektów System adaptujący się Wyniki działania Pożądane odpowiedzi Funkcja kosztu Algorytm uczący Cel uczenia: generalizacja

8 8 Uczenie bez nadzoru Wykrywanie nieznanych klas, uczenie spontaniczne, odkrywanie ciekawych struktur w przestrzeni danych, korelacja zachowa ń systemu ze zmian ą tych struktur. Dominuje w okresie niemowl ę cym. Wykrywanie nieznanych klas, uczenie spontaniczne, odkrywanie ciekawych struktur w przestrzeni danych, korelacja zachowa ń systemu ze zmian ą tych struktur. Dominuje w okresie niemowl ę cym. Opis obiektów p i System adaptujący się Tworzenie klas Miary podobieństwa Funkcja jakości grupowania Algorytm uczący Opis obiektów p i System adaptujący się Tworzenie klas Miary podobieństwa Funkcja jakości grupowania Algorytm uczący p3p3 p2p2 p1p1 s2s2 s3s3

9 9 Uczenie zachowań Uczenie z krytykiem lub z wzmocnieniem po żą danych zachowa ń po dłu ż szym okresie. Optymalizacja zysków na dłu ż sz ą met ę. Gry z przeciwnikiem: przegrana lub wygrana na ko ń cu partii. Uczenie dojrzałe (nabieranie m ą dro ś ci), behawioralne. Uczenie z krytykiem lub z wzmocnieniem po żą danych zachowa ń po dłu ż szym okresie. Optymalizacja zysków na dłu ż sz ą met ę. Gry z przeciwnikiem: przegrana lub wygrana na ko ń cu partii. Uczenie dojrzałe (nabieranie m ą dro ś ci), behawioralne. Opis obiektów/stanów p i Opis reguł działania System adaptujący się Tworzenie strategii/planów Miara sukcesu Algorytm uczący Opis obiektów/stanów p i Opis reguł działania System adaptujący się Tworzenie strategii/planów Miara sukcesu Algorytm uczący

10 10 Klasy metod Powszechnie stosowane : Drzewa decyzji/indukcja reguł Rozumowanie oparte na analogiach, precedensach (case-based) i oparte na pamięci (memory-based) Logika rozmyta Sieci neuronowe Pojawiają się: przestrzenie wersji (version spaces) algorytmy genetyczne sieci probabilistyczne (Baysowskie) zbiory i logika przybliżona induktywne programowanie logiczne (ILP) uczenie ze wzmocnieniem (reinforcement) Powszechnie stosowane : Drzewa decyzji/indukcja reguł Rozumowanie oparte na analogiach, precedensach (case-based) i oparte na pamięci (memory-based) Logika rozmyta Sieci neuronowe Pojawiają się: przestrzenie wersji (version spaces) algorytmy genetyczne sieci probabilistyczne (Baysowskie) zbiory i logika przybliżona induktywne programowanie logiczne (ILP) uczenie ze wzmocnieniem (reinforcement)

11 11 Drzewa decyzji function DT(E: zbiór przykładów) returns drzewo; T' := buduj_drzewo(E); T := obetnij_drzewo(T'); return T; function buduj_drzewo(E: zbiór przyk.) returns drzewo; T := generuj_tests(E); t := najlepszy_test(T, E); P := podział E indukowany przez t; if kryterium_stopu(E, P) then return liść(info(E)) else for all E j in P: t j := buduj_drzewo(E j ); return węzeł(t, {(j,t j )}; function DT(E: zbiór przykładów) returns drzewo; T' := buduj_drzewo(E); T := obetnij_drzewo(T'); return T; function buduj_drzewo(E: zbiór przyk.) returns drzewo; T := generuj_tests(E); t := najlepszy_test(T, E); P := podział E indukowany przez t; if kryterium_stopu(E, P) then return liść(info(E)) else for all E j in P: t j := buduj_drzewo(E j ); return węzeł(t, {(j,t j )};

12 12 DT do klasyfikacji Testy: podział pojedynczej cechy, lub kombinacji Attrybut={wartość i } lub Attrybut < wartość i Kryteria: maksymalizacja ilości informacji, maksymalizacja liczby poprawnie podzielonych obiektów, czystość węzła Przycinanie: usuń gałęzie, które zawierają zbyt mało przypadków prostsze drzewo może lepiej generalizować oceń optymalną złożoność na zbiorze walidacyjnym. Kryterium stopu: osiągnięta dokładność podziałów, zbyt wiele gałęzi. Popularne systemy: C4.5, CART - szybkie. Testy: podział pojedynczej cechy, lub kombinacji Attrybut={wartość i } lub Attrybut < wartość i Kryteria: maksymalizacja ilości informacji, maksymalizacja liczby poprawnie podzielonych obiektów, czystość węzła Przycinanie: usuń gałęzie, które zawierają zbyt mało przypadków prostsze drzewo może lepiej generalizować oceń optymalną złożoność na zbiorze walidacyjnym. Kryterium stopu: osiągnięta dokładność podziałów, zbyt wiele gałęzi. Popularne systemy: C4.5, CART - szybkie.

13 13 DT - przykład Klasy: {rakowe, zdrowe} Cechy: ciało komórki: {cienie, paski} jądra: {1, 2}; ogonki: {1, 2} Klasy: {rakowe, zdrowe} Cechy: ciało komórki: {cienie, paski} jądra: {1, 2}; ogonki: {1, 2} rak zdrowy

14 14 Indukcja reguł DT: tworzą reguły hierarchiczne Utwórz reguły próbując pokryć obszar przestrzeni, w którym znajdują się wektory określonej klasy. DT: tworzą reguły hierarchiczne Utwórz reguły próbując pokryć obszar przestrzeni, w którym znajdują się wektory określonej klasy. Abstrahowanie od szczegółów => rakowe Zalety: łatwo zrozumiałe, dobra reprezentacja hipotez. Wady: powolne działanie, algorytmy pokrycia NP-trudne Przykłady: CN2, AQ-nn, GREEDY... Zalety: łatwo zrozumiałe, dobra reprezentacja hipotez. Wady: powolne działanie, algorytmy pokrycia NP-trudne Przykłady: CN2, AQ-nn, GREEDY...

15 15 Przestrzenie wersji Indukcja reguł/koncepcji na podstawie analizy danych MiejscePosiłekDzieńKoszt Reakcja DS. 1śniadaniePiątektanioTak KosmoslunchPiątekdrogo Nie DS. 1lunchSobota tanio Tak Bar mlecznyśniadanie Niedzielatanio Nie DS. 1śniadanie Niedziela drogo Nie MiejscePosiłekDzieńKoszt Reakcja DS. 1śniadaniePiątektanioTak KosmoslunchPiątekdrogo Nie DS. 1lunchSobota tanio Tak Bar mlecznyśniadanie Niedzielatanio Nie DS. 1śniadanie Niedziela drogo Nie W jakich warunkach mamy reakcje alergiczne? MiejscePosiłekDzieńKoszt 3 X 3 X 7 X 2 = 126

16 16 VS - hipotezy Mamy funkcję logiczną: Reakcja(Miejsce, Posiłek, Dzień, Koszt) Znamy jej wartości dla kilku przykładów. Zadanie: zrekonstruować najprostszą funkcję. VS: koncepcje mapujemy na hipotezy o różnym stopniu ogólności. Mamy funkcję logiczną: Reakcja(Miejsce, Posiłek, Dzień, Koszt) Znamy jej wartości dla kilku przykładów. Zadanie: zrekonstruować najprostszą funkcję. VS: koncepcje mapujemy na hipotezy o różnym stopniu ogólności. Hipotezy Zdarzenia x2 x1 Ogólne Specyf. h2 h3 h1

17 17 VS - hipotezy x 1 = x 2 = x 1 = x 2 = h 3 = b. ogólna h 1 = h 2 = h 3 = b. ogólna h 1 = h 2 = Hipoteza Koncepcje: od najbardziej szczegółowych do całkowicie ogólnych. Kolor {Kolor czysty, kolor mieszany} { {cz, z, n}, {p, b,...} } Koncepcje: od najbardziej szczegółowych do całkowicie ogólnych. Kolor {Kolor czysty, kolor mieszany} { {cz, z, n}, {p, b,...} } Indukcyjne uczenie koncepcji: Jeśli koncepcja dobrze przybliża poszukiwaną funkcję na dużej liczbie przykładów to będzie dobrym przybliżeniem również dla nowych przykładów.

18 18 VS - algorytm naiwny Inicjalizacja: h := Inicjalizacja: h := For każdego pozytywnego przykładu x w D Do: If h nie pokrywa x: Zamień h na minimalne uogólnienie h które pokrywa x Return h Inicjalizacja: h := Inicjalizacja: h := For każdego pozytywnego przykładu x w D Do: If h nie pokrywa x: Zamień h na minimalne uogólnienie h które pokrywa x Return h Zalety: nie musi pamiętać poprzednich przykładów, prosty. Wady: może być kilka minimalnych generalizacji => wiele kombinacji; nie wykrywa sprzeczności w danych, nie wykrywa ograniczeń języka hipotez H nie pozwalających nauczyć się danej koncepcji. Zalety: nie musi pamiętać poprzednich przykładów, prosty. Wady: może być kilka minimalnych generalizacji => wiele kombinacji; nie wykrywa sprzeczności w danych, nie wykrywa ograniczeń języka hipotez H nie pozwalających nauczyć się danej koncepcji.

19 19 Ocena podobieństwa Pamiętaj przykłady i oceniaj podobieństwo; stosuj algorytmy leniwe, czyli oceniające sytuację dopiero wtedy, gdy zajdzie potrzeba. Zalety: trudno zrozumiałe jeśli zbyt dużo danych, brak fazy uczenia. Wady: mogą wymagać dużo pamięci, konieczna selekcja atrybutów, konieczne dobranie odpowiednich funkcji podobieństwa. Przykłady: kNN, IBn, MBR... Możliwości wyboru: cech, prototypów, liczby uwzględnianych prototypów, oceny wkładu prototypów... Pamiętaj przykłady i oceniaj podobieństwo; stosuj algorytmy leniwe, czyli oceniające sytuację dopiero wtedy, gdy zajdzie potrzeba. Zalety: trudno zrozumiałe jeśli zbyt dużo danych, brak fazy uczenia. Wady: mogą wymagać dużo pamięci, konieczna selekcja atrybutów, konieczne dobranie odpowiednich funkcji podobieństwa. Przykłady: kNN, IBn, MBR... Możliwości wyboru: cech, prototypów, liczby uwzględnianych prototypów, oceny wkładu prototypów...

20 20 Algorytmy genetyczne Ewolucja: symuluj przetrwanie najlepiej przystosowanych. Używa: Populacji adaptacyjnych systemów z różnymi parametrami. Reprezentacji systemu w postaci ciągu parametrów - chromosomu. Operatorów genetycznych: mutacji, krzyżowania. Funkcji przystosowania (kosztu). Zalety: atrakcyjne, szuka globalnego minimum, łatwe do zaprogramowania i uniwersalne, zrównoleglenie. Wady: powolne, wymaga wiele iteracji, ma wiele parametrów określających działanie operatorów. Czy ewolucja dobrze optymalizuje? Ewolucja: symuluj przetrwanie najlepiej przystosowanych. Używa: Populacji adaptacyjnych systemów z różnymi parametrami. Reprezentacji systemu w postaci ciągu parametrów - chromosomu. Operatorów genetycznych: mutacji, krzyżowania. Funkcji przystosowania (kosztu). Zalety: atrakcyjne, szuka globalnego minimum, łatwe do zaprogramowania i uniwersalne, zrównoleglenie. Wady: powolne, wymaga wiele iteracji, ma wiele parametrów określających działanie operatorów. Czy ewolucja dobrze optymalizuje?

21 21 Sieci neuronowe Inspiracja neurobiologiczna: jak robią to mózgi? Używa: Neuronów - prostych elementów przetwarzających sygnały. Synaps - parametrów adaptacyjnych związanych z połączeniami określającymi siłę pobudzeń. Wyrafinowanych algorytmów korekcji parametrów (uczenia). Funkcji kosztu/oceny jakości działania. Wiele modeli: perceptrony wielowarstwowe (MLP), sieci RBF, samoorganizujące się sieci SOM... Zalety: uniwersalne, dużo symulatorów, odporne na szum w danych, wiele zastosowań. Wady: powolne, wymaga wiele iteracji, niektóre modele wolno się uczą, lokalne optima, wiele parametrów, trudna interpretacja. Inspiracja neurobiologiczna: jak robią to mózgi? Używa: Neuronów - prostych elementów przetwarzających sygnały. Synaps - parametrów adaptacyjnych związanych z połączeniami określającymi siłę pobudzeń. Wyrafinowanych algorytmów korekcji parametrów (uczenia). Funkcji kosztu/oceny jakości działania. Wiele modeli: perceptrony wielowarstwowe (MLP), sieci RBF, samoorganizujące się sieci SOM... Zalety: uniwersalne, dużo symulatorów, odporne na szum w danych, wiele zastosowań. Wady: powolne, wymaga wiele iteracji, niektóre modele wolno się uczą, lokalne optima, wiele parametrów, trudna interpretacja.

22 22 Sieci neuronowe - przykład Wejścia: dane ciągłe lub dyskretne. Neuron sumuje wartości sygnałów wejściowych określając pobudzenie. Wejścia: dane ciągłe lub dyskretne. Neuron sumuje wartości sygnałów wejściowych określając pobudzenie. 0 = zdrowy 1 = rak f(. ) - funkcja schodkowa lub sigmoidalna - prób działania neuronu. W sieciach neuronowych wiele takich neuronów połączonych jest ze sobą realizując dowolnie skomplikowane funkcje.połączonych jest ze sobą f(. ) - funkcja schodkowa lub sigmoidalna - prób działania neuronu. W sieciach neuronowych wiele takich neuronów połączonych jest ze sobą realizując dowolnie skomplikowane funkcje.połączonych jest ze sobą

23 23 Data Mining DM część KDD - Knowledge Discovery in Databases. Szukanie wiedzy w bazach danych, oparte na różnych metodach ML/CI. DM część KDD - Knowledge Discovery in Databases. Szukanie wiedzy w bazach danych, oparte na różnych metodach ML/CI. Dane - duże bazy danych, komercyjne, techniczne, tekstowe (WWW). Selekcja - wybieranie podzbioru danych i atrybutów do analizy. Pre-processing - wstępne przetwarzanie, czyszczenie danych (szum i wyrzutki), uzupełnianie braków, standaryzacja... Transformacja - do postaci akceptowalnej przez program. DM - klasyfikacja, regresja, klasteryzacja, wizualizacja... Dane - duże bazy danych, komercyjne, techniczne, tekstowe (WWW). Selekcja - wybieranie podzbioru danych i atrybutów do analizy. Pre-processing - wstępne przetwarzanie, czyszczenie danych (szum i wyrzutki), uzupełnianie braków, standaryzacja... Transformacja - do postaci akceptowalnej przez program. DM - klasyfikacja, regresja, klasteryzacja, wizualizacja...

24 24 Grzyby Baza danych dla grzybów: Dane z podręcznika opisującego różne gatunki grzybów. 22 cechy i 3 klasy: jadalne, trujące, nie polecane (51.8%) jadalnych, 3916 (48.2%) niejadalnych. Cechy (nazwy oryginalne): 118 binarnych wartości. cap shape (6, e.g.. bell, conical,flat...), cap surface (4), cap color (10), bruises (2), odor (9), gill attachment (4), gill spacing (3), gill size (2), gill color (12), stalk shape (2), stalk root (7, many missing values), surface above the ring (4), surface below the ring (4), color above the ring (9), color below the ring (9), veil type (2), veil color (4), ring number (3), spore print color (9), population (6), habitat (7). Zadanie: zidentyfikować grzyby jadalne, znaleźć ważne cechy. W książce wyraźnie napisano, że nie ma prostej reguły... Baza danych dla grzybów: Dane z podręcznika opisującego różne gatunki grzybów. 22 cechy i 3 klasy: jadalne, trujące, nie polecane (51.8%) jadalnych, 3916 (48.2%) niejadalnych. Cechy (nazwy oryginalne): 118 binarnych wartości. cap shape (6, e.g.. bell, conical,flat...), cap surface (4), cap color (10), bruises (2), odor (9), gill attachment (4), gill spacing (3), gill size (2), gill color (12), stalk shape (2), stalk root (7, many missing values), surface above the ring (4), surface below the ring (4), color above the ring (9), color below the ring (9), veil type (2), veil color (4), ring number (3), spore print color (9), population (6), habitat (7). Zadanie: zidentyfikować grzyby jadalne, znaleźć ważne cechy. W książce wyraźnie napisano, że nie ma prostej reguły...

25 25 Grzyby - dane Przykładowe dane: M-1: edible,convex,fibrous,yellow,bruises,anise,free,crowded, narrow, brown, tapering,bulbous,smooth,smooth,white,white, partial,white, one, pendant,purple,several, woods M-2: edible,flat,smooth,white,bruises,almond,free,crowded, narrow,pink,tapering,bulbous,smooth,smooth,white,white, partial,white,one,pendant,purple,several,woods... M-8124: poisonous,convex,smooth,white,bruises,pungent,free,close, narrow, white, enlarging, equal, smooth, smooth, white, white, partial, white, one,pendant, black, scattered, urban Przykładowe dane: M-1: edible,convex,fibrous,yellow,bruises,anise,free,crowded, narrow, brown, tapering,bulbous,smooth,smooth,white,white, partial,white, one, pendant,purple,several, woods M-2: edible,flat,smooth,white,bruises,almond,free,crowded, narrow,pink,tapering,bulbous,smooth,smooth,white,white, partial,white,one,pendant,purple,several,woods... M-8124: poisonous,convex,smooth,white,bruises,pungent,free,close, narrow, white, enlarging, equal, smooth, smooth, white, white, partial, white, one,pendant, black, scattered, urban

26 26 Grzyby - reguły Grzyb jest jadalny jeśli: odor=(almond anise none) spore_print_color = not.green 48 błędów, 99.41% prawidłowych Grzyb nie jest jadalny jeśli - 6 cech: R 1 ) odor = not(almond anise none) 120 bł., 98.52% R 2 ) spore_print_color = green 48 bł., 99.41% R 3 ) odor = none stalk_surface_below_ring = scaly stalk_color_above_ring = not.brown 8 bł., 99.90% R 4 ) IF habitat=leaves cap_color=white nie ma błędów! Dlaczego węch jest tak ważny dla zwierząt? Grzyb jest jadalny jeśli: odor=(almond anise none) spore_print_color = not.green 48 błędów, 99.41% prawidłowych Grzyb nie jest jadalny jeśli - 6 cech: R 1 ) odor = not(almond anise none) 120 bł., 98.52% R 2 ) spore_print_color = green 48 bł., 99.41% R 3 ) odor = none stalk_surface_below_ring = scaly stalk_color_above_ring = not.brown 8 bł., 99.90% R 4 ) IF habitat=leaves cap_color=white nie ma błędów! Dlaczego węch jest tak ważny dla zwierząt?

27 27 Zastosowania ML Zintegrowane pakiety programów z elementami ML. Dużo zastosowań w przemyśle maszynowym, naftowym (BP), chemicznym, finansach (American Express), komputerowym (Siemens), określanie jakości oprogramowania (NEC), eksploracja baz danych (data mining), e-commerce i Web-mining. Oszczędności rzędu M$/rok! Zastosowania w nauce: katalogowanie obiektów, np. astronomicznych czy chemicznych, odkrywanie nowych praw, analiza obrazów. Inne zastosowania: automatyczny kierowca/pilot/czołg... komputerowy czeladnik - obserwacja zachowania eksperta, interakcja.

28 28 Co (nie) będzie Filozofia AI Czy można zrobić sztuczny umysł? Świadomość? Uczucia? Czy są dobre argumenty przeciwko, czy chowamy głowę w piasek? Czy zagraża nam sztuczna inteligencja? Wojny robotów? Zagłada? Filozofia AI Czy można zrobić sztuczny umysł? Świadomość? Uczucia? Czy są dobre argumenty przeciwko, czy chowamy głowę w piasek? Czy zagraża nam sztuczna inteligencja? Wojny robotów? Zagłada? Dyskusja na Festiwalu Nauki i Sztuki. 16 luty 2001, godzina 18:00, Dwór Artusa. Dyskusja na Festiwalu Nauki i Sztuki. 16 luty 2001, godzina 18:00, Dwór Artusa.

29 Koniec wykładu Dobranoc... Do zobaczenia na e... Dobranoc... Do zobaczenia na e...


Pobierz ppt "Sztuczna Inteligencja Uczenie maszynowe Włodzisław Duch Katedra Informatyki Stosowanej UMK www.phys.uni.torun.pl/~duch Włodzisław Duch Katedra Informatyki."

Podobne prezentacje


Reklamy Google