Uczenie Maszynowe – transformacje przestrzeni atrybutów

Ćwiczenie Ograniczanie i transformacja przestrzeni atrybutów
Cel Zapoznanie się z metodami i efektami przekształcania przestrzeni atrybutów
Zagadnienia PCA, reduction of dimensions
Narzędzia
Weka
Zbiory danych i materiały
CPU (z dystrybucji weki albo z IBL.zip)
Dodatkowe dane: http://tunedit.org/repo/Data/Numeric
Podstawy Weki

Zadanie 1. Selekcja atrybutów

  • Zapoznaj się ze sposobem działania klasyfikatora ZeroR i OneR.
  • Przypomnij sobie, czym różnią się podejścia "Filter" i "Wrapper"
  • W Wece na zakładce "select attributes" zapoznaj się z opisem działania:
    • OneRAttributeEval, InfoGainAttributeEval,
    • CfsSubsetEval oraz ClassifierSubsetEval / WrapperSubsetEval.
  • Zapoznaj się z metodami przeszukiwania podzbiorów atrybutów: BestFirst, ExhaustiveSearch, GeneticSearch, oraz z Ranker.
    Jeśli brakuje którejś z nich, zainstaluj w wece ten dodatkowy pakiet.
  • Jakie klasyfikatory warto używać w metodach ClassifierSubsetEval / WrapperSubsetEval, a jakich nie?
  • Przeanalizuj wyniki uzyskiwane dla różnych kombinacji wymienionych wyżej podejść dla zbioru Iris. Czy dają podobne, czy różne podzbiory atrybutów?

Zadanie 2. Transformacja przestrzeni atrybutów

  • Zapoznaj się ze sposobem działania metod PCA i SVD.
  • Dla zbioru "cpu" (zapoznaj się z nagłówkiem pliku i opisem) uruchom "PrincipalComponents" (maximumAttributeNames=10) i "Ranker".
  • Przeanalizuj wyniki, w szczególności kolejne wartości własne dla utworzonych kombinacji atrybutów. Jak można interpretować pierwszy, najbardziej istotny wymiar w kontekście problemu "cpu"?
  • Obejrzyj wykresy stworzone przez opcję "visualize transformed data" (prawy klik) i porównaj z oryginalnymi wymiarami na zakładce "Visualize". W przestrzeni przetransformowanej porównaj kształt chmur punktów dla par pierwszych i par ostatnich atrybutów.
  • Stwórz specjalny, własny zbiór danych 2D – taki, w którym samemu dobierasz układ punktów, i sprawdź na nim działanie PCA. Usuń z niego część informacji ("szum") ograniczając liczbę atrybutów (opcja varianceCovered) i ustawiając transformBackToOriginal=True.