Base class for all Semi-Linear AutoAssociative models (SLAAM). More...
#include <STK_SemiLinearAAModel.h>
Inherits STK::IAAModel.
Inherited by STK::LinearAAModel, and STK::PcaModel.
Public Member Functions | |
| virtual | ~SemiLinearAAModel () |
| const Index & | index () const |
Protected Member Functions | |
| SemiLinearAAModel (Index *p_index) | |
| virtual void | projection () |
| virtual void | wprojection () |
Protected Attributes | |
| Index * | p_index_ |
| IRegress< Matrix, Matrix > * | p_regress_ |
Base class for all Semi-Linear AutoAssociative models (SLAAM).
A SLAAM is a (probabilistic) model of the form
in
.
is an input d dimensional random variable and
is the residual random variable. The (generalized) principal components
are real random variables estimated by a projection of the centered data on a subspace
where the
form an orthonormal set of vector.
The regression functions
are specifics to the model.
The principal Component Analysis (PCA) is the most common AA models.
The pure virtual method to be implemented in the derived class are
// regression without weights virtual void regression(); // weighted regression virtual void wregression(); // prediction of the data set virtual void prediction();
The data set is set to the Index outside this class as an Index can be shared by various IAAModel.
Definition at line 87 of file STK_SemiLinearAAModel.h.
| STK::SemiLinearAAModel::SemiLinearAAModel | ( | Index * | p_index | ) | [protected] |
Constructor. The containers workData_, p_predicted_, p_residuals_ and mean_ are initialized to theirs dimensions.
The data set to process have been set to p_index outside the class.
| p_index | the index to use in order to obtain the axis |
Definition at line 45 of file STK_SemiLinearAAModel.cpp.
: IAAModel(p_index->p_data())
| STK::SemiLinearAAModel::~SemiLinearAAModel | ( | ) | [virtual] |
virtual destuctor.
Definition at line 52 of file STK_SemiLinearAAModel.cpp.
| const Index& STK::SemiLinearAAModel::index | ( | ) | const [inline] |
Get the index used in the computation of the axis
Definition at line 123 of file STK_SemiLinearAAModel.h.
References p_index_.
{ return *p_index_;}
| void STK::SemiLinearAAModel::projection | ( | ) | [protected, virtual] |
compute the projection
Implements STK::IAAModel.
Definition at line 56 of file STK_SemiLinearAAModel.cpp.
{ }
/* compute the projection **/
void SemiLinearAAModel::projection()
{
// compute axis
p_index_->run(dim_);
// remove existing container
if (p_projData_) delete p_projData_;
// resize result
p_projData_ = new Matrix(workData_.rangeVe(), p_index_->axis().rangeHo());
| void STK::SemiLinearAAModel::wprojection | ( | ) | [protected, virtual] |
compute the weighted projection
Implements STK::IAAModel.
Definition at line 69 of file STK_SemiLinearAAModel.cpp.
{
// compute axis
p_index_->run(p_weights_, dim_);
// remove existing container
if (p_projData_) delete p_projData_;
// resize result
p_projData_ = new Matrix(workData_.rangeVe(), p_index_->axis().rangeHo());
Index* STK::SemiLinearAAModel::p_index_ [protected] |
the input Index used in order to obtain the axis.
Definition at line 91 of file STK_SemiLinearAAModel.h.
Referenced by index().
IRegress<Matrix, Matrix>* STK::SemiLinearAAModel::p_regress_ [protected] |
the Regression method used in order to adjust the model.
Definition at line 93 of file STK_SemiLinearAAModel.h.
1.7.1