the class LocalTangentSpaceAlignment used to preprocess data using Local Tangent Space Alignment (LTSA) algorithm as described in:
Zhang, Z., & Zha, H. (2002). Principal Manifolds and Nonlinear Dimension Reduction via Local Tangent Space Alignment. Journal of Shanghai University English Edition, 8(4), 406-424. SIAM. Retrieved from http://arxiv.org/abs/cs/0212008
The stated eigenproblem is solved in the same way as CLocallyLinearEmbedding (LAPACK or ARPACK if available).
The local tangent space alignment step is parallel. Neighborhood determination is parallel as in CLocallyLinearEmbedding.
This algorithm is pretty stable for variations of k parameter value but be sure it is set with a consistent value (at least 3-5) for reasonable results.
Definition at line 45 of file LocalTangentSpaceAlignment.h.
Public Member Functions | |
CLocalTangentSpaceAlignment () | |
virtual | ~CLocalTangentSpaceAlignment () |
virtual bool | init (CFeatures *features) |
virtual void | cleanup () |
virtual SGMatrix< float64_t > | apply_to_feature_matrix (CFeatures *features) |
virtual SGVector< float64_t > | apply_to_feature_vector (SGVector< float64_t > vector) |
virtual const char * | get_name () const |
virtual EPreprocessorType | get_type () const |
Static Protected Member Functions | |
static void * | run_ltsa_thread (void *p) |
constructor
Definition at line 68 of file LocalTangentSpaceAlignment.cpp.
~CLocalTangentSpaceAlignment | ( | ) | [virtual] |
destructor
Definition at line 73 of file LocalTangentSpaceAlignment.cpp.
apply preprocessor to feature matrix
features |
Reimplemented from CLocallyLinearEmbedding.
Definition at line 86 of file LocalTangentSpaceAlignment.cpp.
apply preprocessor to feature vector, not supported
vector |
Reimplemented from CLocallyLinearEmbedding.
Definition at line 211 of file LocalTangentSpaceAlignment.cpp.
void cleanup | ( | ) | [virtual] |
cleanup
Reimplemented from CLocallyLinearEmbedding.
Definition at line 82 of file LocalTangentSpaceAlignment.cpp.
virtual const char* get_name | ( | void | ) | const [virtual] |
get name
Reimplemented from CLocallyLinearEmbedding.
Definition at line 77 of file LocalTangentSpaceAlignment.h.
virtual EPreprocessorType get_type | ( | ) | const [virtual] |
get type
Reimplemented from CLocallyLinearEmbedding.
Definition at line 82 of file LocalTangentSpaceAlignment.h.
bool init | ( | CFeatures * | features | ) | [virtual] |
init
features |
Reimplemented from CLocallyLinearEmbedding.
Definition at line 77 of file LocalTangentSpaceAlignment.cpp.
void * run_ltsa_thread | ( | void * | p | ) | [static, protected] |
run ltsa thread
p | thread params |
Definition at line 217 of file LocalTangentSpaceAlignment.cpp.