STK++ 0.9.13
STK::Clust Namespace Reference

The namespace Clust enclose all the enum and utilities functions needed by the Clustering project. More...

Classes

struct  MixtureTraits
 Main class for the mixtures traits policy. More...
 

Enumerations

enum  initType {
  noInit_ = -1 , randomInit_ = -2 , randomParamInit_ = 0 , randomClassInit_ = 1 ,
  randomFuzzyInit_ = 2 , valueParamInit_ = 3
}
 initialization type. More...
 
enum  algoType { emAlgo_ = 0 , cemAlgo_ = 1 , semAlgo_ = 2 , semiSemAlgo_ = 3 }
 Estimation algorithms. More...
 
enum  algoPredictType { emPredictAlgo_ , semiSEMPredictAlgo_ }
 Learning estimation algorithms. More...
 
enum  algoLearnType { imputeAlgo_ , simulAlgo_ }
 Learning estimation algorithms. More...
 
enum  strategyType { simpleStrategy_ = 0 , XemStrategy_ = 1 , SemStrategy_ = 2 , FullStrategy_ = 3 }
 strategy of estimation More...
 
enum  criterionType { aic_ = 0 , bic_ = 1 , icl_ = 2 , ml_ = 3 }
 type of criterion to use in order to select the mixture model More...
 
enum  exceptions {
  randomInitFail_ , randomParamInitFail_ , randomClassInitFail_ , randomFuzzyInitFail_ ,
  estimFail_ , initializeStepFail_ , mStepFail_ , eStepFail_ ,
  mapStepFail_ , cStepFail_ , sStepFail_
}
 Specific exceptions allowing to handle the erroros that can occur in the estimation process. More...
 
enum  modelState {
  modelCreated_ =0 , modelInitialized_ =1 , modelParamInitialized_ =2 , shortRun_ ,
  longRun_ , modelFinalized_
}
 Give the state of the model. More...
 
enum  ParsimoniousCovarianceModel {
  Covariance_EII_ =100 , Covariance_VII_ , Covariance_EEI_ , Covariance_VEI_ ,
  Covariance_EVI_ , Covariance_VVI_ , Covariance_EEE_ , Covariance_VEE_ ,
  Covariance_EVE_ , Covariance_VVE_ , Covariance_EEV_ , Covariance_VEV_ ,
  Covariance_EVV_ , Covariance_VVV_
}
 list of the parsimonious covariance models that can be used More...
 
enum  HDCovarianceModel {
  HDCovariance_AjkBkQkDk_ =120 , HDCovariance_AjkBkQkD_ , HDCovariance_AjkBkQDk_ , HDCovariance_AjkBkQD_ ,
  HDCovariance_AjkBQkDk_ , HDCovariance_AjkBQkD_ , HDCovariance_AjkBQDk_ , HDCovariance_AjkBQD_ ,
  HDCovariance_AkBkQkDk_ , HDCovariance_AkBkQkD_ , HDCovariance_AkBkQDk_ , HDCovariance_AkBkQD_ ,
  HDCovariance_AkBQkDk_ , HDCovariance_AkBQkD_ , HDCovariance_AkBQDk_ , HDCovariance_AkBQD_ ,
  HDCovariance_AjBkQkDk_ , HDCovariance_AjBkQkD_ , HDCovariance_AjBkQDk_ , HDCovariance_AjBkQD_ ,
  HDCovariance_AjBQkDk_ , HDCovariance_AjBQkD_ , HDCovariance_AjBQDk_ , HDCovariance_AjBQD_ ,
  HDCovariance_ABkQkDk_ , HDCovariance_ABkQkD_ , HDCovariance_ABkQDk_ , HDCovariance_ABkQD_ ,
  HDCovariance_ABQkDk_ , HDCovariance_ABQkD_ , HDCovariance_ABQDk_ , HDCovariance_ABQD_
}
 list of the HD covariance models that can be used More...
 
enum  Mixture {
  Gamma_ajk_bjk_ =0 , Gamma_ajk_bk_ , Gamma_ajk_bj_ , Gamma_ajk_b_ ,
  Gamma_ak_bjk_ , Gamma_ak_bk_ , Gamma_ak_bj_ , Gamma_ak_b_ ,
  Gamma_aj_bjk_ , Gamma_aj_bk_ , Gamma_a_bjk_ , Gamma_a_bk_ ,
  Gaussian_sjk_ =20 , Gaussian_sk_ , Gaussian_sj_ , Gaussian_s_ ,
  Gaussian_sjsk_ , Categorical_pjk_ =40 , Categorical_pk_ , Poisson_ljk_ = 60 ,
  Poisson_lk_ , Poisson_ljlk_ , Kmm_sk_ = 80 , Kmm_s_ ,
  HDGaussian_AjkBkQkDk_ =120 , HDGaussian_AjkBkQkD_ , HDGaussian_AjkBkQDk_ , HDGaussian_AjkBkQD_ ,
  HDGaussian_AjkBQkDk_ , HDGaussian_AjkBQkD_ , HDGaussian_AjkBQDk_ , HDGaussian_AjkBQD_ ,
  HDGaussian_AkBkQkDk_ , HDGaussian_AkBkQkD_ , HDGaussian_AkBkQDk_ , HDGaussian_AkBkQD_ ,
  HDGaussian_AkBQkDk_ , HDGaussian_AkBQkD_ , HDGaussian_AkBQDk_ , HDGaussian_AkBQD_ ,
  HDGaussian_AjBkQkDk_ , HDGaussian_AjBkQkD_ , HDGaussian_AjBkQDk_ , HDGaussian_AjBkQD_ ,
  HDGaussian_AjBQkDk_ , HDGaussian_AjBQkD_ , HDGaussian_ABkQkDk_ , HDGaussian_ABkQkD_ ,
  HDGaussian_ABkQDk_ , HDGaussian_ABkQD_ , HDGaussian_ABQkDk_ , HDGaussian_ABQkD_ ,
  HDGaussian_ABQD_ , unknown_mixture_ = -1
}
 list of the mixtures that can be used by the composer More...
 
enum  MixtureClass {
  Gamma_ , DiagGaussian_ , Categorical_ , Poisson_ ,
  Kmm_ , Matrix_ , HDGaussian_ , HDMatrixGaussian_ ,
  unknown_mixture_class_ = -1
}
 list of the class of mixture implemented in stkpp More...
 

Functions

initType stringToInit (String const &type)
 Convert a String to a initType.
 
algoType stringToAlgo (String const &type)
 Convert a String to an algoType.
 
algoPredictType stringToPredictAlgo (String const &type)
 Convert a String to an algoPredictType.
 
algoLearnType stringToLearnAlgo (String const &type)
 Convert a String to an algoLearnType.
 
criterionType stringToCriterion (String const &type)
 Convert a String to an criterionType.
 
String exceptionToString (exceptions const &type)
 convert a Clust::exceptions to a String.
 
Mixture stringToMixture (String const &type)
 Convert a String to a Mixture.
 
Mixture stringToMixture (String const &type, bool &freeProp)
 convert a string to a Mixture and specify if the model is with free proportions or fixed proportions.
 
String mixtureToString (Mixture const &type)
 convert a Mixture to a String.
 
String mixtureToString (Mixture type, bool freeProp)
 convert a Mixture to a string specifying if the model is with free proportions.
 
MixtureClass mixtureToMixtureClass (Mixture const &type)
 convert a Mixture to a MixtureClass.
 
IMixtureCriterioncreateCriterion (Clust::criterionType criterion)
 
STK::IMixtureCriterioncreateCriterion (String const &criterion)
 
IMixtureAlgocreateAlgo (Clust::algoType algo, int nbIterMax, Real epsilon)
 utility function for creating an estimation algorithm.
 
IMixtureAlgoLearncreateLearnAlgo (Clust::algoLearnType algo, int nbIterMax, Real epsilon)
 utility function for creating a learning algorithm.
 
IMixtureAlgoPredictcreatePredictAlgo (Clust::algoPredictType algo, int nbIterBurn, int nbIterLong, Real epsilon)
 utility function for creating a predicting algorithm.
 
IMixtureInitcreateInit (Clust::initType init=defaultInitType, int nbInits=defaultNbInit, Clust::algoType algo=defaultAlgoInInit, int nbIterMax=defaultNbIterMaxInInit, Real epsilon=defaultEpsilonInInit)
 Utility function for creating a model initializer.
 
IMixtureAlgocreateShortRunAlgo (Clust::algoType algo=defaultAlgoShortRun, int nbIterMax=defaultMaxIterShortRun, Real epsilon=defaultEpsilonShortRun)
 utility function for creating a a short Run algorithm.
 
IMixtureAlgocreateLongRunAlgo (Clust::algoType algo=defaultAlgoLongRun, int nbIterMax=defaultMaxIterLongRun, Real epsilon=defaultEpsilonLongRun)
 utility function for creating a long Run algorithm.
 
IMixtureStrategycreateSimpleStrategy (IMixtureComposer *&p_composer, int nbTry, IMixtureInit *const &p_init, IMixtureAlgo *const &algo)
 Utility function for creating a SimpleStrategy.
 
IMixtureStrategycreateFullStrategy (IMixtureComposer *&p_composer, int nbTry, int nbInitRun, IMixtureInit *const &p_init, int nbShortRun, IMixtureAlgo *const &shortRunAlgo, IMixtureAlgo *const &longRunAlgo)
 Utility function for creating a FullStrategy.
 

Variables

const int defaultNbTry = 5
 Default number of try in an estimation strategy.
 
const Clust::initType defaultInitType = randomFuzzyInit_
 Default algorithm type in short run.
 
const int defaultNbInit = 5
 Default number of initializations to perform.
 
const Clust::algoType defaultAlgoInInit = emAlgo_
 Default algorithm type in initialization.
 
const int defaultNbIterMaxInInit = 20
 Default number of iteration in an initialization algorithm.
 
const Real defaultEpsilonInInit = 1e-02
 Default epsilon in the short runs (used in strategy)
 
const Clust::algoType defaultAlgoShortRun = emAlgo_
 Default algorithm type in short run.
 
const int defaultMaxIterShortRun = 200
 Default number of iterations in the short runs (used in FullStrategy)
 
const Real defaultEpsilonShortRun = 1e-04
 Default epsilon in the short runs (used in strategy)
 
const Clust::algoType defaultAlgoLongRun = emAlgo_
 Default algorithm type in long run.
 
const int defaultMaxIterLongRun = 1000
 Default number of iterations in the long run (used in FullStrategy)
 
const Real defaultEpsilonLongRun = 1e-08
 Default epsilon in the long run (used in strategy)
 

Detailed Description

The namespace Clust enclose all the enum and utilities functions needed by the Clustering project.

Function Documentation

◆ createCriterion()

STK::IMixtureCriterion * STK::Clust::createCriterion ( String const criterion)
Returns
a pointer on the class computing the criterion
Parameters
criterionstring with the criterion name

Definition at line 659 of file STK_Clust_Util.cpp.

660{
662 return createCriterion(type);
663}
The MultidimRegression class allows to regress a multidimensional output variable among a multivariat...
IMixtureCriterion * createCriterion(Clust::criterionType criterion)
criterionType stringToCriterion(String const &type)
Convert a String to an criterionType.
criterionType
type of criterion to use in order to select the mixture model

References createCriterion(), and stringToCriterion().