This is an introductory talk on dimensionality reduction including an overview of the methods and a coding demonstration session using Python. No prior knowledge on dimension reduction or machine learning is needed, however, we do assume some elementary understanding of linear algebra and programming.
The slides and demo notebooks are available in this repo and will be updated through the course. The notebooks can be ran either locally or online using Google Colab.
Title | Google Colab | Nbviewer |
---|---|---|
Demo 1: PCA & FA | ||
Demo 2: Spectral embedding & tSNE | ||
Demo 3: tSNE & UMAP |
Here are some interesting papers or tools for your reference (not required for the lecture).
Classics
- van der Maaten et al. 2008 Dimensionality Reduction: A Comparative Review
- Cunningham and Yu, 2014 Dimensionality reduction for large-scale neural recordings
- Coifman and Lafon, 2006 Diffusion maps
- van der Maaten and Hinton, 2008 Visualizing Data using t-SNE
- McInnes et al. 2018 UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction
Some reviews
- Ahlheim and Love, 2018 Estimating the functional dimensionality of neural representations
- Goddard et al. 2018 Interpreting the dimensions of neural feature representations revealed by dimensionality reduction
- Bo et al. 2019 A survey on Laplacian eigenmaps based manifold learning methods
- Williamson et al. 2019 Bridging large-scale neuronal recordings and large-scale network models using dimensionality reduction
- Kobak and Berens, 2019 The art of using t-SNE for single-cell transcriptomics
Recent updates
- Sainburg et al. 2020 Parametric UMAP embeddings for representation and semi-supervised learning
- Kobak and Linderman, 2021 Initialization is critical for preserving global data structure in both t-SNE and UMAP
- Hurwitz et al. 2021 Building population models for large-scale neural recordings: opportunities and pitfalls
- Humphries 2021 Strong and weak principles of neural dimension reduction
- Grace Lindsay's twitter thread on "dimensionality reduction designed for/by neuroscientists"
Other interesting articles
- Wattenberg et al. 2016 How to Use t-SNE Effectively
- Heusser et al. 2017 HyperTools: A Python toolbox for visualizing and manipulating high-dimensional data
- Nummenmaa et al. 2018 Maps of subjective feelings
- Li et al. 2020 Visualizing Neural Networks with the Grand Tour
- Baron and Menard, 2020 Extracting the main trend in a dataset: the Sequencer algorithm
- Deep Scatterplots
- Li and Scheidegger Toward Comparing DNNs with UMAP Tour
- Christopher Olah's blog