"Isomap" (Machine Learning Method)
- Method for DimensionReduction, DimensionReduce, FeatureSpacePlot and FeatureSpacePlot3D.
- Reduce the dimension of data using an isometric mapping.
Details & Suboptions
- "Isomap", which stands for isometric mapping, is a nonlinear neighbor-based dimensionality reduction method. The method attempts to find a low-dimensional embedding of data via a transformation that preserves geodesic distances.
- "Isomap" is able to learn nonlinear manifolds; however, it gives poor results on boundaries, can fail if data has high-density variations, and is computationally expensive.
- The following plots show two-dimensional embeddings learned by the "Isomap" method applied to the benchmark datasets Fisher's Irises, MNIST and FashionMNIST:
- "Isomap" constructs a neighborhood graph on data points given their nearest neighbors. The geodesic distances between all pairs of points on the manifold are estimated by the shortest path in the nearest neighbors graph, , which results in the matrix of graph distances . The method attempts to find the embedding for which the Euclidean distance (shortest distance) is equal to the geodesic distance. The lower-dimensional embeddings are computed by minimizing the embedding cost: min ∑ Ni=1 [||yi-yj||- dij]2
- The method is equivalent to performing the classical "MultidimensionalScaling" on the matrix of graph distances . Consequently, the Euclidean distances in the embedding space match the graph distances: ||yi-yj||≈ dijG.
- The following suboption can be given:
"NeighborsNumber" Automatic number of neighbors k
Examplesopen allclose all
Basic Examples (1)
Create and visualize a "Swiss roll" dataset:
Train a nonlinear dimension reducer using "Isomap" on the dataset to map to two-dimensional space:
Find and visualize the data coordinates in the reduced space:
Visualize the dataset in the original space, with each point colored according to its reduced variable:
Dataset Visualization (1)
Load the Fisher Iris dataset from ExampleData:
Generate a reducer function using "Isomap" with the features of each example:
Group the examples by their species:
Reduce the dimension of the features:
Generate a dataset of different head poses from 3D geometry data with random viewpoints:
Visualize different head poses:
Reduce the dataset to a two-dimensional representation by specifying the "NeighborsNumber" in the neighborhood graph for performing the isometric mapping:
Visualize the original images in the reduced space, in which the up-down and front-side poses are disentangled: