  There has been an intense recent activity in embedding of very high
dimensional and nonlinear data structures, much of it in the data science and
machine learning literature. We survey this activity in four parts. In the
first part we cover nonlinear methods such as principal curves,
multidimensional scaling, local linear methods, ISOMAP, graph based methods and
diffusion mapping, kernel based methods and random projections. The second part
is concerned with topological embedding methods, in particular mapping
topological properties into persistence diagrams and the Mapper algorithm.
Another type of data sets with a tremendous growth is very high-dimensional
network data. The task considered in part three is how to embed such data in a
vector space of moderate dimension to make the data amenable to traditional
techniques such as cluster and classification techniques. Arguably this is the
part where the contrast between algorithmic machine learning methods and
statistical modeling, the so-called stochastic block modeling, is at its
greatest. In the paper, we discuss the pros and cons for the two approaches.
The final part of the survey deals with embedding in $\mathbb{R}^ 2$, i.e.
visualization. Three methods are presented: $t$-SNE, UMAP and LargeVis based on
methods in parts one, two and three, respectively. The methods are illustrated
and compared on two simulated data sets; one consisting of a triplet of noisy
Ranunculoid curves, and one consisting of networks of increasing complexity
generated with stochastic block models and with two types of nodes.
