Enfoque de fuentes abiertas de Google para visualizar conjuntos de datos grandes y de alta dimensión utilizando tSNE

Contenidos

Visión general

  • Un pasante de Google ha sido pionero en un enfoque que utiliza tSNE para visualizar conjuntos de datos de alta dimensión.
  • Este método genera gráficos más rápido que cualquier otro creado antes, ¡y puede abrirse en su navegador web!
  • Ha sido creado y open source en la familia TensorFlow.js

Introducción

Tratar con datos de alta dimensionalidad siempre ha sido un gran desafío para los científicos de datos. Se espera que busque características ocultas explorando el vasto terreno del conjunto de datos (en su mayoría) desconocido, que contiene cientos, si no cientos, de variables. ¿Cómo diablos empiezas?

Para hacer frente a esto, se creó el algoritmo tSNE. Seguro que aún tiene PCA que puede aprovechar, pero cuando tiene un conjunto de datos MASIVO y desea buscar un patrón en estilo no lineal (un método más avanzado), tSNE ha demostrado ser más efectivo. Mapea conjuntos de datos multidimensionales en dos o más dimensiones. Además reduce la cantidad de parcelas que necesita generar cuando se trata de una gran cantidad de dimensiones.

Si es nuevo en tSNE o necesita un repaso, consulte esta guía que explica exhaustivamente este maravilloso concepto.

Pero una de las limitaciones de tSNE ha sido que es computacionalmente muy complejo. Aún cuando está destinado a grandes conjuntos de datos, esta restricción lo ha limitado a conjuntos de datos relativamente pequeños. Entonces, un pasante de Google decidió ser pionero en un enfoque innovador para maximizar el uso de tSNE. Su método se basa en gran medida en el hardware gráfico moderno.

Este nuevo enfoque genera incrustaciones mucho más rápido que cualquier otra técnica en este espacio. ¡Pero lo que verdaderamente destaca es que se puede ejecutar en un navegador web! ¿Cómo preguntas? Aquí es donde TensorFlow.js pasa a primer plano. El método de Google aprovecha las capacidades de la GPU por medio de WebGL, una API de JavaScript que se utiliza para representar gráficos 2D y 3D en cualquier navegador. Consulte nuestra cobertura de TensorFlow.js aquí.

El equipo, dirigido por el pasante, posteriormente probó su enfoque en el popular conjunto de datos de imágenes manuscritas del MNIST. Lo que solía tomar 15 minutos para calcular ahora se puede hacer en tiempo real y en el propio navegador web. ¡Habla de avances!

La imagen de arriba ofrece una descripción general de este enfoque. Lo he resumido a continuación, tomando un extracto de su trabajo de investigación:

  • Primera imagen: la reducción al mínimo de la función objetivo se calcula en tiempo lineal haciendo uso de un campo escalar
  • Segunda imagen: y un campo vectorial bidimensional
  • Tercera y cuarta imágenes: Los campos se calculan en la GPU a través de la proyección de núcleos correctamente diseñados usando la función de combinación aditiva de la moderna canalización de renderizado. El resto de la reducción al mínimo se trata como una canalización de cálculo de tensor que se calcula en la GPU a través de TensorFlow.js

He enumerado algunos recursos a continuación, lo animo a que consulte para obtener una comprensión profunda de este enfoque:

Nuestra opinión sobre esto

Si en algún momento ha tratado con conjuntos de datos de alta dimensión, es factible que ya esté en camino de usar este enfoque. Este enfoque tSNE podría ser un verdadero cambio de juego para las instituciones que se ocupan de grandes conjuntos de datos y no disponen mucho tiempo en sus manos.

Una de las (pocas) limitaciones hoy en día es su capacidad para generar solo visualizaciones 2D (aún no funciona con 3D). Pero no veo que esto sea un obstáculo, puesto que la mayoría de las visualizaciones con las que trabajan los científicos de datos está en el espacio 2D (a menos que trabaje con datos geoespaciales).

«Google Open Sources» se ha convertido en una frase muy usada en estos días. Me encanta que constantemente abran los resultados de sus investigaciones para beneficiar a la comunidad de ML en general. Déjame saber lo que piensas de esta técnica en la sección de comentarios a continuación.

Suscríbete a AVBytes aquí para obtener actualizaciones periódicas de ciencia de datos, aprendizaje automático e inteligencia artificial en su bandeja de entrada.

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.