STK++ 0.9.13
Statistical Models

The project Model proposes classes for modeling and estimating Statistical Models. More...

Namespaces

namespace  STK::Model
 namespace enclosing the enum and utilities functions of the StatModel project.
 

Classes

class  STK::IMixtureStatModel
 Interface base class for Mixture (composed) model. More...
 
class  STK::BernoulliModel< Array, WColVector >
 A Bernoulli model, is a statistical model of the following form. More...
 
class  STK::GaussianModel< Array >
 Compute the maximum likelihood estimates of a complete Gaussian statistical model. More...
 
class  STK::IClusterModelBase
 Base class for clustering models. More...
 
class  STK::IGaussianModel< Array >
 Compute the the maximum likelihood estimates of a complete Gaussian statistical model. More...
 
class  STK::IMultiParameters< Parameters >
 Interface base class for the parameters of a multivariate model. More...
 
class  STK::IMultiStatModel< Derived >
 Interface base class for all Multivariate Statistical Models. More...
 
class  STK::IStatModel< Derived >
 Base class for all Statistical Models [Deprecated], have been replaced by IStatModel. More...
 
class  STK::IStatModelBase
 Interface base class for all Statistical Models. More...
 
class  STK::IUnivStatModel< ColVector, WColVector, UnivariateLaw >
 Base class for all Statistical Models. More...
 
class  STK::JointBernoulliParameters
 Structure encapsulating the parameters of a Joint Bernoulli model. More...
 
class  STK::JointBernoulliModel< Array, WColVector >
 A joint Bernoulli model is a statistical model of the form: following form. More...
 
struct  STK::JointGammaParameters
 Structure encapsulating the parameters of a Joint Gamma model. More...
 
class  STK::JointGammaModel< Array, WColVector >
 A joint Gamma model is a statistical model of the following form. More...
 
struct  STK::JointGaussianParameters
 Structure encapsulating the parameters of a Joint Gaussian model. More...
 
class  STK::JointGaussianModel< Array, WColVector >
 A joint Gaussian model is a statistical model of the form: following form. More...
 
class  STK::Bernoulli_pjParameters
 Structure encapsulating the parameters of a Joint Bernoulli model. More...
 
class  STK::ModelBernoulli_pj< Data_, WColVector_ >
 A joint Bernoulli model is a statistical model of the form: following form. More...
 
struct  STK::DiagGaussian_muj_sjParameters
 Structure encapsulating the parameters of a DiagGaussian_muj_sj model. More...
 
class  STK::ModelDiagGaussian_muj_sj< Data_, WColVector_ >
 A DiagGaussian_muj_sj model is a statistical model of the form: following form. More...
 
struct  STK::ModelGamma_aj_bjParameters
 Structure encapsulating the parameters of a Joint Gamma model. More...
 
class  STK::ModelGamma_aj_bj< Data_, WColVector_ >
 A joint Gamma model is a statistical model of the following form. More...
 
class  STK::ICriterion
 Interface base class for the selection model criterion. More...
 
class  STK::AICCriterion
 Derived class of Criterion for computing the AIC Criterion The AIC criteria is a penalization of the likelihood given by the formula. More...
 
class  STK::BICCriterion
 Derived class of Criterion for computing the BIC Criterion The Bic criteria is a penalization of the likelihood given by the formula. More...
 

Enumerations

enum  STK::Model::StatisticalModels {
  STK::Model::ModelBernoulli_pj_ , STK::Model::ModelDiagGaussian_muj_sj_ , STK::Model::ModelGamma_aj_bj_ , STK::Model::MixtureGamma_ajk_bjk_ ,
  STK::Model::MixtureGamma_ajk_bk_ , STK::Model::MixtureGamma_ajk_bj_ , STK::Model::MixtureGamma_ajk_b_ , STK::Model::MixtureGamma_ak_bjk_ ,
  STK::Model::MixtureGamma_ak_bk_ , STK::Model::MixtureGamma_ak_bj_ , STK::Model::MixtureGamma_ak_b_ , STK::Model::MixtureGamma_aj_bjk_ ,
  STK::Model::MixtureGamma_aj_bk_ , STK::Model::MixtureGamma_a_bjk_ , STK::Model::MixtureGamma_a_bk_ , STK::Model::MixtureGaussian_sjk_ ,
  STK::Model::MixtureGaussian_sk_ , STK::Model::MixtureGaussian_sj_ , STK::Model::MixtureGaussian_s_ , STK::Model::MixtureCategorical_pjk_ ,
  STK::Model::MixtureCategorical_pk_ , STK::Model::MixturePoisson_ljk_ , STK::Model::MixturePoisson_lk_ , STK::Model::MixturePoisson_ljlk_ ,
  STK::Model::MixtureKmm_sk_ , STK::Model::MixtureKmm_s_ , STK::Model::unknown_model_
}
 list of the statistical models that can be used More...
 
enum  STK::Model::TypeCriterion {
  STK::Model::unknownCriterion_ = -1 , STK::Model::unknown_criterion_ = -1 , STK::Model::aic_ , STK::Model::bic_ ,
  STK::Model::icl_ , STK::Model::ml_
}
 Model selection criteria. More...
 

Functions

TypeCriterion STK::Model::stringToTypeCriterion (const String &type)
 convert a String to a TypeReduction.
 
String STK::Model::typeCriterionToString (const TypeCriterion &type)
 convert a TypeCriterion to a String.
 

Detailed Description

The project Model proposes classes for modeling and estimating Statistical Models.

The aim of this project is to define Interface and specialized classes in order to manipulate and estimate the parameters of any kind of statistical model.

A statistical model is a formalization of relationships between variables in the form of mathematical equations. A statistical model describes how one or more random variables are related to one or more random variables. The model is statistical as the variables are not deterministically but stochastically related. In mathematical terms, a statistical model is frequently thought of as a pair $ (Y, P) $ where $ Y $ is the set of possible observations and $ P $ the set of possible probability distributions on $ Y $. It is assumed that there is a distinct element of $ P $ which generates the observed data. Statistical inference enables us to make statements about which element(s) of this set are likely to be the true one.

Enumeration Type Documentation

◆ StatisticalModels

list of the statistical models that can be used

Enumerator
ModelBernoulli_pj_ 
ModelDiagGaussian_muj_sj_ 
ModelGamma_aj_bj_ 
MixtureGamma_ajk_bjk_ 
MixtureGamma_ajk_bk_ 
MixtureGamma_ajk_bj_ 
MixtureGamma_ajk_b_ 
MixtureGamma_ak_bjk_ 
MixtureGamma_ak_bk_ 
MixtureGamma_ak_bj_ 
MixtureGamma_ak_b_ 
MixtureGamma_aj_bjk_ 
MixtureGamma_aj_bk_ 
MixtureGamma_a_bjk_ 
MixtureGamma_a_bk_ 
MixtureGaussian_sjk_ 
MixtureGaussian_sk_ 
MixtureGaussian_sj_ 
MixtureGaussian_s_ 
MixtureCategorical_pjk_ 
MixtureCategorical_pk_ 
MixturePoisson_ljk_ 
MixturePoisson_lk_ 
MixturePoisson_ljlk_ 
MixtureKmm_sk_ 
MixtureKmm_s_ 
unknown_model_ 

Definition at line 57 of file STK_Model_Util.h.

58{
86};
@ MixtureCategorical_pjk_
@ ModelDiagGaussian_muj_sj_

◆ TypeCriterion

Model selection criteria.

Enumerator
unknownCriterion_ 

unknown criterion

unknown_criterion_ 

unknown criterion

aic_ 

akaike criterion

bic_ 

information criterion

icl_ 

integrated likelihood criterion

ml_ 

Maximum Likelihood criterion.

Definition at line 91 of file STK_Model_Util.h.

92{
95 aic_,
96 bic_,
97 icl_,
98 ml_
99};
@ unknownCriterion_
unknown criterion
@ unknown_criterion_
unknown criterion

Function Documentation

◆ stringToTypeCriterion()

TypeCriterion STK::Model::stringToTypeCriterion ( const String type)
inline

convert a String to a TypeReduction.

Parameters
typethe String we want to convert
Returns
the TypeCriterion represented by the String type. if the string does not match any known name, the unknown_ type is returned.

Definition at line 107 of file STK_Model_Util.h.

108{
109 if (toUpperString(type) == toUpperString(_T("AIC"))) return aic_;
110 if (toUpperString(type) == toUpperString(_T("BIC"))) return bic_;
111 if (toUpperString(type) == toUpperString(_T("ICL"))) return icl_;
112 if (toUpperString(type) == toUpperString(_T("ML"))) return ml_;
113 return unknownCriterion_;
114}
#define _T(x)
Let x unmodified.
String const & toUpperString(String &s)
convert the characters of the String to upper case
Definition STK_String.h:134

References _T, STK::Model::aic_, STK::Model::bic_, STK::Model::icl_, STK::Model::ml_, STK::toUpperString(), and STK::Model::unknownCriterion_.

◆ typeCriterionToString()

String STK::Model::typeCriterionToString ( const TypeCriterion type)
inline

convert a TypeCriterion to a String.

Parameters
typethe type of criterion we want to convert
Returns
the string associated to this type.

Definition at line 121 of file STK_Model_Util.h.

122{
123 switch (type)
124 {
125 case aic_:
126 return String(_T("AIC"));
127 case bic_:
128 return String(_T("BIC"));
129 case icl_:
130 return String(_T("ICL"));
131 case ml_:
132 return String(_T("ML"));
134 return String(_T("unknown"));
135 }
136 return String(_T("unknown"));
137}
std::basic_string< Char > String
STK fundamental type of a String.

References _T, STK::Model::aic_, STK::Model::bic_, STK::Model::icl_, STK::Model::ml_, and STK::Model::unknownCriterion_.