PCA no aprende las partes
A diferencia de NMF, PCA no aprende las partes de las cosas. Sus componentes no corresponden a temas (en el caso de los documentos) ni a partes de imágenes, cuando se entrenan con imágenes. Compruébalo tú mismo inspeccionando los componentes de un modelo PCA ajustado al conjunto de datos de imágenes de dígitos LED del ejercicio anterior. Las imágenes están disponibles en forma de matriz 2D samples
. También está disponible una versión modificada de la función show_as_image()
que colorea un píxel de rojo si el valor es negativo.
Después de enviar la respuesta, ¡observa que los componentes de PCA no representan partes significativas de imágenes de LED dígitos!
Este ejercicio forma parte del curso
Aprendizaje no supervisado en Python
Instrucciones de ejercicio
- Importa
PCA
desdesklearn.decomposition
. - Crea una instancia de
PCA
llamadamodel
con componentes de7
. - Aplica el método
.fit_transform()
demodel
asamples
. Asigna el resultado afeatures
. - A cada componente del modelo (al que se accede a través de
model.components_
), aplícale la funciónshow_as_image()
dentro del bucle.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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 ____:
____