mlpack
master

An implementation of RADICAL, an algorithm for independent component analysis (ICA). More...
Public Member Functions  
Radical (const double noiseStdDev=0.175, const size_t replicates=30, const size_t angles=150, const size_t sweeps=0, const size_t m=0)  
Set the parameters to RADICAL. More...  
size_t  Angles () const 
Get the number of angles considered during bruteforce search. More...  
size_t &  Angles () 
Modify the number of angles considered during bruteforce search. More...  
void  CopyAndPerturb (arma::mat &xNew, const arma::mat &x) const 
Make replicates of each data point (the number of replicates is set in either the constructor or with Replicates()) and perturb data with Gaussian noise with standard deviation noiseStdDev. More...  
void  DoRadical (const arma::mat &matX, arma::mat &matY, arma::mat &matW) 
Run RADICAL. More...  
double  DoRadical2D (const arma::mat &matX) 
Twodimensional version of RADICAL. More...  
double  NoiseStdDev () const 
Get the standard deviation of the additive Gaussian noise. More...  
double &  NoiseStdDev () 
Modify the standard deviation of the additive Gaussian noise. More...  
size_t  Replicates () const 
Get the number of Gaussianperturbed replicates used per point. More...  
size_t &  Replicates () 
Modify the number of Gaussianperturbed replicates used per point. More...  
size_t  Sweeps () const 
Get the number of sweeps. More...  
size_t &  Sweeps () 
Modify the number of sweeps. More...  
double  Vasicek (arma::vec &x) const 
Vasicek's mspacing estimator of entropy, with overlap modification from (LearnedMiller and Fisher, 2003). More...  
Private Attributes  
size_t  angles 
Number of angles to consider in bruteforce search during Radical2D. More...  
arma::mat  candidate 
Internal matrix, held as member variable to prevent memory reallocations. More...  
size_t  m 
Value of m to use for Vasicek's mspacing estimator of entropy. More...  
double  noiseStdDev 
Standard deviation of the Gaussian noise added to the replicates of the data points during Radical2D. More...  
arma::mat  perturbed 
Internal matrix, held as member variable to prevent memory reallocations. More...  
size_t  replicates 
Number of Gaussianperturbed replicates to use (per point) in Radical2D. More...  
size_t  sweeps 
Number of sweeps; each sweep calls Radical2D once for each pair of dimensions. More...  
Detailed Description
An implementation of RADICAL, an algorithm for independent component analysis (ICA).
Let X be a matrix where each column is a point and each row a dimension. The goal is to find a square unmixing matrix W such that Y = W X and the rows of Y are independent components.
For more details, see the following paper:
Definition at line 43 of file radical.hpp.
Constructor & Destructor Documentation
◆ Radical()
mlpack::radical::Radical::Radical  (  const double  noiseStdDev = 0.175 , 
const size_t  replicates = 30 , 

const size_t  angles = 150 , 

const size_t  sweeps = 0 , 

const size_t  m = 0 

) 
Set the parameters to RADICAL.
 Parameters

noiseStdDev Standard deviation of the Gaussian noise added to the replicates of the data points during Radical2D replicates Number of Gaussianperturbed replicates to use (per point) in Radical2D angles Number of angles to consider in bruteforce search during Radical2D sweeps Number of sweeps. Each sweep calls Radical2D once for each pair of dimensions m The variable m from Vasicek's mspacing estimator of entropy.
Member Function Documentation
◆ Angles() [1/2]

inline 
Get the number of angles considered during bruteforce search.
Definition at line 105 of file radical.hpp.
References angles.
◆ Angles() [2/2]

inline 
Modify the number of angles considered during bruteforce search.
Definition at line 107 of file radical.hpp.
References angles.
◆ CopyAndPerturb()
void mlpack::radical::Radical::CopyAndPerturb  (  arma::mat &  xNew, 
const arma::mat &  x  
)  const 
Make replicates of each data point (the number of replicates is set in either the constructor or with Replicates()) and perturb data with Gaussian noise with standard deviation noiseStdDev.
◆ DoRadical()
void mlpack::radical::Radical::DoRadical  (  const arma::mat &  matX, 
arma::mat &  matY,  
arma::mat &  matW  
) 
Run RADICAL.
 Parameters

matX Input data into the algorithm  a matrix where each column is a point and each row is a dimension. matY Estimated independent components  a matrix where each column is a point and each row is an estimated independent component. matW Estimated unmixing matrix, where matY = matW * matX.
◆ DoRadical2D()
double mlpack::radical::Radical::DoRadical2D  (  const arma::mat &  matX  ) 
Twodimensional version of RADICAL.
◆ NoiseStdDev() [1/2]

inline 
Get the standard deviation of the additive Gaussian noise.
Definition at line 95 of file radical.hpp.
References noiseStdDev.
◆ NoiseStdDev() [2/2]

inline 
Modify the standard deviation of the additive Gaussian noise.
Definition at line 97 of file radical.hpp.
References noiseStdDev.
◆ Replicates() [1/2]

inline 
Get the number of Gaussianperturbed replicates used per point.
Definition at line 100 of file radical.hpp.
References replicates.
◆ Replicates() [2/2]

inline 
Modify the number of Gaussianperturbed replicates used per point.
Definition at line 102 of file radical.hpp.
References replicates.
◆ Sweeps() [1/2]

inline 
◆ Sweeps() [2/2]

inline 
◆ Vasicek()
double mlpack::radical::Radical::Vasicek  (  arma::vec &  x  )  const 
Vasicek's mspacing estimator of entropy, with overlap modification from (LearnedMiller and Fisher, 2003).
 Parameters

x Empirical sample (onedimensional) over which to estimate entropy.
Member Data Documentation
◆ angles

private 
Number of angles to consider in bruteforce search during Radical2D.
Definition at line 123 of file radical.hpp.
Referenced by Angles().
◆ candidate

private 
Internal matrix, held as member variable to prevent memory reallocations.
Definition at line 135 of file radical.hpp.
◆ m

private 
Value of m to use for Vasicek's mspacing estimator of entropy.
Definition at line 130 of file radical.hpp.
◆ noiseStdDev

private 
Standard deviation of the Gaussian noise added to the replicates of the data points during Radical2D.
Definition at line 117 of file radical.hpp.
Referenced by NoiseStdDev().
◆ perturbed

private 
Internal matrix, held as member variable to prevent memory reallocations.
Definition at line 133 of file radical.hpp.
◆ replicates

private 
Number of Gaussianperturbed replicates to use (per point) in Radical2D.
Definition at line 120 of file radical.hpp.
Referenced by Replicates().
◆ sweeps

private 
Number of sweeps; each sweep calls Radical2D once for each pair of dimensions.
Definition at line 127 of file radical.hpp.
Referenced by Sweeps().
The documentation for this class was generated from the following file:
 src/mlpack/methods/radical/radical.hpp
Generated by 1.8.13