Wprowadzenie do sztucznej inteligencji - Instytut Informatykitomczak/PDF/si1.pdf · 3.Uczenie bez...
Transcript of Wprowadzenie do sztucznej inteligencji - Instytut Informatykitomczak/PDF/si1.pdf · 3.Uczenie bez...
Wrocław University of Technology
Wprowadzenie do sztucznej inteligencji
Jakub Tomczak
8.10.2013
Początki uczenia maszynowego Cybernetyka (XIX-XX w.) – systemy
sterowania i automatycznego przetwarzaniainformacji w m.in. mechanice, biologii.
Sztuczna inteligencja (lata 50. XX w.) –dziedzina nauki, której celem jestzaprojektowanie inteligentnych maszyn.
Systemy ekspertowe (lata 70. XX w.) –systemy komputerowe wykorzystującelogikę matematyczną do imitacjiwnioskowania człowieka.
Nauki kognitywne (lata 70. XX w.) –poznanie i modelowanie zjawiskdotyczących działania umysłu.
Uczenie maszynowe (lata 90. XX w.) –zastosowanie modeli statystycznych imetod optymalizacji do projektowaniaalgorytmów uczenia maszyn.
2/34
Początki uczenia maszynowego Cybernetyka (XIX-XX w.) – systemy
sterowania i automatycznego przetwarzaniainformacji w m.in. mechanice, biologii.
Sztuczna inteligencja (lata 50. XX w.) –dziedzina nauki, której celem jestzaprojektowanie inteligentnych maszyn.
Systemy ekspertowe (lata 70. XX w.) –systemy komputerowe wykorzystującelogikę matematyczną do imitacjiwnioskowania człowieka.
Nauki kognitywne (lata 70. XX w.) –poznanie i modelowanie zjawiskdotyczących działania umysłu.
Uczenie maszynowe (lata 90. XX w.) –zastosowanie modeli statystycznych imetod optymalizacji do projektowaniaalgorytmów uczenia maszyn.
2/34
Początki uczenia maszynowego Cybernetyka (XIX-XX w.) – systemy
sterowania i automatycznego przetwarzaniainformacji w m.in. mechanice, biologii.
Sztuczna inteligencja (lata 50. XX w.) –dziedzina nauki, której celem jestzaprojektowanie inteligentnych maszyn.
Systemy ekspertowe (lata 70. XX w.) –systemy komputerowe wykorzystującelogikę matematyczną do imitacjiwnioskowania człowieka.
Nauki kognitywne (lata 70. XX w.) –poznanie i modelowanie zjawiskdotyczących działania umysłu.
Uczenie maszynowe (lata 90. XX w.) –zastosowanie modeli statystycznych imetod optymalizacji do projektowaniaalgorytmów uczenia maszyn.
2/34
Początki uczenia maszynowego Cybernetyka (XIX-XX w.) – systemy
sterowania i automatycznego przetwarzaniainformacji w m.in. mechanice, biologii.
Sztuczna inteligencja (lata 50. XX w.) –dziedzina nauki, której celem jestzaprojektowanie inteligentnych maszyn.
Systemy ekspertowe (lata 70. XX w.) –systemy komputerowe wykorzystującelogikę matematyczną do imitacjiwnioskowania człowieka.
Nauki kognitywne (lata 70. XX w.) –poznanie i modelowanie zjawiskdotyczących działania umysłu.
Uczenie maszynowe (lata 90. XX w.) –zastosowanie modeli statystycznych imetod optymalizacji do projektowaniaalgorytmów uczenia maszyn.
2/34
Początki uczenia maszynowego Cybernetyka (XIX-XX w.) – systemy
sterowania i automatycznego przetwarzaniainformacji w m.in. mechanice, biologii.
Sztuczna inteligencja (lata 50. XX w.) –dziedzina nauki, której celem jestzaprojektowanie inteligentnych maszyn.
Systemy ekspertowe (lata 70. XX w.) –systemy komputerowe wykorzystującelogikę matematyczną do imitacjiwnioskowania człowieka.
Nauki kognitywne (lata 70. XX w.) –poznanie i modelowanie zjawiskdotyczących działania umysłu.
Uczenie maszynowe (lata 90. XX w.) –zastosowanie modeli statystycznych imetod optymalizacji do projektowaniaalgorytmów uczenia maszyn.
2/34
Definicja sztucznej inteligencji (uczenia maszynowego)
Mówimy, że maszyna uczy się zadania T w oparciu o doświadczenieE i miarę jakości P , jeśli wraz z przyrostem doświadczenia Epoprawia się jakość wykonywanego zadania T mierzona przez miaręP .
(Tom M. Mitchell, Machine Learning, McGraw Hill, 1997)
Przykład: Nauka gry w szachy
T : Gra w szachy P : Liczba wygranych partii w turnieju z człowiekiem E: Rozgrywanie partii przeciw sobie
3/34
Definicja inżynierii wiedzy
Inżynieria wiedzy jest dyscypliną techniczną, która dotyczyprzetwarzania wiedzy w systemach informatycznych w celurozwiązywania problemów zazwyczaj wymagających wiedzyeksperckiej (człowieka-specjalisty).
(Edward A. Feigenbaum, Pamela McCorduck, The fifth generation,Addison-Wesley, 1983)
Główne kierunki badań:
sposób reprezentowania wiedzy procesy pozyskiwania wiedzy (uczenia się) opracowanie systemów informatycznych wykorzystujących wiedzę
(sztuczna inteligencja)
4/34
Podstawowe problemy1. Czyszczenie danych (ang. data cleaning)
Dyskretyzacja (ang. discretization)
Brakujące dane (ang. missing values)
Selekcja atrybutów (ang. attribute selection)
2. Uczenie z nadzorem (ang. supervised learning)
Regresja (ang. regression)
Klasyfikacja (ang. classification)
3. Uczenie bez nadzoru (ang. unsupervised learning)
Klasteryzacja (ang. clustering)
Redukcja wymiarów (ang. dimensionality reduction)
4. Uczenie ze wzmocnieniem (ang. reinforcement learning)
7/34
Podstawowe problemyCzyszczenie danych
Czyszczenie danych (ang. data cleaning):
Dyskretyzacja: przekształcenie ciągłejzmiennej losowej w dyskretną zmiennąlosową, m.in. w celu łatwiejszejreprezentacji wiedzy.
Brakujące dane: uzupełnieniebrakujących wartości atrybutów, którenie zostały utracone w procesie zbieraniadanych.
Selekcja atrybutów: wybranie podzbioruatrybutów takich, które są najbardziejinformacyjne.
8/34
Podstawowe problemyCzyszczenie danych
Czyszczenie danych (ang. data cleaning):
Dyskretyzacja: przekształcenie ciągłejzmiennej losowej w dyskretną zmiennąlosową, m.in. w celu łatwiejszejreprezentacji wiedzy.
Brakujące dane: uzupełnieniebrakujących wartości atrybutów, którenie zostały utracone w procesie zbieraniadanych.
Selekcja atrybutów: wybranie podzbioruatrybutów takich, które są najbardziejinformacyjne.
8/34
Podstawowe problemyCzyszczenie danych
Czyszczenie danych (ang. data cleaning):
Dyskretyzacja: przekształcenie ciągłejzmiennej losowej w dyskretną zmiennąlosową, m.in. w celu łatwiejszejreprezentacji wiedzy.
Brakujące dane: uzupełnieniebrakujących wartości atrybutów, którenie zostały utracone w procesie zbieraniadanych.
Selekcja atrybutów: wybranie podzbioruatrybutów takich, które są najbardziejinformacyjne.
8/34
Podstawowe problemyUczenie z nadzorem: Regresja
Regresja (ang. Regression):
Dysponujemy obserwacjami zodpowiadającymi im wartościamiciągłymi.
Celem uczenia jest skonstruowaniemodelu regresji na podstawie danych.
Model konstruowany jest tak, abymożliwe było przewidywanie nowychobserwacji.
9/34
Podstawowe problemyUczenie z nadzorem: Regresja
Regresja (ang. Regression):
Dysponujemy obserwacjami zodpowiadającymi im wartościamiciągłymi.
Celem uczenia jest skonstruowaniemodelu regresji na podstawie danych.
Model konstruowany jest tak, abymożliwe było przewidywanie nowychobserwacji.
9/34
Podstawowe problemyUczenie z nadzorem: Regresja
Regresja (ang. Regression):
Dysponujemy obserwacjami zodpowiadającymi im wartościamiciągłymi.
Celem uczenia jest skonstruowaniemodelu regresji na podstawie danych.
Model konstruowany jest tak, abymożliwe było przewidywanie nowychobserwacji.
9/34
Podstawowe problemyUczenie z nadzorem: Regresja
Regresja (ang. Regression):
Dysponujemy obserwacjami zodpowiadającymi im wartościamiciągłymi.
Celem uczenia jest skonstruowaniemodelu regresji na podstawie danych.
Model konstruowany jest tak, abymożliwe było przewidywanie nowychobserwacji.
9/34
Podstawowe problemyRegresja: Śledzenie ruchu
Cel: Wyznaczenie następnego położeniaobiektu.
Dane: Sekwencja obrazów z poruszającymi sięobiektami.
Na podstawie dotychczaszarejestrowanej sekwencji obrazówwyznaczane jest położenie obiektu.
10/34
Podstawowe problemyRegresja: Predykcja notowań giełdowych
Cel: Wycena akcji.
Dane: Notowania akcji z poprzednich okresóworaz inne czynniki wpływające na cenęakcji.
Na podstawie notowań historycznych iinnych czynników mających wpływ nacenę akcji budowany jest modelpredykcyjny.
Model aktualizowany jest zwykorzystaniem bieżących notowań.
11/34
Podstawowe problemyUczenie z nadzorem: Klasyfikacja
Klasyfikacja (ang. Classification):
Dysponujemy obserwacjami z etykietami(klasami), które przyjmują wartościnominalne.
Celem uczenia jest skonstruowanieklasyfikatora separującego obiektynależące do różnych klas.
Klasyfikator konstruowany jest tak, abymożliwe było przewidywanie klas nowych,niesklasyfikowanych obserwacji.
12/34
Podstawowe problemyUczenie z nadzorem: Klasyfikacja
Klasyfikacja (ang. Classification):
Dysponujemy obserwacjami z etykietami(klasami), które przyjmują wartościnominalne.
Celem uczenia jest skonstruowanieklasyfikatora separującego obiektynależące do różnych klas.
Klasyfikator konstruowany jest tak, abymożliwe było przewidywanie klas nowych,niesklasyfikowanych obserwacji.
12/34
Podstawowe problemyUczenie z nadzorem: Klasyfikacja
Klasyfikacja (ang. Classification):
Dysponujemy obserwacjami z etykietami(klasami), które przyjmują wartościnominalne.
Celem uczenia jest skonstruowanieklasyfikatora separującego obiektynależące do różnych klas.
Klasyfikator konstruowany jest tak, abymożliwe było przewidywanie klas nowych,niesklasyfikowanych obserwacji.
12/34
Podstawowe problemyUczenie z nadzorem: Klasyfikacja
Klasyfikacja (ang. Classification):
Dysponujemy obserwacjami z etykietami(klasami), które przyjmują wartościnominalne.
Celem uczenia jest skonstruowanieklasyfikatora separującego obiektynależące do różnych klas.
Klasyfikator konstruowany jest tak, abymożliwe było przewidywanie klas nowych,niesklasyfikowanych obserwacji.
12/34
Podstawowe problemyKlasyfikacja: Detekcja obiektów
Cel: Wykrycie obiektu na obrazie.
Dane: Obraz na którym bada się wystąpienieobiektu, oraz zestaw obrazówtreningowych przedstawiających danyobiekt.
Do analizy obrazu wykorzystuje sięokno przesuwne.
W każdym kroku obraz z oknaprzesuwnego klasyfikowany jest jakoobiekt poszukiwany lub nie.
13/34
Podstawowe problemyKlasyfikacja: Detekcja SPAMU
Cel: Zbadać, czy dana wiadomość jestSPAMEM.
Dane: Zestaw zawierający zaetykietowanewiadomości mailowe.
Wydobywane są cechy (występowaniesłów) różnicujące SPAM od zwykłejpoczty.
Klasyfikacja nowej wiadomości odbywasię z wykorzystaniem wydobytych cech.
14/34
Podstawowe problemyKlasyfikacja: Credit Scoring
Cel: Zbadać zdolność kredytową klientabankowego.
Dane: Charakterystyki klientów bankowychpochodzące z systemówinformatycznych i kwestionariuszy.
Wydobywane są cechy mające wpływna decyzje kredytowe.
Klasyfikatory do oceny zdolnościkredytowej są powszechnie stosowanymnarzędziem.
15/34
Podstawowe problemyKlasyfikacja: Rozpoznawanie mowy
Cel: Interpretacja wybranych słów napodstawie wypowiedzi.
Dane: Próbki dźwięków wraz ich znaczeniem.
Wydobywane są cechy dźwiękucharakterystyczne dla danego słowa,głoski, bądź zestawu słów.
Klasyfikowany sygnał jestprzetwarzany, a następnierozpoznawane jest znaczenie słowa.
16/34
Podstawowe problemyUczenie bez nadzoru: Klasteryzacja
Klasteryzacja (ang. Clustering):
Dysponujemy obserwacjami bez etykiet.
Celem uczenia jest znalezienie grup(klastrów), w których skupione są dane.
Obserwacje z danej grupy charakteryzująsię podobieństwem.
Inne nazwy: grupowanie, analizaskupień.
17/34
Podstawowe problemyUczenie bez nadzoru: Klasteryzacja
Klasteryzacja (ang. Clustering):
Dysponujemy obserwacjami bez etykiet.
Celem uczenia jest znalezienie grup(klastrów), w których skupione są dane.
Obserwacje z danej grupy charakteryzująsię podobieństwem.
Inne nazwy: grupowanie, analizaskupień.
17/34
Podstawowe problemyKlateryzacja: Kompresja obrazu
Cel: Kodowanie pikseli wartościami zmniejszego zakresu.
Dane: Obraz.
Zakłada się, że każdy piksel możeprzyjąć K wartości.
Piksele grupowane są do K klastrówalgorytmem klasteryzacji.
Podobne piksele trafiają do tegosamego klastra.
Piksel kodowany jest poprzez numerklastra.
18/34
Podstawowe problemyKlateryzacja: Grupowanie osób w sieci społecznej
Cel: Wyodrębnienie grup znajomych w siecispołecznej.
Dane: Dane o interakcji między osobami.
Wyodrębnione grupy znajomych przypomocy TouchGraph dla Facebook’a.
Znajomi w tych samych klastrachcharakteryzują się wewnętrznąinterakcją między sobą.
19/34
Podstawowe problemyKlateryzacja: Grupowanie słów
Cel: Wyodrębnienie grup słów w tytułachartykułów.
Dane: Artykuły prasowe.
Grupowaniu podlegają słowa, którepojawiły się w tytule artykułu.
Słowa uważane są za podobne, jeślipojawiają się w kontekście tych samychsłów z artykułu.
Słowa z jednej grupy zazwyczaj opisująto samo zdarzenie.
20/34
Podstawowe problemyUczenie bez nadzoru: Redukcja wymiarów
Redukcja wymiarów(ang. Dimensionality Reduction):
Dysponujemy obserwacjami bez etykiet.
Celem uczenia jest znalezienieniskowymiarowej podprzestrzeni(rozmaitości), na której leżą dane.
Obserwacje mogą zostać zakodowaneprzy pomocy układu współrzędnychzwiązanego z niskowymiarowąpodprzestrzenią.
21/34
Podstawowe problemyUczenie bez nadzoru: Redukcja wymiarów
Redukcja wymiarów(ang. Dimensionality Reduction):
Dysponujemy obserwacjami bez etykiet.
Celem uczenia jest znalezienieniskowymiarowej podprzestrzeni(rozmaitości), na której leżą dane.
Obserwacje mogą zostać zakodowaneprzy pomocy układu współrzędnychzwiązanego z niskowymiarowąpodprzestrzenią.
21/34
Podstawowe problemyRedukcja wymiarów: Kodowanie i kompresja zdjęć
Cel: Znalezienie twarzy bazowych rozpinających niskowymiarowąprzestrzeń.
Dane: Zdjęcia twarzy.
Wyróżnione M twarzy bazowych rozpina M -wymiarowąpodprzestrzeń w przestrzeni twarzy.
Twarze mogą być kodowane poprzez położenie na niskowymiarowejprzestrzeni.
Metoda może służyć, jako automatyczna ekstrakcja cech ze zdjęć.
22/34
Podstawowe problemyRedukcja wymiarów: Wizualizacja danych
Cel: Wizualizacja 2D lub 3Dwysokowymiarowych danych.
Dane: Dowolne dane, np. zdjęcia.
Redukcja wymiarów pozwala nawizualizację strukturywysokowymiarowych danych.
Podobne obserwacje znajdują się bliskosiebie w niskowymiarowej przestrzeni.
Na rysunku przedstawiono obrazyręcznie pisanych cyfr oraz zdjęć twarzyz różnej perspektywy.
23/34
Podstawowe problemyUczenie ze wzmocnieniem
Uczenie ze wzocnieniem(ang. Reinforcement Learning):
Maszyna (agent) wchodzi w interakcje zotoczeniem (środowiskiem), w którymchce osiągnąć określony cel.
Maszyna podejmuje akcje aby osiągnąćcel, które są ocenianie przez otoczenie.
Akcje są nagradzane lub karane.
Maszyna poprzez podejmowanie akcjipoznaje otoczenie.
24/34
Podstawowe problemyUczenie ze wzmocnieniem
Uczenie ze wzocnieniem(ang. Reinforcement Learning):
Maszyna (agent) wchodzi w interakcje zotoczeniem (środowiskiem), w którymchce osiągnąć określony cel.
Maszyna podejmuje akcje aby osiągnąćcel, które są ocenianie przez otoczenie.
Akcje są nagradzane lub karane.
Maszyna poprzez podejmowanie akcjipoznaje otoczenie.
24/34
Podstawowe problemyUczenie ze wzmocnieniem
Uczenie ze wzocnieniem(ang. Reinforcement Learning):
Maszyna (agent) wchodzi w interakcje zotoczeniem (środowiskiem), w którymchce osiągnąć określony cel.
Maszyna podejmuje akcje aby osiągnąćcel, które są ocenianie przez otoczenie.
Akcje są nagradzane lub karane.
Maszyna poprzez podejmowanie akcjipoznaje otoczenie.
24/34
Podstawowe problemyUczenie ze wzmocnieniem
Uczenie ze wzocnieniem(ang. Reinforcement Learning):
Maszyna (agent) wchodzi w interakcje zotoczeniem (środowiskiem), w którymchce osiągnąć określony cel.
Maszyna podejmuje akcje aby osiągnąćcel, które są ocenianie przez otoczenie.
Akcje są nagradzane lub karane.
Maszyna poprzez podejmowanie akcjipoznaje otoczenie.
24/34
Podstawowe problemyUczenie ze wzmocnieniem
Uczenie ze wzocnieniem(ang. Reinforcement Learning):
Maszyna (agent) wchodzi w interakcje zotoczeniem (środowiskiem), w którymchce osiągnąć określony cel.
Maszyna podejmuje akcje aby osiągnąćcel, które są ocenianie przez otoczenie.
Akcje są nagradzane lub karane.
Maszyna poprzez podejmowanie akcjipoznaje otoczenie.
24/34
Podstawowe problemyUczenie ze wzmocnieniem: Gra w szachy
Cel: Wyuczyć algorytm gry w szachy.
Dane: Rozgrywki szachowe.
Zakładano, że komputer zawsze grabiałymi.
Znany był ostatni stan szachownicy iocena (1 dla wygranej białych, 0 dlaremisu, −1 dla wygranej czarnych),natomiast maszyna miała się nauczyćjakie akcje podejmować, aby osiągnąćwygraną.
Stan szachownicy reprezentowano zapomocą sieci neuronalnej.
25/34
Podstawowe problemyUczenie ze wzmocnieniem: Sterowanie helikopterem
Cel: Wyuczyć algorytm sterowaniahelikopterem.
Dane: Sterowanie helikopterem przez pilota(operatora).
Dane posłużyły do określenia dynamikihelikoptera oraz określenia funkcjinagrody.
Następnie zastosowano algorytmuczenia ze wzmocnieniem do naukisterowania helikopterem.
Projekt wykonano na StanfordUniversity(http://heli.stanford.edu/).
26/34
Projekty naszej grupy
Anna Gut
Mateusz Kucharczyk
Przemysław Kłysz
Szymon Zaręba
Celem projektu jest ocenaatrakcyjności człowieka napodstawie zdjęcia.
Stosowane techniki uczeniamaszynowego:
1. Probabilistyczne ModeleGrafowe
2. Procesy Gaussa3. Principal Component Analysis4. Support Vector Machine
27/34
Projekty naszej grupy
Piotr Klukowski
Michał Walczak (ETH Zurich)
Adam Gonczarek
Celem projektu jestautomatyczne oznaczenie pikówna obrazach z MagnetycznegoRezonansu Jądrowego (NMR).
Stosowane techniki uczeniamaszynowego:
1. Support Vector Machine2. Reguły logiczne
28/34
Projekty naszej grupy
Adam Gonczarek
Celem projektu jest odtworzeniekonfiguracji człowieka napodstawie obrazu z kamer.
Stosowane techniki uczeniamaszynowego:
1. Filtry cząsteczkowe2. Metody próbkowania3. Nieliniowa redukcja wymiarów
(GPLVM)4. Procesy Gaussa5. Regresja liniowa
29/34
Projekty naszej grupy
Jakub Tomczak
Celem projektu jestwspomaganie terapii cukrzycyna podstawie pomiarów.
Stosowane techniki uczeniamaszynowego:
1. Indukcja reguł decyzyjnych2. Uczenie przyrostowe3. Mechanizm zapominania
wykładniczego4. Procesy Gaussa5. Ukryte łańcuchy Markowa
30/34
Projekty naszej grupy
Jakub Tomczak
Celem projektu jest modelowanieprocesów wnioskowania wludzkim mózgu.
Stosowane techniki uczeniamaszynowego:
1. Modelowanie Bayesowskie2. Regularyzacja i wiedza a priori3. Modele Isinga4. Maszyny Boltzmanna
31/34
Projekty naszej grupy
Maciej Zięba
Celem projektu jest opracowaniemodeli predykcji okresuprzeżycia pacjenta po operacjiraka płuc.
Stosowane techniki uczeniamaszynowego:
1. Klasyfikatory SVM dlaproblemów niezbalansowania
2. Klasyfikatory typu Ensemble3. Metody próbkowania typu
SMOTE4. Metody uczenia wrażliwe na
koszt32/34
Projekty naszej grupy
Adam Gonczarek
Jakub Tomczak
Szymon Zaręba
Celem projektu jestrozpoznawanie obrazów zużyciem uczenia głębokiego iarchitektur głębokich.
Stosowane techniki uczeniamaszynowego:
1. Maszyny Boltzmanna2. Algorytm Contrastive
Divergence3. DropOut
33/34