Glosario

Incrustación de Vecinos Estocásticos t-distribuida (t-SNE)

Explora t-SNE, una potente técnica para visualizar datos de alta dimensión. Aprende sus usos, ventajas y aplicaciones en IA y ML.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La Incrustación de Vecinos Estocásticos Distribuida (t-SNE) es una potente técnica de reducción de la dimensionalidad, diseñada principalmente para visualizar conjuntos de datos de alta dimensión en un espacio de baja dimensión, normalmente de dos o tres dimensiones. Desarrollada por Laurens van der Maaten y Geoffrey Hinton, la t-SNE destaca por revelar la estructura local subyacente de los datos, como conglomerados y variedades. Esto hace que los conjuntos de datos complejos generados o procesados por modelos de Inteligencia Artificial (IA) y Aprendizaje Automático (AM ) sean más fáciles de interpretar mediante inspección visual. Se utiliza ampliamente en diversos campos, como la visión por ordenador (CV) y el Procesamiento del Lenguaje Natural (PLN).

Cómo funciona el t-SNE

La idea central del t-SNE es mapear puntos de datos de alta dimensión a un espacio de baja dimensión (por ejemplo, un gráfico 2D) de forma que se preserven las similitudes entre los puntos. Modela la similitud entre pares de puntos de alta dimensión como probabilidades condicionales y luego intenta encontrar una incrustación de baja dimensión en la que las probabilidades condicionales entre los puntos mapeados sean similares. Este proceso se centra en conservar la estructura local: los puntos que están próximos en el espacio de alta dimensión deben permanecer próximos en el mapa de baja dimensión.

A diferencia de los métodos lineales, como el Análisis de Componentes Principales (ACP), el t-SNE es no lineal y probabilístico. Esto le permite captar relaciones complejas y no lineales, como colectores curvos, que el PCA podría pasar por alto. El algoritmo calcula las similitudes utilizando una distribución gaussiana en el espacio de alta dimensión y una distribución t de Student (con un grado de libertad) en el espacio de baja dimensión. El uso de la distribución t ayuda a separar más los puntos disímiles en el mapa de baja dimensión, mitigando el "problema de aglomeración" en el que los puntos tienden a agruparse. La incrustación óptima se encuentra minimizando la divergencia (en concreto, la divergencia de Kullback-Leibler) entre las dos distribuciones de probabilidad mediante técnicas de optimización como el descenso gradiente. Para una comprensión técnica en profundidad, consulta el documento original t-SNE.

t-SNE frente a PCA

Aunque tanto el t-SNE como el PCA son técnicas habituales de reducción de la dimensionalidad, difieren significativamente:

  • Linealidad: El ACP es una técnica lineal, mientras que la t-SNE es no lineal. El PCA encuentra componentes principales que maximizan la varianza, esencialmente rotando los datos. El t-SNE modela similitudes por pares.
  • Enfoque: El PCA pretende preservar la estructura global y la varianza máxima de los datos. El t-SNE da prioridad a preservar la estructura local (vecindarios de puntos).
  • Caso práctico: El PCA se utiliza a menudo para la compresión de datos, la reducción del ruido y como paso previo al procesamiento de datos antes de aplicar otros algoritmos de ML. El t-SNE se utiliza principalmente para la visualización y exploración de datos debido a su capacidad para revelar conglomerados.
  • Interpretabilidad: Los ejes de un gráfico PCA representan componentes principales y tienen una clara interpretación matemática relacionada con la varianza. Los ejes y las distancias entre conglomerados en un gráfico t-SNE no tienen una interpretación global tan directa; la atención se centra en la agrupación relativa de los puntos.

Aplicaciones en IA y ML

t-SNE es una herramienta de visualización inestimable para comprender los datos complejos y de alta dimensión que se encuentran a menudo en las cadenas de IA y ML, como la exploración de las incrustaciones aprendidas por los modelos de aprendizaje profundo.

  • Visualización de características de la imagen: En visión por ordenador, el t-SNE puede visualizar los mapas de características de alta dimensión o incrustaciones generados por las Redes Neuronales Convolucionales (CNN), como las de Ultralytics YOLO utilizados para la detección de objetos o la clasificación de imágenes. Aplicando t-SNE a las características extraídas de un conjunto de datos como ImageNet o COCO, los investigadores pueden ver si el modelo aprende a agrupar imágenes o clases de objetos similares en el espacio de características, lo que permite comprender mejor el modelo. Esto ayuda a analizar el rendimiento del modelo más allá de las métricas de precisión estándar (ver Métricas de rendimientoYOLO ).
  • Explorar incrustaciones de palabras: En PNL, el t-SNE se utiliza para visualizar incrustaciones de palabras (por ejemplo, de Word2Vec, GloVe o BERT) en 2D. Esto permite inspeccionar las relaciones semánticas; por ejemplo, palabras como "rey", "reina", "príncipe" y "princesa" pueden formar grupos distintos o mostrar posiciones relativas significativas, lo que demuestra la calidad del modelado lingüístico. Herramientas como el ProyectorTensorFlow suelen utilizar t-SNE para la visualización de la incrustación.
  • Comprensión de los datos de entrenamiento: Antes o durante el entrenamiento del modelo, t-SNE puede ayudar a visualizar la estructura de los propios datos de entrenamiento, revelando potencialmente clusters distintos, valores atípicos o problemas de etiquetado dentro de los conjuntos de datos gestionados a través de plataformas como Ultralytics HUB.

Consideraciones

Aunque es potente para la visualización, el t-SNE tiene algunas consideraciones:

  • Coste computacional: Puede ser computacionalmente caro y lento para conjuntos de datos muy grandes debido a sus cálculos por pares. Técnicas como aproximar el t-SNE o aplicar primero el PCA pueden ayudar.
  • Hiperparámetros: Los resultados pueden ser sensibles a hiperparámetros como la "perplejidad" (relacionada con el número de vecinos más próximos considerados) y el número de iteraciones para el descenso de gradiente.
  • Estructura global: el t-SNE se centra en la estructura local; las distancias relativas entre conglomerados en el gráfico final pueden no reflejar con exactitud la separación en el espacio original de alta dimensión. El tamaño de los conglomerados también puede inducir a error. Hay implementaciones disponibles en bibliotecas como Scikit-learn y marcos como PyTorch.
Leer todo