Visualizzazione di dati ad alta dimensione


11

Ho dei campioni di due classi che sono vettori nello spazio ad alta dimensione e voglio tracciarli in 2D o 3D.

Conosco le tecniche di riduzione della dimensionalità, ma ho bisogno di uno strumento davvero semplice e facile da usare (in matlab, python o .exe preconfigurato).

Inoltre mi chiedo se la rappresentazione in 2D sarà "significativa"? (Ad esempio come due classi si intersecano o possono essere separabili).

Risposte:


8

Puoi provare tSNE . È piuttosto semplice da usare. Funziona con Octave, oltre a Matlab e Python. Dai un'occhiata alla guida per ottenere una prima trama in un minuto.


10

Uno strumento predefinito per la visualizzazione di dati ad alta dimensione è ggobi . Ti consente di colorare i punti per rappresentare i gruppi e quindi ha alcune opzioni per ridurre le quote alte a una rappresentazione bidimensionale. Uno strumento particolarmente utile è il grand tour 2D che fondamentalmente ruota il cloud di dati in più dimensioni e ti mostra un'animazione della proiezione 2D della rotazione. Puoi rallentare o mettere in pausa la rotazione quando vedi schemi interessanti.


Uno strumento davvero ottimo, che funziona anche con R.
Yves


2

L'approccio classico sarebbe quello di utilizzare PCA ( Principal Component Analysis ) al fine di eseguire una riduzione dimensionale lineare. In sostanza, questo proietta i tuoi dati su uno spazio di dimensione inferiore (nel caso 2D questo è semplicemente un piano) preservando il più possibile la varianza dei dati.

L'esecuzione di PCA di solito comporta l'esecuzione di un singolo comando nella maggior parte dei linguaggi di programmazione, quindi è molto semplice.

Dovresti ricordare che è possibile che i tuoi dati non possano essere rappresentati accuratamente in 2 o 3 dimensioni. PCA ti fornirà automaticamente una stima quantitativa di questo: ti dirà quale percentuale della varianza viene catturata dalla rappresentazione dimensionale bassa risultante. Questo ti darà la sensazione di quante informazioni perdi guardando questa visualizzazione semplificata.




1

Oltre al suggerimento di @ juampa, dovresti anche provare NeRV (Neighbor Retrieval Visualizer), che " è un approccio basato sul recupero delle informazioni di principio alla riduzione della dimensionalità non lineare ", e SNE / t-SNE possono essere visti come casi speciali di NeRV. Il punto principale di NeRV è minimizzare un compromesso tra il richiamo e la precisione tra lo spazio originale e il display. NeRV è fornito come uno strumento da riga di comando scritto in C ++.

Un'immagine dimostrativa dal loro sito Web: il risultato a sinistra enfatizza maggiormente il richiamo (meno "mancati"), mentre quello a destra enfatizza maggiormente la precisione (meno "vicini falsi").

inserisci qui la descrizione dell'immagine


1

Se non hai obiezioni al software commerciale, puoi provare il software VisuMap che implementa dozzine di algoritmi di mappatura lineare e non lineare per dati ad alta dimensione, inclusi metodi come PCA, LDA, SMACOF, tSNE, CCA, Sammon, Kohonen Map, ecc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.