Disclaimer: ho solo conoscenze tangenziali sull'argomento, ma dato che nessun altro ha risposto, ci proverò
La distanza è importante
Qualsiasi tecnica di riduzione della dimensionalità basata sulle distanze (tSNE, UMAP, MDS, PCoA e possibilmente altri) è valida solo quanto la metrica della distanza utilizzata. Come sottolineato correttamente da @amoeba, non ci può essere una soluzione unica per tutti, è necessario disporre di una metrica della distanza che catturi ciò che ritieni importante nei dati, ovvero che le righe che considereresti simili hanno una piccola distanza e le righe che vorresti considerare diverso avere una grande distanza.
Come si sceglie una buona metrica della distanza? Prima di tutto, lasciami fare un piccolo diversivo:
Ordinazione
Ben prima dei giorni di gloria dell'apprendimento automatico moderno, gli ecologisti della comunità (e molto probabilmente altri) hanno cercato di fare delle belle trame per l'analisi esplorativa di dati multidimensionali. Chiamano l' ordinazione del processo ed è una parola chiave utile da cercare nella letteratura ecologica che risale almeno agli anni '70 e continua ancora oggi.
L'importante è che gli ecologi dispongano di set di dati molto diversi e si occupino di miscele di caratteristiche binarie, intere e con valori reali (ad es. Presenza / assenza di specie, numero di campioni osservati, pH, temperatura). Hanno trascorso molto tempo a pensare a distanze e trasformazioni per far funzionare bene le ordinazioni. Non capisco molto bene il campo, ma ad esempio la recensione di Legendre e De Cáceres Beta sulla diversità come varianza dei dati della comunità: i coefficienti di dissimilarità e il partizionamento mostrano un numero schiacciante di possibili distanze che potresti voler controllare.
Ridimensionamento multidimensionale
Lo strumento per l'ordinazione è il ridimensionamento multidimensionale (MDS), in particolare la variante non metrica (NMDS) che vi incoraggio a provare oltre a t-SNE. Non conosco il mondo Python, ma l'implementazione di R in metaMDS
funzione del vegan
pacchetto fa molti trucchi per te (ad es. Eseguire più corse fino a quando non ne trova due simili).
Questo è stato contestato, vedere i commenti: La parte bella di MDS è che proietta anche le funzionalità (colonne), in modo da poter vedere quali funzioni guidano la riduzione della dimensionalità. Questo ti aiuta a interpretare i tuoi dati.
Tieni presente che t-SNE è stato criticato come uno strumento per derivare la comprensione, vedi ad esempio questa esplorazione delle sue insidie : ho sentito che UMAP risolve alcuni dei problemi, ma non ho esperienza con UMAP. Inoltre, non dubito che parte del motivo per cui gli ecologisti usano NMDS sia la cultura e l'inerzia, forse UMAP o t-SNE sono effettivamente migliori. Onestamente non lo so.
Stendere la tua distanza
Se comprendi la struttura dei tuoi dati, le distanze e le trasformazioni già pronte potrebbero non essere le migliori per te e potresti voler costruire una metrica della distanza personalizzata. Anche se non so cosa rappresentino i tuoi dati, potrebbe essere sensato calcolare la distanza separatamente per le variabili con valore reale (ad esempio usando la distanza euclidea se questo ha senso) e per le variabili binarie e aggiungerle. Le distanze comuni per i dati binari sono ad esempio la distanza di Jaccard o la distanza del coseno . Potrebbe essere necessario pensare ad un coefficiente moltiplicativo per le distanze poiché Jaccard e Coseno hanno entrambi valori in indipendentemente dal numero di elementi mentre l'entità della distanza euclidea riflette il numero di elementi.[0,1]
Un avvertimento
Ogni volta che dovresti tenere a mente che dato che hai così tante manopole da sintonizzare, puoi facilmente cadere nella trappola dell'accordatura fino a quando non vedi ciò che volevi vedere. Questo è difficile da evitare completamente nell'analisi esplorativa, ma dovresti essere cauto.