Vespucci  1.0.0
dimensionreduction.h File Reference
#include <mlpack/core.hpp>
#include "Global/libvespucci.h"

Go to the source code of this file.


 A namespace for "global" functions, including math functions.
 A namespace for math functions relating to linear least squares regression.
 A namespace for math functions relating to dimension reduction.


VESPUCCI_EXPORT bool Vespucci::Math::DimensionReduction::plsregress (arma::mat X, arma::mat Y, int components, arma::mat &X_loadings, arma::mat &Y_loadings, arma::mat &X_scores, arma::mat &Y_scores, arma::mat &coefficients, arma::mat &percent_variance, arma::mat &fitted)
 Vespucci::MathDimensionReduction::plsregress PLS Regression Using SIMPLS algorithm. This is essentially a line-for-line rewrite of plsregress from the Octave statistics package. Copyright (C) 2012 Fernando Damian Nieuwveldt This is an implementation of the SIMPLS algorithm: Reference: SIMPLS: An alternative approach to partial least squares regression. Chemometrics and Intelligent Laboratory Systems (1993) More...
VESPUCCI_EXPORT bool Vespucci::Math::DimensionReduction::VCA (const arma::mat &R, arma::uword p, arma::uvec &indices, arma::mat &endmember_spectra, arma::mat &projected_data, arma::mat &fractional_abundances)
 Vespucci::Math::DimensionReduction::VCA Vertex Component Analysis. More...
VESPUCCI_EXPORT double Vespucci::Math::DimensionReduction::estimate_snr (const arma::mat &R, arma::vec r_m, arma::mat x)
 Vespucci::Math Estimates Signal-to-Noise ratio. [Nascimento2005]. More...
VESPUCCI_EXPORT size_t Vespucci::Math::DimensionReduction::HySime (const arma::mat &y, const arma::mat &n, arma::mat &Rn, arma::mat &Ek)
 Vespucci::Math::DimensionReduction::HySime. More...
VESPUCCI_EXPORT size_t Vespucci::Math::DimensionReduction::HySime (const arma::mat &y, arma::mat &subspace)
VESPUCCI_EXPORT void Vespucci::Math::DimensionReduction::EstimateAdditiveNoise (arma::mat &noise, arma::mat &noise_correlation, const arma::mat &sample)
 Vespucci::Math::DimensionReduction::EstimateAdditiveNoise. More...
VESPUCCI_EXPORT bool Vespucci::Math::DimensionReduction::svds (const arma::mat &X, arma::uword k, arma::mat &U, arma::vec &s, arma::mat &V)
 Vespucci::Math::DimensionReduction::svds Finds a few largest singular values of the arma::matrix X. This is based on the Matlab/Octave function svds(), a truncated singular value decomposition. This is designed to only take the kinds of inputs Vespucci will need (It only works on arma::mat types, and only returns the k largest singular values (none of that sigma business). U and V tolerances are not defined currently due to difficulties with Armadillo's find() method A sparse arma::matrix [0 X; X.t() 0] is formed. The eigenvalues of this arma::matrix are then found using arma::eigs_sym, a wrapper for ARPACK. If X is square, it can be "reconstructed" using X = U*diamat(s)*V.t(). This "reconstruction" will have lower noise. More...