Soweit ich weiß, werden sowohl Autoencoder als auch t-SNE zur nichtlinearen Dimensionsreduktion verwendet. Was sind die Unterschiede zwischen ihnen und warum sollte ich einen gegen einen anderen verwenden?
Soweit ich weiß, werden sowohl Autoencoder als auch t-SNE zur nichtlinearen Dimensionsreduktion verwendet. Was sind die Unterschiede zwischen ihnen und warum sollte ich einen gegen einen anderen verwenden?
Antworten:
Beide versuchen, eine Einbettung Ihrer Daten in eine geringere Dimension zu finden. Es gibt jedoch unterschiedliche Minimierungsprobleme. Insbesondere versucht ein Autoencoder, den Rekonstruktionsfehler zu minimieren, während t-SNE versucht, einen Raum mit niedrigeren Dimensionen zu finden, und gleichzeitig versucht, die Nachbarschaftsabstände beizubehalten. Aufgrund dieses Attributs wird t-SNE normalerweise für Diagramme und Visualisierungen bevorzugt.
[Autoencoder] konzentrieren sich hauptsächlich auf die Maximierung der Varianz der Daten im latenten Raum, wodurch Autoencoder die lokale Struktur der Daten im latenten Raum weniger erfolgreich beibehalten als vielfältige Lernende ...
Aus "Lernen einer parametrischen Einbettung durch Erhalt lokaler Strukturen", Laurens van der Maaten ( https://lvdmaaten.github.io/publications/papers/AISTATS_2009.pdf )
Autoencoder und t-SNE können zusammen verwendet werden, um hochdimensionale Daten besser zu visualisieren, wie in [1] beschrieben:
Speziell für die 2D-Visualisierung ist t-SNE wahrscheinlich der beste Algorithmus, erfordert jedoch normalerweise relativ niedrigdimensionale Daten. Eine gute Strategie zur Visualisierung von Ähnlichkeitsbeziehungen in hochdimensionalen Daten besteht darin, zunächst einen Autoencoder zu verwenden, um Ihre Daten in einen niedrigdimensionalen Raum (z. B. 32-dimensional) zu komprimieren, und dann t-SNE zum Zuordnen der komprimierten Daten zu einer 2D-Ebene zu verwenden .
[1] https://blog.keras.io/building-autoencoders-in-keras.html
Autoencoder wurde entwickelt, um frühere Daten in einem 2-Norm-Sinne zu erhalten, was als Erhaltung der kinetischen Energie der Daten angesehen werden kann, wenn die Daten Geschwindigkeit sind.
Während t-SNE eine KL-Divergenz verwendet, die nicht symmetrisch ist, führt dies dazu, dass sich t-SNE mehr auf die lokale Struktur konzentriert, während der Autoencoder dazu neigt, den gesamten L2-Fehler klein zu halten, was im globalen Sinne ist.