Uczenie maszynowe - podstawy

Wstęp

W tym bloku omawiane będą zagadnienia związane z maszynowym uczeniem się. Algorytmy uczenia maszynowego pozwalają na wydobywanie wiedzy z danych. Dane reprezentowane są w postaci zbioru przykładów uczących. Poniżej przedstawiono przykład krótkiego zbioru przykładów uczących (Quinlan, 86) dotyczącego decyzji czy grać w golfa w zależności od warunków pogodowych.

l.p. Outlook Temperature Humidity Windy Play
1 sunny hot high false no
2 sunny hot high true no
3 overcast hot high false yes
4 rainy mild high false yes
5 rainy cool normal false yes
6 rainy cool normal true no
7 overcast cool normal true yes
8 sunny mild high false no
9 sunny cool normal false yes
10 rainy mild normal false yes
11 sunny mild normal true yes
12 overcast mild high true yes
13 overcast hot normal false yes
14 rainy mild high true no

Atrybuty i skale

Dane opisać można za pomocą notacji atrybut-wartość. Oznaczmy zbiór przykładów uczących jako $X$. Zbiór ten opisany jest za pomocą zbioru atrybutów $A = \{a_1, …, a_n\}$. Atrybut $a_i$ może przyjąć wartości należące do swojej dziedziny, $A_i$. I tak, powyższy zbiór danych opisany jest za pomocą 5 atrybutów: Outlook, Temperature, Humidity, Windy i Play. Dziedzinę atrybutu Outlook stanowią wartości sunny, overcast i rainy. Dla każdego z przykładów uczących $x$ należących do $X$ dana jest funkcja wartości atrybutu $a_i(x) \in A_i$. Zbiór wartości jakie przyjmuje przykład $x$ na kolejnych atrybutach $a_1(x), …, a_n(x)$ stanowi opis tego przykładu.

W naszym przykładzie wszystkie atrybuty są atrybutami nominalnymi. Innymi, często stosowanymi skalami są:

  • porządkowa
  • liczbowa (interwałowa i ilorazowa)

Podział algorytmów uczenia maszynowego

Jednym z możliwych podziałów algorytmów uczenia maszynowego jest podział na uczenie nadzorowane i nienadzorowane. Jeśli jeden z atrybutów jest wyróżniony i celem jest określenie wartości tego atrybutu na podstawie wartości pozostałych atrybutów, mamy do czynienia z uczeniem nadzorowanym. Wyróżniony atrybut jest nazywany atrybutem decyzyjnym. Pozostałe atrybuty to atrybuty warunkowe. Jeśli nie ma wyróżnionego atrybutu decyzyjnego, mówimy o uczeniu nienadzorowanym.

Jeśli celem jest przewidzenie etykiety dla nowych przykładów mamy do czynienia z klasyfikacją. Jeśli celem jest przybliżenie funkcji która pozwoli przewidzieć wartość liczbową, mówimy o regresji.

Klasyfikacja

Analiza danych algorytmem uczenia maszynowego pozwala na uzyskanie klasyfikatora, który może zostać wykorzystany do klasyfikacji nowych przykładów.

klas.png

Liczenie miar dokładności (accuracy) dla danych klas decyzyjnych.

Aby móc ocenić jakość klasyfikacji dokonanej przez klasyfikator (w ogólności jakość otrzymanego modelu) stosowane są wskaźniki jakości. Poniżej przedstawiono interpretację i sposób obliczania wskaźników TP Rate, FP Rate i Precision.

TP Rate
stosunek liczby poprawnych zaklasyfikowań (trafień) do liczby wszystkich elementów klasy (liczność danej klasy wg. danych).

a    b    <- classified as
1    2    a
3    4    b

TP Rate(b) = 4/(4+3)

FP Rate
stosunek liczby niepoprawnych zaklasyfikowań (fałszywych alarmów) do liczby przypadków nienależących do danej klasy (liczność pozostałych klas).

a    b    <- classified as
1    2    a
3    4    b

FP Rate(b) = 2/(1+2)

Precission
miara precyzji klasyfikacji dokonanej przez model - stosunek ilości trafień do liczby przypadków zaklasyfikowanych przez model do danej klasy.

a    b    <- classified as
1    2    a
3    4    b

Precission(b) = 4/(2+4)

WEKA

Program WEKA można pobrać ze strony: http://www.cs.waikato.ac.nz/~ml/weka/ (sekcja Download).
Dostępne są wersje na różne dla różnych systemów operacyjnych (program wymaga środowiska Java).

Materiały:

Praca domowa:

  • Dane do raportów
  • Szablon raportu
  • Raport do wypełnienia znajduje się w Moodle
  • Zadanie pierwsze jest zadaniem opisowym - nie dotyczy otrzymanych danych.
  • Zadania od 2 od 8 dotyczą indywidualnych danych. Proszę pamiętać o tym, że atrybut decyzyjny to ostatni z listy atrybutów.
  • W zadaniach 2-5 odpowiedzieć (krótko), podobnie jak omawialiśmy to na zajęciach.
  • W zadaniach 6-8 zwrócić uwagę, dla której z klas mają być udzielone odpowiedzi.

W razie niejasności proszę o kontakt mailowy.

—-

Raporty z badań wykorzystujące Wekę

Poniżej znajdują się linki do kilku ogólnodostępnych artykułów, których autorzy korzystali z Weki do analizy danych. Można zapoznać się z nimi, żeby zobaczyć, jak w praktyce porównuje się modele i jakie wnioski wyciąga na podstawie takich porównań.

© A. Czoska, M. Komosiński, B. Kroll, A. Kupś, A. Mensfelt, B. Szopka