Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes

CIsomap Class Reference

Detailed Description

the class Isomap used to preprocess data using K-Isomap algorithm as described in

Silva, V. D., & Tenenbaum, J. B. (2003). Global versus local methods in nonlinear dimensionality reduction. Advances in Neural Information Processing Systems 15, 15(Figure 2), 721-728. MIT Press. Retrieved from

Shortest paths are being computed with Dijkstra's algorithm with heap in parallel. Due to sparsity of the kNN graph Fibonacci Heap with amortized O(1) Extract-Min operation time complexity is used.

It is possible to apply preprocessor to specified distance using apply_to_distance.

Definition at line 45 of file Isomap.h.

Inheritance diagram for CIsomap:
Inheritance graph

List of all members.

Public Member Functions

 CIsomap ()
virtual ~CIsomap ()
const char * get_name () const
void set_k (int32_t k)
int32_t get_k () const

Protected Member Functions

virtual void init ()
virtual SGMatrix< float64_tprocess_distance_matrix (SGMatrix< float64_t > distance_matrix)
SGMatrix< float64_tisomap_distance (SGMatrix< float64_t > D_matrix)

Static Protected Member Functions

static void * run_dijkstra_thread (void *p)

Protected Attributes

int32_t m_k

Constructor & Destructor Documentation

CIsomap (  ) 

Definition at line 56 of file Isomap.cpp.

~CIsomap (  )  [virtual]

Definition at line 68 of file Isomap.cpp.

Member Function Documentation

int32_t get_k (  )  const

getter for k parameter

k value

Definition at line 78 of file Isomap.cpp.

const char * get_name (  )  const [virtual]

get name

Reimplemented from CMultidimensionalScaling.

Definition at line 83 of file Isomap.cpp.

void init (  )  [protected, virtual]


default init

Reimplemented from CMultidimensionalScaling.

Definition at line 63 of file Isomap.cpp.

SGMatrix< float64_t > isomap_distance ( SGMatrix< float64_t D_matrix  )  [protected]

approximate geodesic distance with shortest path in kNN graph

D_matrix distance matrix (deleted on exit)
approximate geodesic distance matrix

Definition at line 93 of file Isomap.cpp.

SGMatrix< float64_t > process_distance_matrix ( SGMatrix< float64_t distance_matrix  )  [protected, virtual]

process distance matrix (redefined in isomap, for mds does nothing)

distance_matrix distance matrix
processed distance matrix

Reimplemented from CMultidimensionalScaling.

Definition at line 88 of file Isomap.cpp.

void * run_dijkstra_thread ( void *  p  )  [static, protected]


run dijkstra thread

p thread params

Definition at line 211 of file Isomap.cpp.

void set_k ( int32_t  k  ) 

setter for k parameter

k value

Definition at line 72 of file Isomap.cpp.

Member Data Documentation

int32_t m_k [protected]


k, number of neighbors for K-Isomap

Definition at line 85 of file Isomap.h.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation