Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

t-distributed stochastic neighbor embedding

From Wikipedia, the free encyclopedia
Technique for dimensionality reduction
"TSNE" redirects here. For the Boston-based organization, seeThird Sector New England.
T-SNE visualisation ofword embeddings generated using 19th century literature
T-SNE embeddings ofMNIST dataset
Part of a series onStatistics
Data and information visualization
Major dimensions
Important figures
Information graphic types
Related topics

t-distributed stochastic neighbor embedding (t-SNE) is astatistical method for visualizing high-dimensional data by giving each datapoint a location in a two or three-dimensional map. It is based on Stochastic Neighbor Embedding originally developed byGeoffrey Hinton and Sam Roweis,[1] where Laurens van der Maaten and Hinton proposed thet-distributed variant.[2] It is anonlinear dimensionality reduction technique for embedding high-dimensional data for visualization in a low-dimensional space of two or three dimensions. Specifically, it models each high-dimensional object by a two- or three-dimensional point in such a way that similar objects are modeled by nearby points and dissimilar objects are modeled by distant points with high probability.

The t-SNE algorithm comprises two main stages. First, t-SNE constructs aprobability distribution over pairs of high-dimensional objects in such a way that similar objects are assigned a higher probability while dissimilar points are assigned a lower probability. Second, t-SNE defines a similar probability distribution over the points in the low-dimensional map, and it minimizes theKullback–Leibler divergence (KL divergence) between the two distributions with respect to the locations of the points in the map. While the original algorithm uses theEuclidean distance between objects as the base of its similarity metric, this can be changed as appropriate. ARiemannian variant isUMAP.

t-SNE has been used for visualization in a wide range of applications, includinggenomics,computer security research,[3]natural language processing,music analysis,[4]cancer research,[5]bioinformatics,[6] geological domain interpretation,[7][8][9] and biomedical signal processing.[10]

For a data set withn elements, t-SNE runs inO(n2) time and requiresO(n2) space.[11]

Details

[edit]

Given a set ofN{\displaystyle N} high-dimensional objectsx1,,xN{\displaystyle \mathbf {x} _{1},\dots ,\mathbf {x} _{N}}, t-SNE first computes probabilitiespij{\displaystyle p_{ij}} that are proportional to the similarity of objectsxi{\displaystyle \mathbf {x} _{i}} andxj{\displaystyle \mathbf {x} _{j}}, as follows.

Forij{\displaystyle i\neq j}, define

pji=exp(xixj2/2σi2)kiexp(xixk2/2σi2){\displaystyle p_{j\mid i}={\frac {\exp(-\lVert \mathbf {x} _{i}-\mathbf {x} _{j}\rVert ^{2}/2\sigma _{i}^{2})}{\sum _{k\neq i}\exp(-\lVert \mathbf {x} _{i}-\mathbf {x} _{k}\rVert ^{2}/2\sigma _{i}^{2})}}}

and setpii=0{\displaystyle p_{i\mid i}=0}. Note the above denominator ensuresjpji=1{\displaystyle \sum _{j}p_{j\mid i}=1} for alli{\displaystyle i}.

As van der Maaten and Hinton explained: "The similarity of datapointxj{\displaystyle x_{j}} to datapointxi{\displaystyle x_{i}} is the conditional probability,pj|i{\displaystyle p_{j|i}}, thatxi{\displaystyle x_{i}} would pickxj{\displaystyle x_{j}} as its neighbor if neighbors were picked in proportion to their probability density under a Gaussian centered atxi{\displaystyle x_{i}}."[2]

Now define

pij=pji+pij2N{\displaystyle p_{ij}={\frac {p_{j\mid i}+p_{i\mid j}}{2N}}}

This is motivated becausepi{\displaystyle p_{i}} andpj{\displaystyle p_{j}} from the N samples are estimated as 1/N, so the conditional probability can be written aspij=Npij{\displaystyle p_{i\mid j}=Np_{ij}} andpji=Npji{\displaystyle p_{j\mid i}=Np_{ji}} . Sincepij=pji{\displaystyle p_{ij}=p_{ji}}, you can obtain previous formula.

Also note thatpii=0{\displaystyle p_{ii}=0} andi,jpij=1{\displaystyle \sum _{i,j}p_{ij}=1}.

The bandwidth of theGaussian kernelsσi{\displaystyle \sigma _{i}} is set in such a way that theentropy of the conditional distribution equals a predefined entropy using thebisection method. As a result, the bandwidth is adapted to thedensity of the data: smaller values ofσi{\displaystyle \sigma _{i}} are used in denser parts of the data space. The entropy increases with theperplexity of this distributionPi{\displaystyle P_{i}}; this relation is seen as

Perp(Pi)=2H(Pi){\displaystyle Perp(P_{i})=2^{H(P_{i})}}

whereH(Pi){\displaystyle H(P_{i})} is the Shannon entropyH(Pi)=jpj|ilog2pj|i.{\displaystyle H(P_{i})=-\sum _{j}p_{j|i}\log _{2}p_{j|i}.}

The perplexity is a hand-chosen parameter of t-SNE, and as the authors state, "perplexity can be interpreted as a smooth measure of the effective number of neighbors. The performance of SNE is fairly robust to changes in the perplexity, and typical values are between 5 and 50.".[2]

Since the Gaussian kernel uses theEuclidean distancexixj{\displaystyle \lVert x_{i}-x_{j}\rVert }, it is affected by thecurse of dimensionality, and in high dimensional data when distances lose the ability to discriminate, thepij{\displaystyle p_{ij}} become too similar (asymptotically, they would converge to a constant). It has been proposed to adjust the distances with a power transform, based on theintrinsic dimension of each point, to alleviate this.[12]

t-SNE aims to learn ad{\displaystyle d}-dimensional mapy1,,yN{\displaystyle \mathbf {y} _{1},\dots ,\mathbf {y} _{N}} (withyiRd{\displaystyle \mathbf {y} _{i}\in \mathbb {R} ^{d}} andd{\displaystyle d} typically chosen as 2 or 3) that reflects the similaritiespij{\displaystyle p_{ij}} as well as possible. To this end, it measures similaritiesqij{\displaystyle q_{ij}} between two points in the mapyi{\displaystyle \mathbf {y} _{i}} andyj{\displaystyle \mathbf {y} _{j}}, using a very similar approach. Specifically, forij{\displaystyle i\neq j}, defineqij{\displaystyle q_{ij}} as

qij=(1+yiyj2)1klk(1+ykyl2)1{\displaystyle q_{ij}={\frac {(1+\lVert \mathbf {y} _{i}-\mathbf {y} _{j}\rVert ^{2})^{-1}}{\sum _{k}\sum _{l\neq k}(1+\lVert \mathbf {y} _{k}-\mathbf {y} _{l}\rVert ^{2})^{-1}}}}

and setqii=0{\displaystyle q_{ii}=0}. Herein a heavy-tailedStudent t-distribution (with one-degree of freedom, which is the same as aCauchy distribution) is used to measure similarities between low-dimensional points in order to allow dissimilar objects to be modeled far apart in the map.

The locations of the pointsyi{\displaystyle \mathbf {y} _{i}} in the map are determined by minimizing the (non-symmetric)Kullback–Leibler divergence of the distributionP{\displaystyle P} from the distributionQ{\displaystyle Q}, that is:

KL(PQ)=ijpijlogpijqij{\displaystyle \mathrm {KL} \left(P\parallel Q\right)=\sum _{i\neq j}p_{ij}\log {\frac {p_{ij}}{q_{ij}}}}

The minimization of the Kullback–Leibler divergence with respect to the pointsyi{\displaystyle \mathbf {y} _{i}} is performed usinggradient descent. The result of this optimization is a map that reflects the similarities between the high-dimensional inputs.

Output

[edit]

While t-SNE plots often seem to displayclusters, the visual clusters can be strongly influenced by the chosen parameterization (especially the perplexity) and so a good understanding of the parameters for t-SNE is needed. Such "clusters" can be shown to even appear in structured data with no clear clustering,[13] and so may be false findings. Similarly, the size of clusters produced by t-SNE is not informative, and neither is the distance between clusters.[14] Thus, interactive exploration may be needed to choose parameters and validate results.[15][16] It has been shown that t-SNE can often recover well-separated clusters, and with special parameter choices, approximates a simple form ofspectral clustering.[17]

Software

[edit]
  • A C++ implementation of Barnes-Hut is available on thegithub account of one of the original authors.
  • The R packageRtsne implements t-SNE inR.
  • ELKI contains tSNE, also with Barnes-Hut approximation
  • scikit-learn, a popular machine learning library in Python implements t-SNE with both exact solutions and the Barnes-Hut approximation.
  • Tensorboard, the visualization kit associated withTensorFlow, also implements t-SNE (online version)
  • TheJulia packageTSne implements t-SNE

References

[edit]
  1. ^Hinton, Geoffrey; Roweis, Sam (January 2002).Stochastic neighbor embedding(PDF).Neural Information Processing Systems.
  2. ^abcvan der Maaten, L.J.P.; Hinton, G.E. (Nov 2008)."Visualizing Data Using t-SNE"(PDF).Journal of Machine Learning Research.9:2579–2605.
  3. ^Gashi, I.; Stankovic, V.; Leita, C.; Thonnard, O. (2009). "An Experimental Study of Diversity with Off-the-shelf AntiVirus Engines".Proceedings of the IEEE International Symposium on Network Computing and Applications:4–11.
  4. ^Hamel, P.; Eck, D. (2010). "Learning Features from Music Audio with Deep Belief Networks".Proceedings of the International Society for Music Information Retrieval Conference:339–344.
  5. ^Jamieson, A.R.; Giger, M.L.; Drukker, K.; Lui, H.; Yuan, Y.; Bhooshan, N. (2010)."Exploring Nonlinear Feature Space Dimension Reduction and Data Representation in Breast CADx with Laplacian Eigenmaps and t-SNE".Medical Physics.37 (1):339–351.doi:10.1118/1.3267037.PMC 2807447.PMID 20175497.
  6. ^Wallach, I.; Liliean, R. (2009)."The Protein-Small-Molecule Database, A Non-Redundant Structural Resource for the Analysis of Protein-Ligand Binding".Bioinformatics.25 (5):615–620.doi:10.1093/bioinformatics/btp035.PMID 19153135.
  7. ^Balamurali, Mehala; Silversides, Katherine L.; Melkumyan, Arman (2019-04-01)."A comparison of t-SNE, SOM and SPADE for identifying material type domains in geological data".Computers & Geosciences.125:78–89.Bibcode:2019CG....125...78B.doi:10.1016/j.cageo.2019.01.011.ISSN 0098-3004.S2CID 67926902.
  8. ^Balamurali, Mehala; Melkumyan, Arman (2016)."t-SNE Based Visualisation and Clustering of Geological Domain". In Hirose, Akira; Ozawa, Seiichi; Doya, Kenji; Ikeda, Kazushi; Lee, Minho; Liu, Derong (eds.).Neural Information Processing. Lecture Notes in Computer Science. Vol. 9950. Cham: Springer International Publishing. pp. 565–572.doi:10.1007/978-3-319-46681-1_67.ISBN 978-3-319-46681-1.
  9. ^Leung, Raymond; Balamurali, Mehala; Melkumyan, Arman (2021-01-01)."Sample Truncation Strategies for Outlier Removal in Geochemical Data: The MCD Robust Distance Approach Versus t-SNE Ensemble Clustering".Mathematical Geosciences.53 (1):105–130.Bibcode:2021MatGe..53..105L.doi:10.1007/s11004-019-09839-z.ISSN 1874-8953.S2CID 208329378.
  10. ^Birjandtalab, J.; Pouyan, M. B.; Nourani, M. (2016-02-01). "Nonlinear dimension reduction for EEG-based epileptic seizure detection".2016 IEEE-EMBS International Conference on Biomedical and Health Informatics (BHI). pp. 595–598.doi:10.1109/BHI.2016.7455968.ISBN 978-1-5090-2455-1.S2CID 8074617.
  11. ^Pezzotti, Nicola (2015). "Approximated and User Steerable tSNE for Progressive Visual Analytics".arXiv:1512.01655 [cs.CV].
  12. ^Schubert, Erich; Gertz, Michael (2017-10-04).Intrinsic t-Stochastic Neighbor Embedding for Visualization and Outlier Detection. SISAP 2017 – 10th International Conference on Similarity Search and Applications. pp. 188–203.doi:10.1007/978-3-319-68474-1_13.
  13. ^"K-means clustering on the output of t-SNE".Cross Validated. Retrieved2018-04-16.
  14. ^Wattenberg, Martin; Viégas, Fernanda; Johnson, Ian (2016-10-13)."How to Use t-SNE Effectively".Distill.1 (10): e2.doi:10.23915/distill.00002.ISSN 2476-0757.
  15. ^Pezzotti, Nicola; Lelieveldt, Boudewijn P. F.; Maaten, Laurens van der; Hollt, Thomas; Eisemann, Elmar; Vilanova, Anna (2017-07-01). "Approximated and User Steerable tSNE for Progressive Visual Analytics".IEEE Transactions on Visualization and Computer Graphics.23 (7):1739–1752.arXiv:1512.01655.Bibcode:2017ITVCG..23.1739P.doi:10.1109/tvcg.2016.2570755.ISSN 1077-2626.PMID 28113434.S2CID 353336.
  16. ^Wattenberg, Martin; Viégas, Fernanda; Johnson, Ian (2016-10-13)."How to Use t-SNE Effectively".Distill.1 (10).doi:10.23915/distill.00002. Retrieved4 December 2017.
  17. ^Linderman, George C.; Steinerberger, Stefan (2017-06-08). "Clustering with t-SNE, provably".arXiv:1706.02582 [cs.LG].

External links

[edit]
Retrieved from "https://en.wikipedia.org/w/index.php?title=T-distributed_stochastic_neighbor_embedding&oldid=1320792718"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp