tensorflow / tensorflow/tensorboard
Embedding Projector: Updating projection params is inconsistent (t-SNE/UMAP)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 7.2k
- Forks
- 1.7k
- Avg merge
- 4d 22h
- Merged PRs (30d)
- 1
Description
Issue description
In general projection parameter updates are inconsistent especially for t-SNE/UMAP
2D/3D mode
2D/3D mode in t-SNE/UMAP simply makes the scatterplot a 2D/3D view. This is inaccurate and the projection need to be rerun. Usually the projection starts at a 3D state (and forced to run) and we store the z-coordinate of the point when the projection is run initially.
Toggling to 2D mode and rerunning the projection will just replace the x, y coordinates while leaving z-coordinate stale. If we toggle back to 3D (without restarting projection) we will simply use z coordinate from the initial run (3D) while using x, y coordinates from the second run (2D) which is undesirable.
Other params that requires reruns
number of neighbors param (UMAP)
perplexity, learning rate (t-SNE)
tweaking the slider doesn't do anything without stopping the projection (t-SNE only) and rerun (t-SNE/UMAP)
t-SNE Supervise params
(nit) Supervise With is in the Data panel when it only applies to t-SNE and should be moved to Projection panel IMO
supervise by/supervise factor for t-SNE will take immediately in the next iteration so no modification is needed
Proposed Fix
In general t-SNE is faster to restart than UMAP, I propose affected t-SNE projection be restarted when affected params are modified. For UMAP perhaps showing a message asking the user to click on rerun is the best course of action.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by tracing the Embedding Projector controls for 2D/3D mode, UMAP neighbors, and t-SNE perplexity and learning rate, then compare rerun behavior with the proposed t-SNE restart and UMAP rerun guidance. Done means affected parameter changes no longer mix stale coordinates and the t-SNE supervision control is placed appropriately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- data-visualization, frontend
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100