reconstrue / single_cell

Single cell analysis tools built to run on Jupyter, especially Colab
http://reconstrue.com
Apache License 2.0
1 stars 0 forks source link

tSNE tuning with TF.js #86

Open JohnTigue opened 4 years ago

JohnTigue commented 4 years ago

Visualizing Autoencoders with Tensorflow.js: This is nice code showing off Tensorflow enabling Python models to then be made more interactive via TF.js.

https://www.flowjo.com/blog/post/whats-tea-sne

In 2018, Dmitry Kobak and Phillip Berens uploaded a pre-print manuscript exploring how to incorporate global dataset structure into a t-SNE embedding (along with some other innovations) [9]. They also include a protocol for the application of t-SNE to single-cell RNA-Seq datasets.

That same year, Anna Belkina and her collaborators (including yours truly) deposited the first version of a manuscript on optimizing the parameters of the t-SNE algorithm [10]. They performed empirical analysis of a range of cytometry datasets and determined that (1) the choice of learning rate is critical to map quality for all datasets, (2) typical default parameters that were inherited by most cytometry t-SNE implementations from original 2014 van der Maaten publication are poorly suited for large datasets that are common in cytometry applications, and (3) the duration of the early exaggeration phase of t-SNE has a profound effect on embedding quality, and should be controlled by monitoring the rate of change of Kullback-Leibler divergence. They proposed a cytometry-friendly, optimized version of the t-SNE algorithm called opt-SNE, which implements their recommendations. Notably, opt-SNE is able to produce high-quality embeddings for large datasets (>107 data points) using five to ten times fewer iterations of gradient descent, which makes embedding such datasets feasible and worthwhile for the first time. Opt-SNE is available in FlowJo v10.6 and SeqGeq v1.6, along with an open source implementation described in the paper. This work was published in November 2019 in Nature Communications [11].