STK++ 0.9.13
|
template implementation of the IMixture interface allowing to bridge a STK++ kernel mixture with the composer. More...
#include <STK_KmmBridge.h>
Public Types | |
typedef IMixtureBridge< KmmBridge< Id, Data > > | Base |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Mixture | Mixture |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Parameters | Parameters |
typedef Data::Type | Type |
![]() | |
enum | |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Mixture | Mixture |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Data | Data |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Type | Type |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::Parameters | Parameters |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::MissingIndexes | MissingIndexes |
typedef hidden::MixtureBridgeTraits< KmmBridge< Id, Data > >::MissingValues | MissingValues |
typedef MissingIndexes::const_iterator | ConstIterator |
Public Member Functions | |
KmmBridge (Data *p_dataij, String const &idData, int nbCluster) | |
default constructor. | |
KmmBridge (KmmBridge const &bridge) | |
copy constructor | |
virtual | ~KmmBridge () |
destructor | |
virtual KmmBridge * | clone () const |
This is a standard clone function in usual sense. | |
virtual KmmBridge * | create () const |
This is a standard create function in usual sense. | |
void | setDim (Real const &dim) |
set the dimension of the kernel mixture model | |
template<class Vector > | |
void | setDim (ExprBase< Vector > const &dim) |
set the dimension of the kernel mixture model using row vector | |
void | setKernel (Kernel::IKernel const *p_kernel) |
set the kernel | |
virtual void | imputationStep () |
do nothing for kernel mixture models | |
virtual void | samplingStep () |
do nothing for kernel mixture models | |
Type | safeValue (int j) const |
![]() | |
Mixture const & | mixture () const |
MissingIndexes const & | v_missing () const |
Data *const | p_dataij () const |
int | nbMissing () const |
void | getMissingValues (MissingValues &data) const |
get the (imputed) missing values of a data set. | |
void | getParameters (Parameters ¶m) const |
get the parameters of the model | |
void | getParameters (Array ¶m) const |
This function is used in order to get the current values of the parameters in an array. | |
void | setParameters (Parameters const ¶m) |
set the parameters of the model | |
void | setParameters (ExprBase< Array > const ¶m) |
This function is used in order to set the current values of the parameters to the parameters using an array. | |
virtual void | initializeStep () |
Initialize the mixture model before its use by the composer. | |
virtual Real | lnComponentProbability (int i, int k) |
This function must be defined to return the component probability distribution function (PDF) for corresponding sample i and cluster k. | |
virtual void | paramUpdateStep () |
This function is equivalent to Mstep and must be defined to update parameters. | |
virtual void | randomInit () |
This function should be used in order to initialize randomly the parameters of the mixture. | |
virtual int | nbFreeParameter () const |
This function must return the number of free parameters. | |
virtual int | nbMissingValues () const |
This function must return the number of missing value in data set identified by idData_. | |
virtual void | storeIntermediateResults (int iteration) |
This function should be used to store any intermediate results during various iterations after the burn-in period. | |
virtual void | releaseIntermediateResults () |
This step can be used to signal to the mixtures that they must release the stored results. | |
virtual void | setParametersStep () |
set the parameters of the model. | |
virtual void | finalizeStep () |
This step can be used by developer to finalize any thing. | |
virtual void | writeParameters (ostream &os) const |
This function can be used to write summary of parameters to the output stream. | |
![]() | |
IMixture (String const &idData=String()) | |
Constructor with identification character. | |
IMixture (IMixture const &mixture) | |
copy constructor. | |
virtual | ~IMixture () |
Virtual destructor. | |
String const & | idData () const |
IMixtureStatModel const *const | p_composer () const |
void | setMixtureModel (IMixtureStatModel const *p_composer) |
set the mixture composer to the mixture | |
virtual void | writeParameters (std::ostream &out) const |
This function can be used to write summary of parameters on to the output stream. | |
![]() | |
Derived & | asDerived () |
static cast : return a reference of this with a cast to the derived class. | |
Derived const & | asDerived () const |
static cast : return a const reference of this with a cast to the derived class. | |
Derived * | asPtrDerived () |
static cast : return a ptr on a Derived of this with a cast to the derived class. | |
Derived const * | asPtrDerived () const |
static cast : return a ptr on a constant Derived of this with a cast to the derived class. | |
Derived * | clone () const |
create a leaf using the copy constructor of the Derived class. | |
Derived * | clone (bool isRef) const |
create a leaf using the copy constructor of the Derived class and a flag determining if the clone is a reference or not. | |
Private Member Functions | |
void | initializeBridge () |
This function will be used in order to initialize the mixture model using informations stored by the DataBridge. | |
KmmBridge (Mixture const &mixture, String const &idData, int nbCluster) | |
protected constructor to use in order to create a bridge. | |
Additional Inherited Members | |
![]() | |
IMixtureBridge (Data *p_data, String const &idData, int nbCluster) | |
default constructor. | |
IMixtureBridge (IMixtureBridge const &bridge) | |
copy constructor | |
IMixtureBridge (Mixture const &mixture, String const &idData, int nbCluster) | |
protected constructor to use in order to create a bridge. | |
virtual | ~IMixtureBridge () |
destructor | |
virtual std::vector< std::pair< int, int > >::size_type | findMissing () |
utility function for lookup the data set and find missing values coordinates. | |
virtual void | removeMissing () |
This function will be used once for imputation of missing data at the initialization step (. | |
![]() | |
int | nbSample () const |
This function can be used in derived classes to get number of samples. | |
int | nbCluster () const |
This function can be used in derived classes to get number of classes. | |
CPointX const * | p_pk () const |
This function can be used in derived classes to get estimated number of individuals from the framework. | |
CPointX const * | p_tk () const |
This function can be used in derived classes to get proportions from the framework. | |
CArrayXX const * | p_tik () const |
This function can be used in derived classes to get posterior probabilities from the framework. | |
CVectorXi const * | p_zi () const |
This function can be used in derived classes to get class labels from the framework. | |
![]() | |
IRecursiveTemplate () | |
constructor. | |
~IRecursiveTemplate () | |
destructor. | |
![]() | |
Mixture | mixture_ |
The Mixture to bridge with the composer. | |
MissingIndexes | v_missing_ |
vector with the coordinates of the missing values | |
Data * | p_dataij_ |
pointer on the data set | |
template implementation of the IMixture interface allowing to bridge a STK++ kernel mixture with the composer.
This class inherit from the interface IMixtureBridge.
Id | is any identifier of a concrete model deriving from the interface STK::IMixtureDensity class. |
Data | is any container storing the data. |
Definition at line 117 of file STK_KmmBridge.h.
typedef IMixtureBridge< KmmBridge<Id,Data> > STK::KmmBridge< Id, Data >::Base |
Definition at line 120 of file STK_KmmBridge.h.
typedef hidden::MixtureBridgeTraits<KmmBridge<Id,Data>>::Mixture STK::KmmBridge< Id, Data >::Mixture |
Definition at line 121 of file STK_KmmBridge.h.
typedef hidden::MixtureBridgeTraits<KmmBridge<Id,Data>>::Parameters STK::KmmBridge< Id, Data >::Parameters |
Definition at line 122 of file STK_KmmBridge.h.
Definition at line 123 of file STK_KmmBridge.h.
|
inline |
default constructor.
p_dataij | pointer on the data set (should be zero, never used) |
idData | id name of the mixture model |
nbCluster | number of cluster |
Definition at line 135 of file STK_KmmBridge.h.
References STK::KmmBridge< Id, Data >::initializeBridge().
copy constructor
Definition at line 139 of file STK_KmmBridge.h.
References STK::KmmBridge< Id, Data >::initializeBridge().
|
inlineprivate |
protected constructor to use in order to create a bridge.
mixture | the mixture to copy |
idData | id name of the mixture |
nbCluster | number of cluster |
Definition at line 196 of file STK_KmmBridge.h.
|
inlinevirtual |
This is a standard clone function in usual sense.
It must be defined to provide new object of your class with values of various parameters equal to the values of calling object. In other words, this is equivalent to polymorphic copy constructor.
Implements STK::IMixture.
Definition at line 148 of file STK_KmmBridge.h.
|
inlinevirtual |
This is a standard create function in usual sense.
It must be defined to provide new object of your class with correct dimensions and state. In other words, this is equivalent to virtual constructor.
Implements STK::IMixture.
Definition at line 154 of file STK_KmmBridge.h.
References STK::IMixture::idData(), STK::IMixtureBridge< KmmBridge< Id, Data > >::mixture_, STK::IMixture::nbCluster(), and STK::KmmBridge< Id, Data >::setDim().
|
inlinevirtual |
do nothing for kernel mixture models
Reimplemented from STK::IMixtureBridge< KmmBridge< Id, Data > >.
Definition at line 174 of file STK_KmmBridge.h.
This function will be used in order to initialize the mixture model using informations stored by the DataBridge.
In the kernel bridge the mixture use the intermediary array dik_
computed by the bridge. The initialization step consist in resizing the array and to set the pointer to mixture_
.
Definition at line 190 of file STK_KmmBridge.h.
Referenced by STK::KmmBridge< Id, Data >::KmmBridge(), and STK::KmmBridge< Id, Data >::KmmBridge().
j | index of the column with the safe value needed |
Definition at line 180 of file STK_KmmBridge.h.
|
inlinevirtual |
do nothing for kernel mixture models
Reimplemented from STK::IMixtureBridge< KmmBridge< Id, Data > >.
Definition at line 176 of file STK_KmmBridge.h.
set the dimension of the kernel mixture model using row vector
Definition at line 165 of file STK_KmmBridge.h.
References STK::IMixtureBridge< KmmBridge< Id, Data > >::mixture_, and STK_STATIC_ASSERT_ONE_DIMENSION_ONLY.
set the dimension of the kernel mixture model
Definition at line 162 of file STK_KmmBridge.h.
References STK::IMixtureBridge< KmmBridge< Id, Data > >::mixture_.
Referenced by STK::KmmBridge< Id, Data >::create().
|
inline |
set the kernel
Definition at line 171 of file STK_KmmBridge.h.
References STK::IMixtureBridge< KmmBridge< Id, Data > >::mixture_.