Public Member Functions | Protected Member Functions | Protected Attributes

STK::SemiLinearAAModel Class Reference
[Project AAModels (Data Analysis with auto-associative]

Base class for all Semi-Linear AutoAssociative models (SLAAM). More...

#include <STK_SemiLinearAAModel.h>

Inherits STK::IAAModel.

Inherited by STK::LinearAAModel, and STK::PcaModel.

List of all members.

Public Member Functions

virtual ~SemiLinearAAModel ()
const Indexindex () const

Protected Member Functions

 SemiLinearAAModel (Index *p_index)
virtual void projection ()
virtual void wprojection ()

Protected Attributes

Indexp_index_
IRegress< Matrix, Matrix > * p_regress_

Detailed Description

Base class for all Semi-Linear AutoAssociative models (SLAAM).

A SLAAM is a (probabilistic) model of the form

\[ Y = \boldsymbol{\mu} + \sum_{j=1}^{q} \mathrm{Reg}^j(C^j) + \epsilon \]

in $ \mathbf{R}^d $.

$ Y $ is an input d dimensional random variable and $ \epsilon $ is the residual random variable. The (generalized) principal components $ C^{j} $ are real random variables estimated by a projection of the centered data on a subspace

\[ C^j = <a^j,Y>. \]

where the $ a^j$ form an orthonormal set of vector.

The regression functions $ \mathrm{Reg}^j : \mathbb{R} \rightarrow \mathbb{R}^d $ 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.


Constructor & Destructor Documentation

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.

Parameters:
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.


Member Function Documentation

const Index& STK::SemiLinearAAModel::index (  )  const [inline]

Get the index used in the computation of the axis

Returns:
a reference on the Index object

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());


Member Data Documentation

the input Index used in order to obtain the axis.

Definition at line 91 of file STK_SemiLinearAAModel.h.

Referenced by index().

the Regression method used in order to adjust the model.

Definition at line 93 of file STK_SemiLinearAAModel.h.


The documentation for this class was generated from the following files: