70 votos

¿Hay casos en los que el PCA es más adecuado que el t-SNE?

Quiero ver cómo se relacionan 7 medidas de comportamiento de corrección de texto (tiempo de corrección del texto, número de pulsaciones, etc.). Las medidas están correlacionadas. Hice un ACP para ver cómo se proyectaban las medidas en PC1 y PC2, lo que evitó el solapamiento de realizar pruebas de correlación de dos vías por separado entre las medidas.

Me preguntaron por qué no utilizar el t-SNE, ya que la relación entre algunas de las medidas podría ser no lineal.

Puedo ver cómo el hecho de permitir la no linealidad mejoraría esto, pero me pregunto si hay alguna buena razón para utilizar el PCA en este caso y no el t-SNE. No estoy interesado en agrupar los textos según su relación con las medidas, sino en la relación entre las propias medidas.

(Supongo que la EPT también podría ser un enfoque mejor/otro, pero esa es otra discusión). En comparación con otros métodos, hay pocos mensajes aquí sobre t-SNE, por lo que parece que vale la pena plantear la pregunta.

104voto

usεr11852 Puntos 5514

$t$ -SNE es una gran pieza de Aprendizaje Automático, pero se pueden encontrar muchas razones para utilizar PCA en su lugar. De la parte superior de mi cabeza, voy a mencionar cinco. Como la mayoría de las otras metodologías computacionales en uso, $t$ -SNE no es bala de plata y hay bastantes razones que lo convierten en una opción subóptima en algunos casos. Permítanme mencionar brevemente algunos puntos:

  1. Estocasticidad de la solución final . El ACP es determinista; $t$ -SNE no lo es. Uno obtiene una buena visualización y luego su colega obtiene otra visualización y luego se ponen artísticos que se ve mejor y si una diferencia de $0.03\%$ en el $KL(P||Q)$ la divergencia es significativa... En el PCA el correcto La respuesta a la pregunta planteada está garantizada. $t$ -SNE puede tener múltiples mínimos que pueden conducir a diferentes soluciones. Esto requiere múltiples ejecuciones y plantea dudas sobre la reproducibilidad de los resultados.

  2. Interpretación de la cartografía . Esto se relaciona con el punto anterior, pero supongamos que un equipo se ha puesto de acuerdo en una determinada semilla/carrera aleatoria. Ahora la pregunta es qué muestra esto... $t$ -SNE trata de mapear correctamente sólo lo local/vecino, por lo que nuestras percepciones a partir de esa incrustación deben ser muy cautelosas; las tendencias globales no se representan con precisión (y eso puede ser potencialmente una gran cosa para la visualización). Por otro lado, el PCA no es más que una rotación diagonal de nuestra matriz de covarianza inicial y los vectores propios representan un nuevo sistema axial en el espacio abarcado por nuestros datos originales. Podemos explicar directamente lo que hace un PCA concreto.

  3. Aplicación a datos nuevos/no vistos . $t$ -SNE es no aprender una función del espacio original al nuevo (de menor dimensión) y eso es un problema. En ese sentido, $t$ -SNE es un algoritmo de aprendizaje no paramétrico por lo que la aproximación con un algoritmo paramétrico es un problema mal planteado. La incrustación se aprende directamente moviendo los datos en el espacio de baja dimensión. Esto significa que no se obtiene una eigenvector o una construcción similar para utilizar en los nuevos datos. En cambio, con el PCA los vectores propios ofrecen un nuevo sistema de ejes que puede utilizarse directamente para proyectar nuevos datos. [Aparentemente se podría intentar entrenar una red profunda para aprender el $t$ -Mapeo de SNE (se puede escuchar al Dr. van der Maaten en ~46' de este <a href="https://www.youtube.com/watch?v=RJVL80Gg3lA" rel="noreferrer">video </a>sugiriendo algo en este sentido) pero está claro que no existe una solución fácil].

  4. Datos incompletos . De forma nativa $t$ -SNE no se ocupa de los datos incompletos. Para ser justos, PCA tampoco se ocupa de ellos, pero numerosas extensiones de PCA para datos incompletos (p. ej. PCA probabilístico ) están ahí fuera y son casi estándar rutinas de modelado. $t$ -SNE actualmente no puede manejar datos incompletos (aparte de obviamente entrenar un PCA probabilístico primero y pasar las puntuaciones del PC a $t$ -SNE como entradas).

  5. El $k$ no es un caso (demasiado) pequeño. $t$ -SNE resuelve un problema conocido como el problema de la aglomeración, efectivamente que puntos algo similares en la dimensión superior que colapsan unos sobre otros en las dimensiones inferiores (más aquí ). Ahora bien, a medida que se aumentan las dimensiones utilizadas, el problema de apiñamiento es menos grave, es decir, el problema que se intenta resolver mediante el uso de $t$ -SNE se atenúa. Se puede solucionar este problema, pero no es trivial. Por lo tanto, si necesita un $k$ vector dimensional como conjunto reducido y $k$ no es del todo pequeño, la optimización de la solución del producto está en duda. Por otro lado, PCA ofrece siempre la $k$ mejor combinación lineal en términos de varianza explicada. (Gracias a @amoeba por darse cuenta de que me he hecho un lío al intentar esbozar este punto por primera vez).

No menciono cuestiones relativas a los requisitos computacionales (por ejemplo, la velocidad o el tamaño de la memoria) ni cuestiones relativas a la selección de hiperparámetros relevantes (por ejemplo, la perplejidad). Creo que son cuestiones internas del $t$ -SNE y son irrelevantes a la hora de compararlo con otro algoritmo.

En resumen, $t$ -SNE es genial pero como todos los algoritmos tiene sus limitaciones en cuanto a su aplicabilidad. Yo uso $t$ -SNE casi en cualquier nuevo conjunto de datos que cae en mis manos como herramienta de análisis de datos explicativos. Sin embargo, creo que tiene ciertas limitaciones que no lo hacen tan aplicable como el PCA. Permítanme subrayar que PCA tampoco es perfecto; por ejemplo, las visualizaciones basadas en PCA suelen ser inferiores a las de $t$ -SNE.

21voto

Amadiere Puntos 5606

https://stats.stackexchange.com/a/249520/7828

es una excelente respuesta general.

Me gustaría centrarme un poco más en su problema. Al parecer, usted quiere ver cómo sus muestras se relacionan con respecto a sus 7 variables de entrada. Eso es algo que el t-SNE no hace. La idea del SNE y del t-SNE es colocar a los vecinos cerca unos de otros, ignorando (casi) por completo la estructura global.

Esto es excelente para la visualización, ya que los elementos similares pueden ser trazados uno al lado del otro (y no uno encima del otro, c.f. crowding).

Esto no es bueno para el análisis posterior. Se pierde la estructura global, algunos objetos pueden haber sido bloqueados para moverse hacia sus vecinos, y la separación entre los diferentes grupos no se conserva cuantitativamente. Por eso, por ejemplo, la agrupación en la proyección no suele funcionar muy bien.

El PCA es todo lo contrario. Intenta preservar las propiedades globales (vectores propios con alta varianza) mientras que puede perder desviaciones de baja varianza entre vecinos.

7voto

Even Mien Puntos 10122

Hay muchos puntos muy buenos que ya se han dado aquí. Sin embargo, hay algunos que me gustaría destacar. Uno es que el PCA conservará cosas que el tSNE no. Esto puede ser bueno o malo, dependiendo de lo que se intente conseguir. Por ejemplo, el tSNE no conservará el tamaño de los clusters, mientras que el PCA sí lo hará (véanse las imágenes siguientes, de tSNE frente a PCA

enter image description here

enter image description here

enter image description here

Como heurística, se puede tener en cuenta que el PCA preservará las grandes distancias entre los puntos, mientras que el tSNE preservará los puntos que están cerca unos de otros en su representación. Por lo tanto, el rendimiento de cada método dependerá en gran medida del conjunto de datos.

3voto

Daniel Bonates Puntos 20

Para dar un ángulo aplicado, PCA y t-SNE no son mutuamente excluyentes. En algunos campos de la biología nos enfrentamos a datos muy dimensionales en los que el t-SNE simplemente no escala. Por lo tanto, primero utilizamos el PCA para reducir la dimensionalidad de los datos y luego, tomando los componentes principales superiores, aplicamos el t-SNE (o un enfoque similar de reducción de la dimensionalidad no lineal como el UMAP) para su visualización.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X