La PCA n'apprend pas les parties
Contrairement à la NMF, la PCA n'apprend pas les parties des choses. Ses composants ne correspondent pas à des sujets (dans le cas de documents) ou à des parties d'images, lorsqu'elle est entraînée sur des images. Vérifiez cela par vous-même en inspectant les composants d'un modèle PCA adapté à l'ensemble de données d'images de chiffres LED de l'exercice précédent. Les images sont disponibles sous forme de tableau 2D « samples ». Une version modifiée de la fonction « showasimage() » est également disponible. Elle colore un pixel en rouge si la valeur est négative.
Après avoir soumis la réponse, notez que les composants de la PCA ne représentent pas des parties significatives des images de chiffres LED.
Cet exercice fait partie du cours
Apprentissage non supervisé en Python
Instructions
- Importez
PCAdepuissklearn.decomposition. - Créez une instance
PCAappeléemodelavec7composants. - Appliquez la méthode
.fit_transform()demodelàsamples. Attribuez le résultat àfeatures. - À chaque composant du modèle (accessible via
model.components_), appliquez la fonctionshow_as_image()à ce composant à l'intérieur de la boucle.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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 ____:
____