STK++ 0.9.13
|
The project Reduct propose a set of classes for computing dimension Reduction (or feature extraction) of a data set. More...
Namespaces | |
namespace | STK::Reduct |
This namespace encloses all variables and constant specific to the Reduct project. | |
Classes | |
class | STK::ILinearReduct< Array, Weights > |
A ILinearReduct is an interface base class for reduction method using linear reduction. More... | |
class | STK::IReducer< Array, Weights > |
Interface base class for reducing methods. More... | |
class | STK::LocalVariance< Array > |
A LocalVariance is an implementation of the abstract ILinearReduct class. More... | |
class | STK::ProjectedVariance< Array > |
A ProjectedVariance is an implementation of the abstract ILinearReduct interface. More... | |
Enumerations | |
enum | STK::Reduct::TypeReduction { STK::Reduct::unknown_reduction_ =0 , STK::Reduct::localVariance_ , STK::Reduct::totalVariance_ , STK::Reduct::mds_ } |
dimension reduction we can apply to the original data set. More... | |
Functions | |
TypeReduction | STK::Reduct::stringToTypeReduction (String const &type) |
convert a String to a TypeReduction. | |
String | STK::Reduct::typeReductionToString (TypeReduction const &type) |
convert a TypeReduction to a String. | |
The project Reduct propose a set of classes for computing dimension Reduction (or feature extraction) of a data set.
Feature extraction transforms the data in the high-dimensional space to a space of fewer dimensions. The data transformation may be linear, as in principal component analysis (PCA), but many nonlinear dimensionality reduction techniques also exist.
The main linear technique for dimensionality reduction, principal component analysis, performs a linear mapping of the data to a lower dimensional space in such a way that the variance of the data in the low-dimensional representation is maximized.
If the data is non-linear it is possible to unfold the underlying support of the data set using the local variance which try to preserve the neighborhood variations of the original data set.
An alternative approach to neighborhood preservation is through the minimization of a cost function that measures differences between distances in the input and output spaces. Important examples of such techniques include classical multidimensional scaling (which is identical to PCA in somme cases), Isomap (which uses geodesic distances in the data space), diffusion maps (which uses diffusion distances in the data space), t-SNE (which minimizes the divergence between distributions over pairs of points), and curvilinear component analysis.
dimension reduction we can apply to the original data set.
Enumerator | |
---|---|
unknown_reduction_ | unknown reduction |
localVariance_ | total projected variance (pca) |
totalVariance_ | multidimensional scaling |
mds_ |
Definition at line 52 of file STK_Reduct_Util.h.
|
inline |
convert a String to a TypeReduction.
type | the String we want to convert |
type
. if the string does not match any known name, the unknown_
type is returned. Definition at line 113 of file STK_Reduct_Util.h.
References _T, STK::Reduct::localVariance_, STK::Reduct::mds_, STK::Reduct::totalVariance_, STK::toUpperString(), and STK::Reduct::unknown_reduction_.
|
inline |
convert a TypeReduction to a String.
type | the type of reduction we want to convert |
Definition at line 125 of file STK_Reduct_Util.h.
References _T, STK::Reduct::localVariance_, STK::Reduct::mds_, and STK::Reduct::totalVariance_.