Dimensión intrínseca

Aprendizaje no supervisado en Python

Benjamin Wilson

Director of Research at lateral.io

Dimensión intrínseca de una ruta de vuelo

  • 2 variables: longitud y latitud a lo largo de una ruta de vuelo
  • El conjunto de datos PARECE ser 2D
  • Pero se puede aproximar con una variable: desplazamiento a lo largo de la ruta
  • Intrínsecamente es 1D
latitude  longitude
  50.529     41.513
  50.360     41.672
  50.196     41.835
...

Diagrama de dispersión: longitud vs latitud

Aprendizaje no supervisado en Python

Dimensión intrínseca

  • Dimensión intrínseca = número de variables necesarias para aproximar el conjunto
  • Idea clave detrás de la reducción de dimensión
  • ¿Cuál es la representación más compacta de las muestras?
  • Se puede detectar con PCA
Aprendizaje no supervisado en Python

Conjunto de versicolor

  • «versicolor», una de las especies de iris
  • Solo 3 variables: largo del sépalo, ancho del sépalo y ancho del pétalo
  • Las muestras son puntos en un espacio 3D
Aprendizaje no supervisado en Python

El conjunto versicolor tiene dimensión intrínseca 2

  • Las muestras están cerca de una lámina plana 2D
  • Así que se puede aproximar con 2 variables

Puntos de versicolor en 3D: largo del sépalo vs ancho del sépalo vs ancho del pétalo

Aprendizaje no supervisado en Python

PCA identifica la dimensión intrínseca

  • Los diagramas de dispersión solo sirven con 2 o 3 variables
  • PCA identifica la dimensión intrínseca con cualquier número de variables
  • Dimensión intrínseca = número de componentes de PCA con varianza significativa
Aprendizaje no supervisado en Python

PCA de las muestras de versicolor

Puntos de versicolor rotados en 3D: PC1 vs PC2 vs PC3

Aprendizaje no supervisado en Python

Los componentes de PCA se ordenan por varianza descendente

Gráfico de barras: número de componente de PCA vs varianza

Aprendizaje no supervisado en Python

Varianza y dimensión intrínseca

  • La dimensión intrínseca es el número de componentes de PCA con varianza significativa
  • En este ejemplo: los dos primeros componentes
  • Por tanto, la dimensión intrínseca es 2

Gráfico de barras: número de componente de PCA vs varianza con línea roja vertical entre 1 y 2

Aprendizaje no supervisado en Python

Graficar las varianzas de los componentes de PCA

  • samples = array de muestras de versicolor
import matplotlib.pyplot as plt
from sklearn.decomposition import PCA

pca = PCA()
pca.fit(samples)
PCA()
features = range(pca.n_components_)
Aprendizaje no supervisado en Python

Graficar las varianzas de los componentes de PCA

plt.bar(features, pca.explained_variance_)
plt.xticks(features)
plt.ylabel('variance')
plt.xlabel('PCA feature')
plt.show()

Gráfico de barras: número de componente de PCA vs varianza

Aprendizaje no supervisado en Python

La dimensión intrínseca puede ser ambigua

  • La dimensión intrínseca es una idealización
  • ... no siempre hay una única respuesta correcta
  • Vinos del Piamonte: se podría defender 2, 3 o más

Gráfico de barras: número de componente de PCA vs varianza del conjunto de vinos

Aprendizaje no supervisado en Python

¡Vamos a practicar!

Aprendizaje no supervisado en Python

Preparing Video For Download...