PCA lär sig inte delar
Till skillnad från NMF lär sig PCA inte delar av objekt. Dess komponenter motsvarar varken ämnen (som vid dokumentanalys) eller bilddelar när modellen tränas på bilder. Verifiera detta själv genom att granska komponenterna hos en PCA-modell anpassad till datamängden med LED-sifferbilder från föregående övning. Bilderna finns tillgängliga som ett tvådimensionellt fält samples. Det finns även en modifierad version av funktionen show_as_image() som färgar en pixel röd om värdet är negativt.
När du har skickat in svaret kan du se att PCA:s komponenter inte representerar meningsfulla delar av LED-sifferbilder!
Den här övningen är en del av kursen
Oövervakad inlärning i Python
Övningsinstruktioner
- Importera
PCAfrånsklearn.decomposition. - Skapa en
PCA-instans kalladmodelmed7komponenter. - Tillämpa metoden
.fit_transform()frånmodelpåsamples. Tilldela resultatet tillfeatures. - För varje komponent i modellen (nås via
model.components_) anropar du funktionenshow_as_image()på den komponenten inuti loopen.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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 ____:
____