the class HessianLocallyLinearEmbedding used to preprocess data using Hessian Locally Linear Embedding algorithm described in
Donoho, D., & Grimes, C. (2003). Hessian eigenmaps: new tools for nonlinear dimensionality reduction. Proceedings of National Academy of Science (Vol. 100, pp. 5591-5596).
Stated eigenproblem is solved in the same way as in CLocallyLinearEmbedding (LAPACK or ARPACK if available).
The hessian estimation step is parallel and neighborhood determination too as in CLocallyLinearEmbedding.
Be sure k value is set with at least 1+[target dim]+1/2 [target_dim]*[1 + target dim], e.g. greater than 6 for target dimensionality of 2.
Definition at line 42 of file HessianLocallyLinearEmbedding.h.
Public Member Functions | |
CHessianLocallyLinearEmbedding () | |
virtual | ~CHessianLocallyLinearEmbedding () |
virtual const char * | get_name () const |
Protected Member Functions | |
virtual SGMatrix< float64_t > | construct_weight_matrix (CSimpleFeatures< float64_t > *simple_features, float64_t *W_matrix, SGMatrix< int32_t > neighborhood_matrix) |
HELPER. | |
Static Protected Member Functions | |
static void * | run_hessianestimation_thread (void *p) |
THREAD. |
constructor
Definition at line 74 of file HessianLocallyLinearEmbedding.cpp.
~CHessianLocallyLinearEmbedding | ( | ) | [virtual] |
destructor
Definition at line 79 of file HessianLocallyLinearEmbedding.cpp.
SGMatrix< float64_t > construct_weight_matrix | ( | CSimpleFeatures< float64_t > * | simple_features, | |
float64_t * | W_matrix, | |||
SGMatrix< int32_t > | neighborhood_matrix | |||
) | [protected, virtual] |
HELPER.
construct weight matrix
simple_features | features to be used | |
W_matrix | weight matrix | |
neighborhood_matrix | matrix containing neighbor idxs |
Reimplemented from CLocallyLinearEmbedding.
Definition at line 88 of file HessianLocallyLinearEmbedding.cpp.
const char * get_name | ( | ) | const [virtual] |
get name
Reimplemented from CLocallyLinearEmbedding.
Definition at line 83 of file HessianLocallyLinearEmbedding.cpp.
void * run_hessianestimation_thread | ( | void * | p | ) | [static, protected] |
THREAD.
run hessian estimation thread
p | thread params |
Definition at line 192 of file HessianLocallyLinearEmbedding.cpp.