“En statistisk teknikk kalt T-distribuert stokastisk nabo som innebærer hvert datapunkt på et to- eller tredimensjonalt kart for å visualisere høydimensjonale data. Denne operasjonen utføres på samme måte av hovedkomponentanalyse (PCA) -metoder, som også brukes til å projisere for å senke dimensjoner fra høydimensjonal. Denne artikkelen vil diskutere T-SNE, hvordan den skiller seg fra PCA, og hvordan den fungerer i Sklearn.”
Hva er dimensjonalitetsreduksjon?
Dimensjonalitetsreduksjon koder for multidimensjonale (n-dimensjoner) data med rikelig funksjoner i 2 eller 3 dimensjoner. Mange enhetsfunksjoner som må kategoriseres brukes i klassifiseringsproblemer. Datavisualiseringstrening ville være mer komplisert, og lagringskrav vil øke ettersom flere funksjoner ble brukt. Disse egenskapene er ofte koblet til. Som et resultat kan antall funksjoner skaleres tilbake. Antall funksjoner kan senkes hvis det viser seg at de tre brukte funksjonene er tilkoblet. Hvis bare en funksjon er nødvendig, kan dataene som er spredt over 3D -plassen projiseres til en linje for å produsere 1D -data eller på et 2D -plan hvis to funksjoner er nødvendig.
Hva er T-SNE?
Høydimensjonale data blir projisert i lavere dimensjoner ved bruk av den uten tilsynsmaskinlæringsmetoden kjent som T-distribuert stokastisk naboinnlegging (T-SNE), opprettet i 2008 av Laurens van der Maaten og Geoffery Hinton. Det er mest ansatt for datautforskning og høydimensjonal datavisualisering. T-SNE hjelper deg med å forstå organisering av data i et høyt dimensjonalt rom.
Hvordan fungerer T-SNE?
Sannsynlighetsfordelingen av naboer rundt hvert punkt er modellert ved hjelp av T-SNE-algoritmen. Gruppen av punkter som er nærmest hvert punkt i denne sammenhengen blir referert til som naboene. Modellen for dette i det originale, høydimensjonale rommet er en Gaussisk distribusjon.
En T-distribusjon brukes til å simulere dette i det 2-dimensjonale utgangsrommet. Målet med denne teknikken er å finne en kartlegging på 2-D-rommet som minimerer forskjellene mellom disse to distribusjonenes samlede poeng. Den primære faktoren som påvirker beslaget er kjent som forvirring. Antallet nærmeste naboer som vurderes mens de matcher de originale og monterte distribusjonene for hvert punkt, tilsvarer generelt kompleksiteten.
Hvordan er PCA forskjellig fra T-SNE
PCA | t-sne |
Det er en lineær teknikk for dimensjonsreduksjon. | Det er en ikke-lineær teknikk for dimensjonsreduksjon. |
Det gjør et forsøk på å opprettholde dataens overordnede struktur. | Det gjør et forsøk på å opprettholde dataens lokale struktur |
Ingen hyperparametere er involvert | Dette innebærer hyperparametere som forvirring, læringsfrekvens og antall trinn. |
Håndterer ikke outliers godt | Den kan håndtere outliers. |
Implementering av T-SNE i Sklearn
# Importere biblioteker
Importer numpy som NP
Fra Sklearn.manifold import tsne
# Opprette datasettet
X = np.Array ([[0, 0, 0, 1], [0, 1, 1, 1], [1, 0, 1, 0], [1, 1, 1, 0]])
# projisere dataene for å senke dimensjoner
X_projisert = tsne (n_components = 2, learning_rate = 'auto', init = 'tilfeldig', perplexity = 3).fit_transform (x)
trykk ("Ny form for dataene er", X_Projisert.form)
Produksjon
Den nye formen på dataene er (4, 2)
Konklusjon
Vi lærte om T-SNE-algoritmen, som brukes til å konvertere høydimensjonale data til lavere og til slutt visualisere dem enkelt. Vi så også hvorfor vi trenger dimensjonalitetsreduksjonsalgoritmer og hvordan T-SNE er forskjellig fra sine alternative algoritmer: PCA. Vi implementerte også T-SNE i Sklearn ved hjelp av “Manifold” -modulen og projiserte 4-dimensjonale data i to dimensjoner.