Comment déterminer les paramètres du t-SNE pour réduire les dimensions?

11

Je suis très nouveau dans les intégrations de mots. Je veux visualiser à quoi ressemblent les documents après leur apprentissage. J'ai lu que t-SNE est l'approche pour le faire. J'ai 100K documents avec 250 dimensions comme taille de l'incorporation. Plusieurs packages sont également disponibles.

Cependant, pour t-SNE, je ne sais pas combien d'itérations ou la valeur d'alpha ou la valeur de perpexilité je dois garder pour mieux apprendre.

S'agit-il d'hyper-paramètres ou peuvent-ils être déterminés par certains attributs?

silent_dev
la source

Réponses:

12

Je recommande fortement l'article Comment utiliser efficacement t-SNE . Il contient de superbes graphiques animés du processus d'ajustement de tsne, et a été la première source qui m'a en fait donné une compréhension intuitive de ce que fait tsne.

À un niveau élevé, la perplexité est le paramètre qui compte. C'est une bonne idée d'essayer la perplexité de 5, 30 et 50 et de regarder les résultats.

Mais sérieusement, lisez Comment utiliser efficacement le t-SNE. Cela rendra votre utilisation de TSNE plus efficace.

Pour les packages, utilisez Rtsne dans R ou sklearn.manifold.TSNE en python

Zach
la source
2

Je citerai la FAQ du site Web de t-SNE . D'abord pour la perplexité:

Comment dois-je régler la perplexité dans t-SNE?

Les performances du t-SNE sont assez robustes sous différents réglages de la perplexité. La valeur la plus appropriée dépend de la densité de vos données. En gros, on pourrait dire qu'un ensemble de données plus grand / plus dense nécessite une perplexité plus grande. Les valeurs typiques de la perplexité varient entre 5 et 50.

Pour tous les autres paremètres, je considérerais de lire ceci:

Comment puis-je évaluer la qualité des visualisations construites par t-SNE?

De préférence, regardez-les! Notez que le t-SNE ne conserve pas les distances mais les probabilités, il est donc inutile de mesurer certaines erreurs entre les distances euclidiennes en D élevé et en D faible. Cependant, si vous utilisez les mêmes données et la même perplexité, vous pouvez comparer les divergences Kullback-Leibler signalées par t-SNE. Il est parfaitement possible d'exécuter t-SNE dix fois et de sélectionner la solution avec la divergence KL la plus faible.

En d'autres termes, cela signifie: regardez l'intrigue, si la visualisation est bonne, ne modifiez pas les paramètres. Vous pouvez également choisir la course avec la divergence KL la plus faible pour chaque perplexité fixe.

Daniel Falbel
la source