Quelles sont les différences entre les encodeurs automatiques et le t-SNE?

Réponses:

8

Les deux essaient de trouver une intégration de dimensionnalité inférieure de vos données. Cependant, il existe différents problèmes de minimisation. Plus spécifiquement, un autoencodeur essaie de minimiser l'erreur de reconstruction, tandis que t-SNE essaie de trouver un espace dimensionnel inférieur et en même temps il essaie de préserver les distances de voisinage. En raison de cet attribut, le t-SNE est généralement préféré pour les tracés et les visualisations.

Yannis Assael
la source
Donc, dans ce sens, cela signifie-t-il que l'autoencodeur est préférable de trouver une dimension inférieure lorsque la dimension inférieure est supérieure à la 3D? (Parce que je suppose que si la dimension inférieure est grande, t-SNE peut ne pas fonctionner aussi bien?)
RockTheStar
2
Il existe de nombreux types d'auto-encodeurs (clairsemés, variationnels, empilés, convolutifs, etc.) selon votre tâche. Ils peuvent être très efficaces pour découvrir des plongements de dimension inférieure, basés sur une erreur de reconstruction. Par conséquent, si votre tâche consiste à trouver un espace de dimension inférieure optimal (même 2D), je vous suggère de choisir le bon encodeur automatique pour votre tâche. Si vous devez faire des visualisations, t-SNE serait probablement votre choix. comme la préservation des distances voisines, peut entraîner de meilleures visualisations.
Yannis Assael,
2

[Les encodeurs automatiques] se concentrent principalement sur la maximisation de la variance des données dans l'espace latent, ce qui fait que les encodeurs automatiques réussissent moins bien à conserver la structure locale des données dans l'espace latent que les apprenants multiples ...

Extrait de "Learning a Parametric Embedding by Preserving Local Structure", Laurens van der Maaten ( https://lvdmaaten.github.io/publications/papers/AISTATS_2009.pdf )

User128525
la source
Ce n'est pas "le papier t-SNE". Le t-SNE standard n'est pas paramétrique.
amoeba
1
Merci @amoeba pour votre commentaire à ce sujet. J'ai édité le post.
User128525
1

Autoencoder et t-SNE peuvent être utilisés ensemble pour une meilleure visualisation dans les données de haute dimension, comme décrit dans [1]:

Pour la visualisation 2D en particulier, le t-SNE est probablement le meilleur algorithme, mais il nécessite généralement des données de dimension relativement faible. Donc, une bonne stratégie pour visualiser les relations de similitude dans les données de haute dimension consiste à utiliser un autoencodeur pour compresser vos données dans un espace de faible dimension (par exemple 32 dimensions), puis utiliser t-SNE pour mapper les données compressées sur un plan 2D .


[1] https://blog.keras.io/building-autoencoders-in-keras.html

moh
la source
0

Autoencoder est conçu pour conserver les données précédentes dans un sens à 2 normes, ce qui peut être considéré comme préservant l'énergie cinétique des données, si les données sont la vitesse.

Alors que t-SNE, utilise la divergence KL qui n'est pas symétrique, cela conduira à t-SNE se concentrer davantage sur la structure locale, tandis que l'autoencodeur a tendance à garder l'erreur L2 globale petite, ce qui est dans un sens global.

Intelligence artificielle
la source