Uczenie Maszynowe – klasyfikatory minimalnoodległościowe
Ćwiczenie | Algorytmy IBL i klasyfikowanie metodą najbliższych sąsiadów |
Cel | Poznanie i przetestowanie zasady klasyfikacji minimalnoodległościowej; koncepcja zbioru CD |
Zagadnienia | zbiór CD, najbliższy sąsiad, miary odległości przypadków, brakujące wartości atrybutów |
Narzędzia |
IBL oraz Weka
Artykuły Davida Aha o metodach IBL/CBL: [1], [2] Oryginalne źródła IBL1-4 CLI oraz ich skompilowana pod Windows wersja |
Zbiory danych | BUSES, CRX, HEPAT, UROLOG, TIC, IRIS, CPU |
Video | YouTube |
Zadanie 0. Wstęp
- Przypomnij sobie zasadę działania klasyfikatora k-NN. Rozważ wszelkie przypadki szczególne.
- Zastanów się, jaka jest złożoność obliczeniowa dla najprostszego podejścia i jak można je przyspieszyć.
- Przypomnij sobie z wykładu jak działa IB1, IB2, IB3 oraz IB4 (konkretne idee znane pod ogólną nazwą "Condensed Nearest Neighbor")
- Otwórz i przejrzyj artykuły D. Aha: cały [1], rozdział 3.3 w [2].
Zadanie 1. Liczba sąsiadów
- Ściągnij IBL.zip, rozpakuj, obejrzyj IBL.BAT
- Obejrzyj plik IBL.CFG i przypomnij sobie znaczenie poszczególnych opcji
- Wybierz któryś z plików danych (oprócz votes) i stwórz trójwymiarowy wykres, w którym na osi X będzie wielkość sąsiedztwa (np. od 1 do 8), na osi Y odmiana algorytmu (od 1 do 4), a na osi Z trafność klasyfikowania. Sformułuj wnioski wynikające z tego wykresu. Stwórz analogiczny wykres pokazujący wielkość zbioru CD.
W pliku .CFG możesz zaznaczyć [+] równocześnie wszystkie cztery wersje IBL1-4. Ponieważ uruchamiamy tu wielokrotnie program ze zmieniającym się plikiem konfiguracyjnym, możesz zautomatyzować ten proces – np. przez prosty skrypt podmieniający w pętli odpowiednio fragment pliku CFG.
Zadanie 2. Przedział ufności
- Wybierz plik danych oraz algorytm (IBL 3 lub 4). Stwórz trójwymiarowy wykres, w którym na osiach X i Y będą progi akceptacji i usunięcia przypadku z CD, a na osi Z – trafność. Gdzie jest zakres największej wrażliwości algorytmu?
Zadanie 3. Atrybuty nominalne
- Rozważ, jakie są wady trywialnej miary "równy/nierówny" w przypadku atrybutów nominalnych.
- Zapoznaj się z różnymi miarami (pdf, rys. 1) oraz z miarą Stanfill-Waltz (VDM, rozdział 2.4 tamże). Zobacz też rozdział 1 i przykład XOR.
Zadanie 4. k-NN w Wece
- Załaduj zbiór Iris i sprawdź trafność klasyfikatorów zero-rule i one-rule.
- Porównaj skuteczność klasyfikatorów IB1 oraz IBk dla k=1. Jak nazwa IBk w WECE ma się do nazewnictwa IB1, IB2, IB3 z artykułu D. Aha?
- Zapoznaj się z ustawieniami algorytmu IBk, w szczególności ze sposobami wyznaczania najbliższego sąsiada.
- Narysuj wykres trafności klasyfikowania dla k=1..9 (opcja crossValidate w samym IBk ma być "false").
Przy tej okazji zapoznaj się z interfejsem "Experimenter": zdefiniuj eksperyment (jeden zbiór danych, kilka algorytmów i/lub różnych parametrów algorytmów), uruchom go i obejrzyj plik wynikowy. - Zapoznaj się z nagłówkiem zbioru "contact-lenses.arff" i narysuj dla tego zbioru analogiczny wykres.