Local Tangent Space Alignment

Local tangent space alignment (LTSA) is a method for manifold learning, which can efficiently learn a nonlinear embedding into low-dimensional coordinates from high-dimensional data, and can also reconstruct high-dimensional coordinates from embedding coordinates [1].

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

Properties

Let M be an instance of LTSA, n be the number of observations, and d be the output dimension.

outdim(M)

Get the output dimension d, i.e the dimension of the subspace.

projection(M)

Get the projection matrix (of size (d, n)). Each column of the projection matrix corresponds to an observation in projected subspace.

neighbors(M)

The number of nearest neighbors used for approximating local coordinate structure.

eigvals(M)

The eigenvalues of alignment matrix.

Data Transformation

One can use the transform method to perform LTSA over a given dataset.

transform(LSTA, X; ...)

Perform LTSA over the data given in a matrix X. Each column of X is an observation.

This method returns an instance of LTSA.

Keyword arguments:

name description default
k The number of nearest neighbors for determining local coordinate structure. 12
d Output dimension. 2

Example:

using ManifoldLearning

# suppose X is a data matrix, with each observation in a column
# apply LTSA transformation to the dataset
Y = transform(LTSA, X; k = 12, d = 2)

References

[1]Zhang, Zhenyue; Hongyuan Zha. “Principal Manifolds and Nonlinear Dimension Reduction via Local Tangent Space Alignment”. SIAM Journal on Scientific Computing 26 (1): 313–338, 2004. DOI:10.1137/s1064827502419154