Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Németh Kristóf

Döntéstámogató rendszerek
TSNE eljárás

A TSNE (t-distributed stochastic neighbor embedding) eljárás egy többdimenziós adathalmazt


hívatott általunk illusztrálható 2 vagy 3 dimenzióba leképezni úgy, hogy a hasonló minták
elkülönülve csoportosuljanak. Ezt a vizualizációs eljárást alkalmazzák a bioinformatikában,
rákkutatásban, zene analízisben, jelfeldolgozásban.
Az eljárás lényegét egy 2 dimenziós adathalmazon egyszerű szemléltetni:

Sorra vesszük az összes adatpontot, egy normális eloszlás közepébe helyezzük, majd vesszük
az euklideszi távolságot a közte és a többi pont között. Ez alapján képet kapunk arról, hogy
mekkora valószínűséggel választaná 2 adatpont „szomszédnak” egymást.
Normalizáljuk ezeket az értékeket, az összes pont valószínűsége alapján:

Az értékek meghatározása után, véletlenszerűen elhelyezzük a pontokat az alacsonyabb


dimenzióba, esetünkben egy egyenes mentén.
Most ezen leképzett pontok között keressük a hasonlóságot az alábbiak szerint:

Ez a fentihez hasonló képlet, viszont itt normál eloszlás helyett T-eloszlást alkalmazunk.
Ezek után a két fenti eloszlás Kullback–Leibler relatív entrópiáját minimalizáljuk, ez
határozza meg az pontok pozícióját.

Dióhéjban a Kullback–Leibler divergencia képlet megadja, hogy P és Q valószínűségi


eloszlása mennyire különbözik egymástól.
Összességében, az eljárás végén klaszereket látunk, melyek tulajdonságát viszont nagyban
befolyásolják az általunk választott paraméterek. Akár téves klaszterek is megjelenhetnek.
Példaképp az Rstudio tsne package argumentumai:
tsne(X, initial_config = NULL, k = 2, initial_dims = 30, perplexity = 30, max_iter = 1000, min_cost = 0,
epoch_callback = NULL, whiten = TRUE, epoch=100)

A paraméterek hatását szemlélteti az alábbi honlap:


https://distill.pub/2016/misread-tsne/

Az egyik hangolható argumentum a perplexity, ajánlott értéke 5-50 szokott lenni. Megadja, hogy hány
közeli szomszédja legyen egy adatpontnak. Továbbá, számít a végeredmény szempontjából iterációk
száma is. És mivel az első lépésben random helyezzük el a pontokat, ezért a folyamat más eredményt
adhat ugyan olyan paraméterek mellett is.

Felhasznált irodalom (2020.01.02.):


https://cran.r-project.org/web/packages/tsne/tsne.pdf

https://towardsdatascience.com/t-sne-python-example-1ded9953f26

https://distill.pub/2016/misread-tsne/

https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding

https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence

You might also like