Machine Learning
t-SNE
How do you flatten a cloud of points without losing who sits next to whom? Tie every point to its neighbours with threads, throw them all on a page at random, and let the threads pull while every point pushes the others away. What settles is the t-SNE map.
threads: who was near whompull of the threadspush from every other point
Hover a point to see its neighbours · drag the 3D cloud to turn it
Neighbours kept on the map—
—
Chapter
Data
few, localmany, global
Now
iteration—
mismatch KL(P ‖ Q)—
bubble sizes σ—
What to observe
- In chapter 2 the bubbles are not the same size: each grows until it holds the same number of neighbours, so it stays small in a tight crowd and gets big in a loose one.
- Straight after the random throw almost no neighbour is kept. Watch the number under the stage climb as the threads pull.
- The loose cluster comes out the same size as the tight ones, and the gaps between clusters are whatever the push left them. Only who is next to whom is kept.
- Two rings linked like a chain cannot lie flat without crossing, but each ring is still a loop of neighbours: the map draws two separate circles.
- With a perplexity of 3 every point only cares about its two or three closest friends, and the map falls apart into many small crumbs.
Shortcuts:space run/pause · r reset · f fullscreen