Isomap

Isomap is a method for low-dimensional embedding. Isomap is used for computing a quasi-isometric, low-dimensional embedding of a set of high-dimensional data points[1].

This package defines a Isomap type to represent a Isomap calculation results, and provides a set of methods to access its properties.

ManifoldLearning.IsomapType
Isomap{NN <: AbstractNearestNeighbors} <: AbstractDimensionalityReduction

The Isomap type represents an isometric mapping model constructed with a help of the NN nearest neighbor algorithm.

source
StatsAPI.fitMethod
fit(Isomap, data; k=12, maxoutdim=2, nntype=BruteForce)

Fit an isometric mapping model to data.

Arguments

  • data: a matrix of observations. Each column of data is an observation.

Keyword arguments

  • k: a number of nearest neighbors for construction of local subspace representation
  • maxoutdim: a dimension of the reduced space.
  • nntype: a nearest neighbor construction class (derived from AbstractNearestNeighbors)

Examples

M = fit(Isomap, rand(3,100)) # construct Isomap model
R = predict(M)               # perform dimensionality reduction
source
StatsAPI.predictMethod
predict(R::Isomap)

Transforms the data fitted to the Isomap model R into a reduced space representation.

source
StatsAPI.predictMethod
predict(R::Isomap, X::AbstractVecOrMat)

Returns a transformed out-of-sample data X given the Isomap model R into a reduced space representation.

source

References

  • 1Tenenbaum, J. B., de Silva, V. and Langford, J. C. "A Global Geometric Framework for Nonlinear Dimensionality Reduction". Science 290 (5500): 2319-2323, 22 December 2000.