Zacznij terazZacznij za darmo

PCA nie uczy się części składowych

W przeciwieństwie do NMF, PCA nie uczy się części składowych obiektów. Jego komponenty nie odpowiadają tematom (w przypadku dokumentów) ani fragmentom obrazów – nawet gdy model jest trenowany na danych obrazowych. Sprawdź to samodzielnie, analizując komponenty modelu PCA dopasowanego do zbioru danych z obrazami cyfr LED z poprzedniego ćwiczenia. Obrazy są dostępne jako dwuwymiarowa tablica samples. Dostępna jest również zmodyfikowana wersja funkcji show_as_image(), która zaznacza piksele o wartościach ujemnych na czerwono.

Po przesłaniu odpowiedzi zauważ, że komponenty PCA nie reprezentują żadnych sensownych części cyfr LED!

To ćwiczenie jest częścią kursu

Uczenie nienadzorowane w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj PCA z sklearn.decomposition.
  • Utwórz instancję PCA o nazwie model z 7 komponentami.
  • Zastosuj metodę .fit_transform() modelu model na danych samples. Wynik przypisz do zmiennej features.
  • Dla każdego komponentu modelu (dostępnego przez model.components_) wywołaj wewnątrz pętli funkcję show_as_image() z tym komponentem jako argumentem.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import PCA
____

# Create a PCA instance: model
model = ____

# Apply fit_transform to samples: features
features = ____

# Call show_as_image on each component
for component in ____:
    ____
    
Edytuj i uruchom kod