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 wersja
Zbiory danych
BUSES, CRX, HEPAT, UROLOG, TIC, IRIS, CPU

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 jak działa IB1, IB2, IB3 oraz IB4.
  • 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.

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.