# 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 local tangent space alignment results, and provides a set of methods to access its properties.

`ManifoldLearning.LTSA`

— Type`LTSA{NN <: AbstractNearestNeighbors, T <: Real} <: AbstractDimensionalityReduction`

The `LTSA`

type represents a local tangent space alignment model constructed for `T`

type data with a help of the `NN`

nearest neighbor algorithm.

`StatsBase.fit`

— Method`fit(LTSA, data; k=12, maxoutdim=2, nntype=BruteForce)`

Fit a local tangent space alignment 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(LTSA, rand(3,100)) # construct LTSA model
R = transform(M) # perform dimensionality reduction
```

`MultivariateStats.transform`

— Method`transform(R::LTSA)`

Transforms the data fitted to the local tangent space alignment model `R`

into a reduced space representation.

## References

- 1Zhang, 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