Class LaplacianEigenmap

java.lang.Object
smile.manifold.LaplacianEigenmap

public class LaplacianEigenmap extends Object
Laplacian Eigenmaps. Using the notion of the Laplacian of the nearest neighbor adjacency graph, Laplacian Eigenmaps computes a low dimensional representation of the dataset that optimally preserves local neighborhood information in a certain sense. The representation map generated by the algorithm may be viewed as a discrete approximation to a continuous map that naturally arises from the geometry of the manifold.

The locality preserving character of the Laplacian Eigenmaps algorithm makes it relatively insensitive to outliers and noise. It is also not prone to "short-circuiting" as only the local distances are used.

See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static double[][]
    of(double[][] data, int k)
    Laplacian Eigenmaps with discrete weights.
    static double[][]
    of(double[][] data, int k, int d, double t)
    Laplacian Eigenmaps with Gaussian kernel.
    static double[][]
    of(NearestNeighborGraph nng, int d, double t)
    Laplacian Eigenmaps with Gaussian kernel.
    static <T> double[][]
    of(T[] data, Distance<T> distance, int k)
    Laplacian Eigenmaps with discrete weights.
    static <T> double[][]
    of(T[] data, Distance<T> distance, int k, int d, double t)
    Laplacian Eigenmaps with discrete weights.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LaplacianEigenmap

      public LaplacianEigenmap()
  • Method Details

    • of

      public static double[][] of(double[][] data, int k)
      Laplacian Eigenmaps with discrete weights.
      Parameters:
      data - the input data.
      k - k-nearest neighbor.
      Returns:
      the embedding coordinates.
    • of

      public static double[][] of(double[][] data, int k, int d, double t)
      Laplacian Eigenmaps with Gaussian kernel.
      Parameters:
      data - the input data.
      k - k-nearest neighbor.
      d - the dimension of the manifold.
      t - the smooth/width parameter of heat kernel exp(-||x-y||2 / t). Non-positive value means discrete weights.
      Returns:
      the embedding coordinates.
    • of

      public static <T> double[][] of(T[] data, Distance<T> distance, int k)
      Laplacian Eigenmaps with discrete weights.
      Type Parameters:
      T - the data type of points.
      Parameters:
      data - the input data.
      distance - the distance function.
      k - k-nearest neighbor.
      Returns:
      the embedding coordinates.
    • of

      public static <T> double[][] of(T[] data, Distance<T> distance, int k, int d, double t)
      Laplacian Eigenmaps with discrete weights.
      Type Parameters:
      T - the data type of points.
      Parameters:
      data - the input data.
      distance - the distance function.
      k - k-nearest neighbor.
      Returns:
      the embedding coordinates.
    • of

      public static double[][] of(NearestNeighborGraph nng, int d, double t)
      Laplacian Eigenmaps with Gaussian kernel.
      Parameters:
      nng - the k-nearest neighbor graph.
      d - the dimension of the manifold.
      t - the smooth/width parameter of heat kernel exp(-||x-y||2 / t). Non-positive value means discrete weights.
      Returns:
      the embedding coordinates.