Articulo de referencia

incrustación estocástica de vecinos con distribución t

Visualización t-SNE de incrustaciones de palabras generadas a partir de literatura del siglo XIX. Incrustaciones t-SNE del conjunto de datos MNIST El incrustamiento estocástico ...

Visualización t-SNE de incrustaciones de palabras generadas a partir de literatura del siglo XIX.
Incrustaciones t-SNE del conjunto de datos MNIST

El incrustamiento estocástico de vecinos distribuidos en t ( t-SNE ) es un método estadístico para visualizar datos de alta dimensión asignando a cada punto de datos una ubicación en un mapa bidimensional o tridimensional. Se basa en el incrustamiento estocástico de vecinos desarrollado originalmente por Geoffrey Hinton y Sam Roweis, [ 1 ] donde Laurens van der Maaten y Hinton propusieron la variante distribuida en t . [ 2 ] Es una técnica de reducción de dimensionalidad no lineal para incrustar datos de alta dimensión para su visualización en un espacio de baja dimensión de dos o tres dimensiones. Específicamente, modela cada objeto de alta dimensión mediante un punto bidimensional o tridimensional de tal manera que los objetos similares se modelan mediante puntos cercanos y los objetos disímiles se modelan mediante puntos distantes con alta probabilidad.

El algoritmo t-SNE consta de dos etapas principales. Primero, t-SNE construye una distribución de probabilidad sobre pares de objetos de alta dimensión de tal manera que a los objetos similares se les asigna una probabilidad mayor, mientras que a los puntos disímiles se les asigna una probabilidad menor. Segundo, t-SNE define una distribución de probabilidad similar sobre los puntos en el mapa de baja dimensión y minimiza la divergencia de Kullback-Leibler (divergencia KL) entre las dos distribuciones con respecto a las ubicaciones de los puntos en el mapa. Si bien el algoritmo original utiliza la distancia euclidiana entre objetos como base de su métrica de similitud, esto se puede cambiar según sea necesario. Una variante riemanniana es UMAP .

t-SNE se ha utilizado para la visualización en una amplia gama de aplicaciones, incluyendo genómica , investigación en seguridad informática , [ 3 ] procesamiento del lenguaje natural , análisis musical , [ 4 ] investigación del cáncer , [ 5 ] bioinformática , [ 6 ] interpretación de dominios geológicos, [ 7 ] [ 8 ] [ 9 ] y procesamiento de señales biomédicas. [ 10 ]

Para un conjunto de datos connorte{\displaystyle n}elementos, t-SNE se ejecuta enO(norte2){\displaystyle O(n^{2})}tiempo y requiereO(norte2){\displaystyle O(n^{2})}espacio. [ 11 ]

Detalles

Dado un conjunto denorte{\displaystyle N}objetos de alta dimensiónincógnita1,,incógnitanorte{\displaystyle \mathbf {x} _{1},\dots ,\mathbf {x} _{N}}, t-SNE primero calcula las probabilidadespagij{\displaystyle p_{ij}}que son proporcionales a la similitud de los objetosincógnitai{\displaystyle \mathbf {x} _ {i}}yincógnitaj{\displaystyle \mathbf {x} _ {j}}, de la siguiente manera.

Paraij{\displaystyle i\neq j}, definir

pagji=exp(incógnitaiincógnitaj2/2σi2)kiexp(incógnitaiincógnitak2/2σi2){\displaystyle p_{j\mid i}={\frac {\exp(-\lVert \mathbf {x} _{i}-\mathbf {x} _{j}\rVert ^{2}/2\sigma _{i}^{2})}{\sum _{k\neq i}\exp(-\lVert \mathbf {x} _{i}-\mathbf {x} _{k}\rVert ^{2}/2\sigma _{i}^{2})}}}

y establecerpagii=0{\displaystyle p_{i\mid i}=0}Tenga en cuenta que el denominador anterior garantizajpagji=1{\displaystyle \sum _{j}p_{j\mid i}=1}a pesar dei{\displaystyle i}.

Como explicaron van der Maaten y Hinton: "La similitud de los puntos de datosincógnitaj{\displaystyle x_{j}}punto de datosincógnitai{\displaystyle x_{i}}es la probabilidad condicional,pagj|i{\displaystyle p_{j|i}}, esoincógnitai{\displaystyle x_{i}}elegiríaincógnitaj{\displaystyle x_{j}}como su vecino si los vecinos se eligieran en proporción a su densidad de probabilidad bajo una gaussiana centrada enincógnitai{\displaystyle x_{i}}." [ 2 ]

Ahora define

pagij=pagji+pagij2norte{\displaystyle p_{ij}={\frac {p_{j\mid i}+p_{i\mid j}}{2N}}}

Esto está motivado porque pagi{\displaystyle p_{i}}y pagj{\displaystyle p_{j}} A partir de las N muestras se estima como 1/N, por lo que la probabilidad condicional se puede escribir como pagij=nortepagij{\displaystyle p_{i\mid j}=Np_{ij}} y pagji=nortepagji{\displaystyle p_{j\mid i}=Np_{ji}}. Desdepagij=pagji{\displaystyle p_{ij}=p_{ji}}, puedes obtener la fórmula anterior.

Tenga en cuenta también que pagii=0{\displaystyle p_{ii}=0}yi,jpagij=1{\displaystyle \sum _{i,j}p_{ij}=1}.

El ancho de banda de los núcleos gaussianosσi{\displaystyle \sigma _{i}}está configurado de tal manera que la entropía de la distribución condicional sea igual a una entropía predefinida utilizando el método de bisección . Como resultado, el ancho de banda se adapta a la densidad de los datos: valores más pequeños deσi{\displaystyle \sigma _{i}}se utilizan en las partes más densas del espacio de datos. La entropía aumenta con la perplejidad de esta distribución.PAGi{\displaystyle P_{i}}; esta relación se considera como

PAGmirpag(PAGi)=2H(PAGi){\displaystyle Perp(P_{i})=2^{H(P_{i})}}

dóndeH(PAGi){\displaystyle H(P_{i})}es la entropía de ShannonH(PAGi)=jpagj|iregistro2pagj|i.{\displaystyle H(P_{i})=-\sum _{j}p_{j|i}\log _{2}p_{j|i}.}

La perplejidad es un parámetro seleccionado manualmente en t-SNE, y como afirman los autores, "la perplejidad puede interpretarse como una medida continua del número efectivo de vecinos. El rendimiento de SNE es bastante robusto ante cambios en la perplejidad, y los valores típicos se encuentran entre 5 y 50". [ 2 ]

Dado que el núcleo gaussiano utiliza la distancia euclidianaincógnitaiincógnitaj{\displaystyle \lVert x_{i}-x_{j}\rVert }, se ve afectado por la maldición de la dimensionalidad y en datos de alta dimensión cuando las distancias pierden la capacidad de discriminar,pagij{\displaystyle p_{ij}}se vuelven demasiado similares (asintóticamente, convergerían a una constante). Se ha propuesto ajustar las distancias con una transformación de potencia, basada en la dimensión intrínseca de cada punto, para mitigar este problema. [ 12 ]

t-SNE tiene como objetivo aprender und{\displaystyle d}-mapa dimensionaly1,,ynorte{\displaystyle \mathbf {y} _{1},\dots,\mathbf {y} _{N}}(conyiRd{\displaystyle \mathbf {y} _{i}\in \mathbb {R} ^{d}}yd{\displaystyle d}normalmente se elige como 2 o 3) que refleja las similitudes pagij{\displaystyle p_{ij}}lo mejor posible. Para ello, mide las similitudes.qij{\displaystyle q_{ij}}entre dos puntos en el mapayi{\displaystyle \mathbf {y} _ {i}}yyj{\displaystyle \mathbf {y} _ {j}}, utilizando un enfoque muy similar. Específicamente, paraij{\displaystyle i\neq j}, definirqij{\displaystyle q_{ij}}como

qij=(1+yiyj2)1klk(1+ykyl2)1{\displaystyle q_{ij}={\frac {(1+\lVert \mathbf {y} _{i}-\mathbf {y} _{j}\rVert ^{2})^{-1}}{\sum _{k}\sum _{l\neq k}(1+\lVert \mathbf {y} _{k}-\mathbf {y} _{l}\rVert ^{2})^{-1}}}}

y establecerqii=0{\displaystyle q_{ii}=0}En este trabajo se utiliza una distribución t de Student de cola pesada (con un grado de libertad, que es lo mismo que una distribución de Cauchy ) para medir las similitudes entre puntos de baja dimensión con el fin de permitir que objetos disímiles se modelen muy separados en el mapa.

La ubicación de los puntosyi{\displaystyle \mathbf {y} _ {i}}En el mapa se determinan minimizando la divergencia de Kullback-Leibler (no simétrica) de la distribución.PAG{\displaystyle P}de la distribuciónQ{\displaystyle Q}, eso es:

KL(PAGQ)=ijpagijregistropagijqij{\displaystyle \mathrm {KL} \left(P\parallel Q\right)=\sum _{i\neq j}p_{ij}\log {\frac {p_{ij}}{q_{ij}}}}

La minimización de la divergencia de Kullback-Leibler con respecto a los puntosyi{\displaystyle \mathbf {y} _ {i}}Se realiza mediante descenso de gradiente . El resultado de esta optimización es un mapa que refleja las similitudes entre las entradas de alta dimensión.

Producción

Aunque los gráficos t-SNE a menudo parecen mostrar clústeres , estos pueden verse fuertemente influenciados por la parametrización elegida (especialmente la perplejidad), por lo que es necesario comprender bien los parámetros de t-SNE. Se ha demostrado que tales "clústeres" pueden aparecer incluso en datos estructurados sin una agrupación clara, [ 13 ] y, por lo tanto, pueden ser falsos positivos. Del mismo modo, el tamaño de los clústeres producidos por t-SNE no es informativo, ni tampoco la distancia entre ellos. [ 14 ] Por lo tanto, puede ser necesaria una exploración interactiva para elegir parámetros y validar los resultados. [ 15 ] [ 16 ] Se ha demostrado que t-SNE a menudo puede recuperar clústeres bien separados y, con elecciones de parámetros específicas, se aproxima a una forma simple de agrupamiento espectral . [ 17 ]

Software

  • Existe una implementación en C++ del algoritmo Barnes-Hut disponible en la cuenta de GitHub de uno de los autores originales.
  • El paquete Rtsne implementa t-SNE en R.
  • ELKI contiene tSNE, también con la aproximación de Barnes-Hut.
  • scikit-learn , una popular biblioteca de aprendizaje automático en Python, implementa t-SNE con soluciones exactas y la aproximación de Barnes-Hut.
  • Tensorboard, el kit de visualización asociado con TensorFlow , también implementa t-SNE ( versión en línea ).
  • El paquete TSne de Julia implementa t-SNE.

Referencias

  1. Hinton, Geoffrey; Roweis, Sam (enero de 2002). Incrustación estocástica de vecinos (PDF) . Sistemas de procesamiento de información neuronal .
  2. 1 2 3 van der Maaten, LJP; Hinton, GE (noviembre de 2008). "Visualización de datos mediante t-SNE" (PDF) . Journal of Machine Learning Research . 9 : 2579–2605 .
  3. Gashi, I.; Stankovic, V.; Leita, C.; Thonnard, O. (2009). "Un estudio experimental de la diversidad con motores antivirus comerciales". Actas del Simposio Internacional IEEE sobre Computación en Red y Aplicaciones : 4–11 .
  4. Hamel, P.; Eck, D. (2010). "Aprendizaje de características a partir de audio musical con redes neuronales profundas". Actas de la Conferencia de la Sociedad Internacional para la Recuperación de Información Musical : 339–344 .
  5. Jamieson, AR; Giger, ML; Drukker, K.; Lui, H.; Yuan, Y.; Bhooshan, N. (2010). " Explorando la reducción de la dimensión del espacio de características no lineales y la representación de datos en CADx de mama con mapas propios laplacianos y t-SNE" . Medical Physics . 37 (1): 339– 351. doi : 10.1118/1.3267037 . PMC 2807447. PMID 20175497 .  
  6. Wallach, I.; Liliean, R. (2009). "The Protein-Small-Molecule Database, A Non-Redundant Structural Resource for the Analysis of Protein-Ligand Binding" . Bioinformatics . 25 (5): 615– 620. doi : 10.1093/bioinformatics/btp035 . PMID 19153135 . 
  7. Balamurali, Mehala; Silversides, Katherine L.; Melkumyan, Arman (2019-04-01). "Una comparación de t-SNE, SOM y SPADE para identificar dominios de tipos de materiales en datos geológicos" . Computers & Geosciences . 125 : 78–89 . Bibcode : 2019CG....125...78B . doi : 10.1016/j.cageo.2019.01.011 . ISSN 0098-3004 . S2CID 67926902 .  
  8. Balamurali, Mehala; Melkumyan, Arman (2016). "Visualización y agrupamiento de dominios geológicos basados ​​en t-SNE" . En Hirose, Akira; Ozawa, Seiichi; Doya, Kenji; Ikeda, Kazushi; Lee, Minho; Liu, Derong (eds.). Procesamiento de información neuronal . Lecture Notes in Computer Science. Vol. 9950. Cham: Springer International Publishing. pp. 565–572 . doi : 10.1007/978-3-319-46681-1_67 . ISBN   978-3-319-46681-1.
  9. Leung, Raymond; Balamurali, Mehala; Melkumyan, Arman (2021-01-01). "Estrategias de truncamiento de muestras para la eliminación de valores atípicos en datos geoquímicos: el enfoque de distancia robusta MCD frente a la agrupación de conjuntos t-SNE" . Geociencias Matemáticas . 53 (1): 105– 130. Bibcode : 2021MatGe..53..105L . doi : 10.1007/s11004-019-09839-z . ISSN 1874-8953 . S2CID 208329378 .  
  10. Birjandtalab, J.; Pouyan, MB; Nourani, M. (1 de febrero de 2016). "Reducción de dimensión no lineal para la detección de crisis epilépticas basada en EEG". Conferencia Internacional IEEE-EMBS de 2016 sobre Informática Biomédica y de la Salud (BHI) . págs. 595–598 . doi : 10.1109/BHI.2016.7455968 . ISBN  978-1-5090-2455-1. S2CID 8074617 . 
  11. Pezzotti, Nicola (2015). "tSNE aproximado y manejable por el usuario para análisis visual progresivo". arXiv : 1512.01655 [ cs.CV ].
  12. Schubert, Erich; Gertz, Michael (2017-10-04). Intrinsic t-Stochastic Neighbor Incedding for Visualization and Outlier Detection . SISAP 2017 – 10th International Conference on Similarity Search and Applications. pp. 188– 203. doi : 10.1007/978-3-319-68474-1_13 . 
  13. "Agrupamiento K-means en la salida de t-SNE" . Validado cruzadamente . Recuperado el 16 de abril de 2018 .
  14. Wattenberg, Martin; Viégas, Fernanda; Johnson, Ian (2016-10-13). "Cómo usar t-SNE de manera efectiva" . Distill . 1 (10): e2. doi : 10.23915/distill.00002 . ISSN 2476-0757 . 
  15. ^ Pezzotti, Nicola; Lelieveldt, Boudewijn PF; Maaten, Laurens van der; Hollt, Thomas; Eisemann, Elmar; Vilanova, Anna (1 de julio de 2017). "tSNE aproximado y orientable por el usuario para análisis visual progresivo". Transacciones IEEE sobre visualización y gráficos por computadora . 23 (7): 1739-1752 . arXiv : 1512.01655 . Código Bib : 2017ITVCG..23.1739P . doi : 10.1109/tvcg.2016.2570755 . ISSN 1077-2626 . PMID 28113434 . S2CID 353336 .   
  16. Wattenberg, Martin; Viégas, Fernanda; Johnson, Ian (13 de octubre de 2016). "Cómo usar t-SNE de manera efectiva" . Distill . 1 (10). doi : 10.23915/distill.00002 . Recuperado el 4 de diciembre de 2017 .
  17. Linderman, George C.; Steinerberger, Stefan (2017-06-08). "Agrupamiento con t-SNE, demostrablemente". arXiv : 1706.02582 [ cs.LG ].
  • Wattenberg, Martin; Viégas, Fernanda; Johnson, Ian (13 de octubre de 2016). "Cómo usar t-SNE de manera efectiva" . Distill . 1 (10): e2. doi : 10.23915/distill.00002 . ISSN 2476-0757 . Demostración interactiva y tutorial.
  • Visualización de datos mediante t-SNE , charla técnica de Google sobre t-SNE
  • Implementaciones de t-SNE en varios lenguajes , una colección de enlaces mantenida por Laurens van der Maaten.