Uczenie się maszyn: wykład 1
Wprowadzenie
Paweł Cichosz
Date: Semestr zimowy 1997/98
Zawartość merytoryczna wykładu 1 jest dość ograniczona -- służy on
przede wszystkiem wzajemnemu poznaniu się przez studentów i
prowadzącego oraz daniu pewnego przybliżonego wybrażenia o tym, co
czeka nas na kolejnych wykładach. W związku z tym niniejsze notatki
mają charakter szczątkowy.
Część wykładu 1 poświęcona jest sprawom organizacyjnym -- tutaj
wymienione są punkty programu.
- Dane wykładowcy.
- Lista studentów.
- Zasady zaliczania: 2 kolokwia (40%), projekt (40%), praca
domowa (15%), ogólny entuzjazm (5%).
- Literatura.
- Plan wykładów: dwie części.
- Projekt: dwa warianty.
- Strona WWW przedmiotu. Notatki do każdego wykładu.
Proces poprawy jakości działania systemu według pewnego
kryterium na podstawie doświadczeń z przeszłości. Doskonalenie
zdolności do rozwiązywania pewnej klasy zadań na podstawie informacji
uzyskanych na podstawie rozwiązania pewnej liczby zadań tej klasy.
Zdobywanie wiedzy lub umiejętności, reprezentowanie jej wewnątrz
systemu i stosowanie jej w wykonywaniu zadania.
Wiedza -- na ogół nie definiuje się lub definiuje się tylko w
kontekście wybranej, specyficznej metody lub grupy metod uczenia się.
Mówi się raczej o reprezentacji wiedzy.
Teoria i praktyka uczenia się maszyn -- głównie tzw. słaba AI.
- Uczenie się (coraz lepszej) gry w warcaby.
- Uczenie się rozpoznawania chorób na podstawie symptomów.
- Uczenie się klasyfikowania tekstów do grup tematycznych na
podstawie przykładów.
- Uczenie się aproksymowania nieznanej funkcji na podstawie
próbek.
- Uczenie się kierowania samochodem na podstawie obserwacji i
naśladowania instruktora.
- Uczenie się odnajdywania drogi w nieznanym środowisku.
- Uczenie się zależności funkcyjnych pomiędzy danymi
obserwacyjnymi.
Wykład nie poda metody rozwiązania żadnego z tych problemów uczenia
się, ale ukaże zestaw algorytmów, które odpowiednio rozszerzone i
połączone z innymi algorytmami mogą być w tego typu problemach pomocne.
- Dla naprawdę złożonych zadań trudno jest sformułować wprost
gotowe programy dla ich rozwiązywania.
- Często zbiory dostępnych danych są zbyt duże i skomplikowane,
aby można było wyszukiwać w nich zależności, klasyfikować obiekty
itd. w sposób niezautomatyzowany.
- Złożone środowiska są trudne do opisu, często nie posiadają
wystarczających modeli teoretycznych albo ich uzyskanie jest bardzo
kosztowne.
- ,,Ręcznie'' zakodowane programy dla takich środowisk, nawet
gdyby udało się je stworzyć, byłyby mało wiarygodne.
- Inteligentne systemy powinny być w maksymalnym stopniu
autonomiczne, czyli zdolne do działania bez (zbyt dużej) ingerencji
człowieka, co nie jest możliwe bez adaptacyjności, zdolności do
przystosowywania się do zmieniających się środowisk i wymagań.
- Wiedza deklaratywna a proceduralna (wiedza a umiejętność), ich
zależności.
- Sposób nabywania wiedzy: bezpośrednia implantacja, przez
obserwację i odkrywanie (bez nadzoru), na podstawie przykładów (z
nadzorem), uczenie się na podstawie zapytań, uczenie się ze
wzmocnieniem.
- Reprezentacja wiedzy: reguły, drzewa decyzyjne, klauzule logiki
predykatów, grupowania (taksonomie), rozkłady prawdopodobieństwa,
reprezentacje parametryczne, funkcje przejść automatów.
Główne działy uczenia się maszyn odzwierciedla plan wykładów. Brakuje
ILP i paru bardziej szczegółowych zagadnień (uczenie się przez
analogię, CBR, modele HMM). Pominięto sieci neuronowe, które są
samodzielną dziedziną.
Ponieważ przez mniej więcej połowę semestru zajmować się będziemy
teorią (krótko) oraz (znacznie dłużej) różnymi metodami indukcyjnego
uczenia się pojęć na podstawie przykładów, poniżej znajduje się wykaz
terminów i konwencji notacyjnych, jakie będą przy tym wykorzystywane.
Po drodze na pewno trochę do tej listy trzeba będzie dodać.
- Dziedzina
: zbiór z którego mogą pochodzić przykłady.
- Przykład
: pojedynczy element dziedziny.
- Atrybut: dowolna funkcja
. Przyjmuje się, że każdy
przykład
opisany jest przez
atrybutów
,
. Zbiór wartości atrybutów
stanowi pełny opis przykładu
.
- Typy atrybutów: nominalne (dyskretne bez relacji porządku),
porządkowe (dyskretne z relacją porządku), ciągłe.
- Pojęcie (docelowe): pewna funkcja
.
Równoważne alternatywne sformułowanie: podzbiór
.
Czasem w praktyce uwzględnia się pojęcie wielokrotne: funkcja
,
. Wartość
nazywa się etykietą, klasą
lub kategorią przykładu
.
- Przestrzeń (klasa) pojęć
: zbiór wszystkich pojęć
dla danej dziedziny
. Przyjmując definicję pojęcia jako
podzbioru mamy dla skończonej dziedziny
.
- Hipoteza: funkcja
, która jest konstruowanym
przez ucznia przybliżeniem pojęcia docelowego
. W przypadku
uczenia się pojęć wielokrotnych definicja odpowiednio się zmienia.
- Przestrzeń (klasa) hipotez
: zbiór wszystkich
hipotez, które uczeń może skonstruować (zbiór ten zależy od sposobu
reprezentacji hipotez przez ucznia i algorytmu uczenia się).
Najlepiej jeśli
: wtedy mamy gwarancję,
że
, czyli że uczeń może nauczyć się pojęcia
docelowego. Niestety, w praktyce często
.
- Przykład etykietowany pojęcia
: para
,
.
- Przykład negatywny pojęcia
:
,
.
- Przykład pozytywny pojęcia
:
,
.
- Klasa (kategoria) przykładów z dziedziny
:
.
- Zbiór trenujący dla uczenia się z nadzorem pojęcia
:
. Dla prostoty,
jeśli wiadomo o jakie pojęcie docelowe chodzi, czasem mówi się o
jako o zbiorze trenującym, rozumiejąc, że etykiety są także dane.
- Zbiór trenujący dla uczenia się bez nadzoru:
.
- Błąd próbki hipotezy
względem pojęcia
dla zbioru
przykładów
:
gdzie
ma wartość
gdy
i 0 gdy
.
- Reczywisty błąd hipotezy
względem pojęcia
dla rozkładu
prawdopodobieństwa
na
:
Metody statystyczne pozwalają oszacować błąd rzeczywisty na
podstawie błędu próbki.
- Problem indukcyjnego uczenia się z nadzorem: mając dany zbiór
trenujący
znaleźć hipotezę
, która jest
najlepszym przybliżeniem pojęcia docelowego
według pewnego
kryterium. Kryterium to na ogół uwzględnia błąd próbki, ale nie
ogranicza się do niego. W przypadku idealnym
.
- Problem indukcyjnego uczenia się bez nadzoru: mając dany zbiór
trenujący
znaleźć hipotezę
, która daje
najlepszą klasyfikację przykładów według pewnego kryterium.
- Indukcyjne obciążenie (inductive bias): preferencje
ucznia do wyboru określonych hipotez, zespół wszystkich czynników,
które w połączeniu ze zbiorem trenującym determinują (w sensie
konsekwencji logicznej) wybór konkretnej hipotezy.
- Założenie indukcji: hipoteza wybrana jako najlepsza dla
dostatecznie dużego zbioru trenującego jest dobra dla całej
dziedziny.
Problemy wiedzy i możliwości jej pozyskiwania zajmowały filozofów
prawie od początku dziejów filozofii Zachodu. Poniżej wymieniam
najbardziej znanych myślicieli, których myśl w jakiś sposób wydaje się
z tymi problemami wiązać. Podsumowanie dorobku tych wybitnych postaci
za pomocą jednego hasłowego zdania należy traktować ze sporym
przymrużeniem oka (to jak kurs historii filozofii w 10 minut).
- Sokrates:
- uczenie się utożsamione z przypominaniem sobie wiedzy
wrodzonej (anamneza). Pewne pokrewieństwo z uczeniem się na
podstawie wyjaśnień, które polega na przetwarzaniu wiedzy wrodzonej
do dogodnej postaci pod wpływem obserwowanych przykładów.
- Platon:
- realnie istniejące idee (pojęcia). Uczenie się nie
polega na tworzeniu pojęć, lecz odkrywaniu (a właściwie
przypominaniu sobie) istniejących odwiecznie pojęć.
- Arystoteles:
- istnieją tylko rzeczy jednostkowe, pojęcia ogólne
powstają na drodze abstrakcji. Nie są one jednak arbitralne i
pozbawione znaczenia, gdyż to co ogólne (wspólne) w rzeczach zawiera
ich forma. Rozróżnienie dedukcji i indukcji.
- Augustyn:
- idee istnieją jako myśli Boga, który według nich
stworzył rzeczy.
- Abelard:
- rozstrzygnięcie sporu o uniwersalia według którego nie
istnieją one realnie, ale mają podstawę we wspólnej formie rzeczy
obejmowanych przez nie.
- Tomasz:
- uniwersalia ante rem, in re, post
rem.
- Ockham:
- brzytwa Ockhama wzywająca do tłumaczenia świata za
pomocą najprostszych hipotez. Nominalizm (pojęcia ogólne to tylko
część języka).
- Kartezjusz:
- idee wrodzone.
- Hume:
- empiryzm, idee proste powstają na podstawie wrażeń, idee
złożone są ich konstrukcjami. Idee ogólne powstają przez połączenie
idei konkretnych. Krytyka zasady przyczynowości, która w
konsekwencji podważa prawomocość indukcji (ale akceptacja dla
posługiwania się nią w praktyce).
- Kant:
- aprioryczne formy zmysłowości (czas, przestrzeń) i
kategorie rozumu (m.in. substancja i przyczynowość) kształtują
poznanie. Z perspektywy indukcyjnego uczenia się maszyn można na to
patrzeć jako na bias, czyli czynnik determinujący wybór przez
ucznia określonej hipotezy na podstawie dostępnych danych.
- Mill:
- kanony indukcji (zgodności, różnicy, reszt, zmian
towarzyszących). Raczej chybione z punktu widzenia metodologii nauk
przyrodniczych, lecz bliskie uczeniu się maszyn.
- Avenarius:
- zasada ekonomii myślenia wzywająca do konstrukcji
pojęć i praw, które opisują świat w najprostszy sposób.
- James:
- pragmatyzm utożsamiający prawdę z długoterminową
użytecznością (truth = cash value), co odpowiada w pewnym
sensie założeniom uczenia się ze wzmocnieniem.
- Koło wiedeńskie (m.im. Schlick, Carnap, Neurath):
- zdania
protokolarne jako podstawa wiedzy, weryfikowalność jako kryterium
sensowności.
- Russell:
- podstawy współczesnej logiki matematycznej (także
Frege, Whitehead). Odróżnienie formy gramatycznej zdań od ich formy
logicznej.
- Wittgenstein:
- zwrócenie uwagi na rolę języka, który wyznacza
granice myśleniu (język reprezentacji hipotez określa, czego można
się nauczyć). Język logiki jako język uniwersalny (w pierwszym
okresie). Względność i równoprawność języków (w drugim okresie).
- Carnap:
- problemy indukcji i prawdopodobieństwa wiedzy z niej
pochodzącej.
- Popper:
- antyindukcjonizm w metodologii nauk, poznanie przez
proponowanie śmiałych falsyfikowalnych hipotez i ich testowanie.
Książka Mitchella wymieniona jako pierwsza pozycja poniższego wykazu
stanowi najlepsze źródło przystępnych informacji do sporej części (ale
nie całości) materiału przedmiotu. Jednak wykład ani udostępniane
notatki nie są bezpośrednio oparte na tej książce i pewne zagadnienia
mogą być przedstawiane nieco inaczej. Podaną na drugim miejscu polską
książeczkę polecam dlatego, że jest tam mowa o kilku interesujących
nas zagadnieniach i jest ona raczej łatwo dostępna w bibliotekach, ale
poziom merytoryczny i jakość prezentacji pozostawia pewne uczucie
niedosytu. Pozycje z zakresu filozofii cytuję w większości z pamięci i
nie ręczę za poprawność.
- Mitchell, T. M. Machine Learning, McGraw-Hill, 1997.
- Bolc, L., Zaremba, J. Wprowadzenie do uczenia się
maszyn. Akademicka Oficyna Wydawnicza RM, 1992.
- Carbonell, J. G., Michalski, R. S., Mitchell, T. M. An overview
of machine learning. W: Michalski, R. S., Carbonell, J. G.,
Mitchell, T. M. (eds.), Machine Learning: An Artificial
Intelligence Approach, Volume 1, Tioga (obecnie Morgan Kaufmann),
1983.
- Tatarkiewicz, W. Historia filozofii. PWN, 1997.
- Russell, B. Mądrość Zachodu. Penta, 1995.
- Bocheński, J. M. Zarys historii filozofii. Philed, 1993.
- Bocheński, J. M. Współczesne metody myślenia. W drodze,
1993.
Uczenie się maszyn: wykład 1
Wprowadzenie
This document was generated using the
LaTeX2HTML translator Version 2K.1beta (1.48)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 -no_navigation wyklad1.tex
The translation was initiated by Pawel Cichosz on 2004-03-01
Pawel Cichosz
2004-03-01