STK++ 0.9.13
Clustering using generative models

The project Clustering provides classes for modeling and estimating generative mixture model. More...

Namespaces

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

Classes

struct  STK::hidden::MixtureTraits< Categorical_pjk< Array_ > >
 Traits class for the Categorical_pjk traits policy. More...
 
class  STK::Categorical_pjk< Array >
 The diagonal Categorical mixture model Categorical_pjk is the most general diagonal Categorical model and has a probability function of the form. More...
 
struct  STK::hidden::MixtureTraits< Categorical_pk< Array_ > >
 Traits class for the Categorical_pk traits policy. More...
 
class  STK::Categorical_pk< Array >
 The diagonal Categorical mixture model Categorical_pk is a diagonal Categorical model and has a density function of the form. More...
 
class  STK::CategoricalBase< Derived >
 Base class for the Categorical models. More...
 
class  STK::CategoricalBridge< Id, Data >
 template implementation of the IMixtureBridge interface allowing to bridge a STK++ mixture with the composer. More...
 
class  STK::CategoricalMixtureManager< DataHandler >
 A mixture manager is a factory class for injection dependency in the STK++ derived class of the IMixtureComposer interface class. More...
 
struct  STK::ModelParameters< Clust::Categorical_pjk_ >
 Structure encapsulating the parameters of a Categorical_pjk model. More...
 
struct  STK::ModelParameters< Clust::Categorical_pk_ >
 Structure encapsulating the parameters of a Categorical_pk model. More...
 
class  STK::DiagGaussian_s< Array >
 The diagonal DiagGaussian_s mixture model hse a density function of the form. More...
 
class  STK::DiagGaussian_sj< Array >
 The diagonal Gaussian mixture model DiagGaussian_sj have a density function of the form. More...
 
struct  STK::hidden::MixtureTraits< DiagGaussian_sjk< Array_ > >
 Traits class for the DiagGaussian_sjk traits policy. More...
 
class  STK::DiagGaussian_sjk< Array >
 The diagonal Gaussian mixture model DiagGaussian_sjk is the most general diagonal Gaussian model and have a density function of the form. More...
 
struct  STK::hidden::MixtureTraits< DiagGaussian_sjsk< Array_ > >
 Traits class for the DiagGaussian_sjsk traits policy. More...
 
class  STK::DiagGaussian_sjsk< Array >
 The diagonal Gaussian mixture model DiagGaussian_sjsk is an intermediate diagonal Gaussian model with density function of the form. More...
 
struct  STK::hidden::MixtureTraits< DiagGaussian_sk< Array_ > >
 Traits class for the DiagGaussian_sk traits policy. More...
 
class  STK::DiagGaussian_sk< Array >
 The diagonal Gaussian mixture model DiagGaussian_sk assumes an equal standard deviation in each cluster and has a density function of the form. More...
 
class  STK::DiagGaussianBase< Derived >
 Base class for the diagonal Gaussian models. More...
 
class  STK::DiagGaussianBridge< Id, Data >
 template implementation of the IMixture interface allowing to bridge a STK++ mixture with the composer. More...
 
class  STK::DiagGaussianMixtureManager< DataHandler >
 A mixture manager is a factory class for injection dependency in the STK++ derived class of the IMixtureComposer class. More...
 
struct  STK::ModelParameters< Clust::Gaussian_sjk_ >
 Structure encapsulating the parameters of a STK::DiagGaussian_sjk model. More...
 
struct  STK::ModelParameters< Clust::Gaussian_sk_ >
 Structure encapsulating the parameters of a STK::DiagGaussian_sk model. More...
 
struct  STK::ModelParameters< Clust::Gaussian_sj_ >
 Structure encapsulating the parameters of a STK::DiagGaussian_sj model. More...
 
struct  STK::ModelParameters< Clust::Gaussian_s_ >
 Structure encapsulating the parameters of a STK::DiagGaussian_s model. More...
 
struct  STK::ModelParameters< Clust::Gaussian_sjsk_ >
 Structure encapsulating the parameters of a Gaussian_sjsk mixture model. More...
 
struct  STK::hidden::MixtureTraits< Gamma_a_bjk< Array_ > >
 Traits class for the Gamma_a_bjk traits policy. More...
 
class  STK::Gamma_a_bjk< Array >
 Gamma_a_bjk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_a_bk< Array_ > >
 Traits class for the Gamma_a_bk traits policy. More...
 
class  STK::Gamma_a_bk< Array >
 Gamma_a_bk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_aj_bjk< Array_ > >
 Traits class for the Gamma_aj_bjk traits policy. More...
 
class  STK::Gamma_aj_bjk< Array >
 Gamma_aj_bjk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_aj_bk< Array_ > >
 Traits class for the Gamma_aj_bk traits policy. More...
 
class  STK::Gamma_aj_bk< Array >
 Gamma_aj_bk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ajk_b< Array_ > >
 Traits class for the Gamma_ajk_b traits policy. More...
 
class  STK::Gamma_ajk_b< Array >
 Gamma_ajk_b is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ajk_bj< Array_ > >
 Traits class for the Gamma_ajk_bj traits policy. More...
 
class  STK::Gamma_ajk_bj< Array >
 Gamma_ajk_bj is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ajk_bjk< Array_ > >
 Traits class for the Gamma_ajk_bjk traits policy. More...
 
class  STK::Gamma_ajk_bjk< Array >
 Gamma_ajk_bjk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ajk_bk< Array_ > >
 Traits class for the Gamma_ajk_bk traits policy. More...
 
class  STK::Gamma_ajk_bk< Array >
 Gamma_ajk_bk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ak_b< Array_ > >
 Traits class for the Gamma_ak_b traits policy. More...
 
class  STK::Gamma_ak_b< Array >
 Gamma_ak_b is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ak_bj< Array_ > >
 Traits class for the Gamma_ak_bj traits policy. More...
 
class  STK::Gamma_ak_bj< Array >
 Gamma_ak_bj is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ak_bjk< Array_ > >
 Traits class for the Gamma_ak_bjk traits policy. More...
 
class  STK::Gamma_ak_bjk< Array >
 Gamma_ak_bjk is a mixture model of the following form. More...
 
struct  STK::hidden::MixtureTraits< Gamma_ak_bk< Array_ > >
 Traits class for the Gamma_ak_bk traits policy. More...
 
class  STK::Gamma_ak_bk< Array >
 Gamma_ak_bk is a mixture model of the following form. More...
 
class  STK::GammaBase< Derived >
 Base class for the gamma models. More...
 
class  STK::GammaBridge< Id, Data >
 template implementation of the IMixtureBridge interface allowing to bridge a STK++ mixture with the composer. More...
 
class  STK::GammaMixtureManager< DataHandler >
 A mixture manager is a factory class for injection dependency in the STK++ derived class of the MixtureComposer class. More...
 
struct  STK::ModelParameters< Clust::Gamma_a_bjk_ >
 Structure encapsulating the parameters of a Gamma_a_bjk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_a_bk_ >
 Structure encapsulating the parameters of a Gamma_a_bk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_aj_bjk_ >
 Structure encapsulating the parameters of a Gamma_aj_bjk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_aj_bk_ >
 Structure encapsulating the parameters of a Gamma_aj_bk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ajk_b_ >
 Structure encapsulating the parameters of a Gamma_ajk_b_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ajk_bj_ >
 Structure encapsulating the parameters of a Gamma_ajk_bj_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ajk_bjk_ >
 Structure encapsulating the parameters of a Gamma_ajk_bjk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ajk_bk_ >
 Structure encapsulating the parameters of a Gamma_ajk_bk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ak_b_ >
 Structure encapsulating the parameters of a Gamma_ak_b_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ak_bj_ >
 Structure encapsulating the parameters of a Gamma_ak_bj_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ak_bjk_ >
 Structure encapsulating the parameters of a Gamma_ak_bjk_ mixture model. More...
 
struct  STK::ModelParameters< Clust::Gamma_ak_bk_ >
 Structure encapsulating the parameters of a Gamma_ak_bk_ mixture model. More...
 
class  STK::HDMatrixGaussianBridge< IdRow, IdCol, Data >
 template implementation of the IMixture interface allowing to bridge a STK++ mixture with the composer. More...
 
struct  STK::hidden::MixtureTraits< HDMatrixGaussianModel< IdRow_, IdCol_, Array_ > >
 Traits class for the HDMatrixGaussianModel traits policy. More...
 
class  STK::HDMatrixGaussianModel< IdRow_, IdCol_, Array_ >
 Main class for HD matrix valued matrix models. More...
 
struct  STK::HDMatrixModelParameters< Array_ >
 structure storing the parameters of the HD matrix valued mixture More...
 
struct  STK::hidden::MixtureTraits< HDGaussian_AjkBkQkD_< Array_ > >
 Traits class for the MixtureHDGaussian_ajk_bk_qk_d traits policy. More...
 
struct  STK::ModelParameters< Clust::HDGaussian_AjkBkQkD_ >
 Structure encapsulating the parameters of a MixturGaussian_sj model. More...
 
class  STK::HDGaussian_AjkBkQkD< Array >
 The diagonal Gaussian mixture model HDGaussian_AjkBkQkD is the most general HD Gaussian model and have a density function of the form. More...
 
class  STK::HDGaussianBase< Derived >
 Base class for the diagonal Gaussian models. More...
 
class  STK::HDGaussianBridge< Id, Data >
 template implementation of the IMixture interface allowing to bridge a STK++ mixture with the composer. More...
 
class  STK::KernelMixtureManager
 A mixture manager is a factory class for injection dependency in the STK++ derived class of the MixtureComposer class. More...
 
struct  STK::ModelParameters< Clust::Kmm_s_ >
 Structure encapsulating the parameters of a Kmm_s model. More...
 
struct  STK::ModelParameters< Clust::Kmm_sk_ >
 Structure encapsulating the parameters of a Kmm_sk model. More...
 
struct  STK::hidden::MixtureTraits< Kmm_s >
 MixtureTraits class for the Kmm_s traits policy. More...
 
class  STK::Kmm_s
 The Gaussian mixture model Kmm_s is an isotrope Gaussian mixture model on a kernel space. More...
 
struct  STK::hidden::MixtureTraits< Kmm_sk >
 Traits class for the Kmm_sk traits policy. More...
 
class  STK::Kmm_sk
 The Gaussian mixture model Kmm_sk is an isotrope Gaussian mixture model on a kernel space. More...
 
class  STK::KmmBase< Derived >
 Base class for the Gaussian Kernel Mixture Models. More...
 
class  STK::KmmBridge< Id, Data >
 template implementation of the IMixture interface allowing to bridge a STK++ kernel mixture with the composer. More...
 
class  STK::IMixtureAlgo
 Interface base class for the algorithms. More...
 
class  STK::IMixtureAlgoLearn
 Interface base class for the learning algorithms. More...
 
class  STK::IMixtureAlgoPredict
 Interface base class for predicting algorithms. More...
 
class  STK::EMAlgo
 Implementation of the EM algorithm. More...
 
class  STK::CEMAlgo
 Implementation of the SEM algorithm. More...
 
class  STK::SEMAlgo
 Implementation of the SEM algorithm. More...
 
class  STK::SemiSEMAlgo
 Implementation of the SemiSEM algorithm. More...
 
class  STK::ImputeAlgo
 Implementation of the ImputeAlgo learning algorithm. More...
 
class  STK::SimulAlgo
 Implementation of the SimulAlgo learning algorithm. More...
 
class  STK::EMPredict
 Implementation of the EMPredict algorithm. More...
 
class  STK::SemiSEMPredict
 Implementation of the SemiSEMPredict algorithm. More...
 
class  STK::IMixtureCriterion
 Interface base class for the selection model criterion. More...
 
class  STK::AICMixtureCriterion
 Derived class of Criterion for computing the AIC Criterion The AIC criteria of a given model M is a penalization of the likelihood given by the formula. More...
 
class  STK::BICMixtureCriterion
 Derived class of Criterion for computing the BIC Criterion The Bic criteria of a model M is a penalization of the likelihood given by the formula. More...
 
class  STK::ICLMixtureCriterion
 Derived class of IMixtureCriterion for computing the ICL Criterion The ICL criteria of a model M is a penalization of the likelihood given by the formula. More...
 
class  STK::MLMixtureCriterion
 Derived class of Criterion for computing the Maximum Likelihood Criterion This criterion does not penalize the model and return minux two times the log likelihood of the model. More...
 
class  STK::IMixtureInit
 Interface base class for the initializations. More...
 
class  STK::RandomInit
 Implementation of the random initialization. More...
 
class  STK::ClassInit
 Initialization by simulating a realization of the class labels zi accordingly to the initial proportions. More...
 
class  STK::FuzzyInit
 Initialization by simulating the tik accordingly to the initial proportions. More...
 
struct  STK::FullStrategyParam
 helper structure encapsulating the parameters of the Full strategy More...
 
class  STK::FullStrategy
 A FullStrategy is based on the following paradigm: More...
 
class  STK::IMixtureStrategy
 Interface base class for all the strategies. More...
 
struct  STK::SimpleStrategyParam
 helper structure encapsulating the parameters of the simple strategy More...
 
class  STK::SimpleStrategy
 A SimpleStrategy is just nbTry long run. More...
 
struct  STK::XemStrategyParam
 helper structure encapsulating the parameters of the Xem strategy More...
 
class  STK::XemStrategy
 A XemStrategy is based on the following paradigm: More...
 
struct  STK::hidden::MixtureTraits< Poisson_ljk< Array_ > >
 Traits class for the Poisson_ljk traits policy. More...
 
class  STK::Poisson_ljk< Array >
 The Poisson mixture model Poisson_ljk is the most general Poisson model and have a probability function of the form. More...
 
struct  STK::hidden::MixtureTraits< Poisson_ljlk< Array_ > >
 Traits class for the Poisson_ljlk traits policy. More...
 
class  STK::Poisson_ljlk< Array >
 The Poisson mixture model Poisson_ljlk is a Poisson model with a probability function of the form. More...
 
struct  STK::hidden::MixtureTraits< Poisson_lk< Array_ > >
 Traits class for the Poisson_lk traits policy. More...
 
class  STK::Poisson_lk< Array >
 The Poisson mixture model Poisson_lk has a probability function of the form. More...
 
class  STK::PoissonBase< Derived >
 Base class for the Poisson models. More...
 
class  STK::PoissonBridge< Id, Data >
 template implementation of the IMixtureBridge interface allowing to bridge a STK++ Poisson mixture with the composer. More...
 
class  STK::PoissonMixtureManager< DataHandler >
 A mixture manager is a factory class for injection dependency in the STK++ derived class of the MixtureComposer class. More...
 
struct  STK::ModelParameters< Clust::Poisson_ljlk_ >
 Structure encapsulating the parameters of a Poisson_ljlk model. More...
 
struct  STK::ModelParameters< Clust::Poisson_ljk_ >
 Structure encapsulating the parameters of a Poisson_ljlk model. More...
 
struct  STK::ModelParameters< Clust::Poisson_lk_ >
 Structure encapsulating the parameters of a Poisson_lk model. More...
 
struct  STK::ModelParameters< Id >
 struct storing the parameters of the mixture. More...
 
class  STK::IMixture
 Interface base class for all the mixture models that will be processed by the composer. More...
 
class  STK::IMixtureBridge< Derived >
 Interface base class for the bridges of the STK++ mixture. More...
 
class  STK::IMixtureComposer
 Base class for Mixture (composed) model. More...
 
class  STK::IMixtureDensity< Derived >
 Base class for all Mixture densities. More...
 
class  STK::IMixtureLearner
 Base class for Learner of a Mixture mixed model. More...
 
class  STK::IMixtureManager< Derived >
 Interface base class for mixture managers. More...
 
class  STK::IMixtureModel< Derived >
 Main interface class for mixture models. More...
 
class  STK::IMixtureModelBase
 Base class for all Mixture model. More...
 
class  STK::MixtureComposer
 Main class for handling composed mixture models. More...
 
class  STK::StrategyFacade
 facade design pattern. More...
 
class  STK::LearnFacade
 facade design pattern. More...
 
class  STK::MixtureLearner
 Main class for learning mixture models. More...
 
class  STK::MixtureSemiLearner
 Base class for Learning a Mixture mixed model when some classes are known. More...
 
class  STK::DataBridge< Data >
 bridge a data set in order to handle its missing values. More...
 

Enumerations

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

Functions

initType STK::Clust::stringToInit (String const &type)
 Convert a String to a initType.
 
algoType STK::Clust::stringToAlgo (String const &type)
 Convert a String to an algoType.
 
algoPredictType STK::Clust::stringToPredictAlgo (String const &type)
 Convert a String to an algoPredictType.
 
algoLearnType STK::Clust::stringToLearnAlgo (String const &type)
 Convert a String to an algoLearnType.
 
criterionType STK::Clust::stringToCriterion (String const &type)
 Convert a String to an criterionType.
 
String STK::Clust::exceptionToString (exceptions const &type)
 convert a Clust::exceptions to a String.
 
Mixture STK::Clust::stringToMixture (String const &type)
 Convert a String to a Mixture.
 
Mixture STK::Clust::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 STK::Clust::mixtureToString (Mixture const &type)
 convert a Mixture to a String.
 
String STK::Clust::mixtureToString (Mixture type, bool freeProp)
 convert a Mixture to a string specifying if the model is with free proportions.
 
MixtureClass STK::Clust::mixtureToMixtureClass (Mixture const &type)
 convert a Mixture to a MixtureClass.
 
IMixtureCriterionSTK::Clust::createCriterion (Clust::criterionType criterion)
 
IMixtureAlgoSTK::Clust::createAlgo (Clust::algoType algo, int nbIterMax, Real epsilon)
 utility function for creating an estimation algorithm.
 
IMixtureAlgoLearnSTK::Clust::createLearnAlgo (Clust::algoLearnType algo, int nbIterMax, Real epsilon)
 utility function for creating a learning algorithm.
 
IMixtureAlgoPredictSTK::Clust::createPredictAlgo (Clust::algoPredictType algo, int nbIterBurn, int nbIterLong, Real epsilon)
 utility function for creating a predicting algorithm.
 
IMixtureInitSTK::Clust::createInit (Clust::initType init=defaultInitType, int nbInits=defaultNbInit, Clust::algoType algo=defaultAlgoInInit, int nbIterMax=defaultNbIterMaxInInit, Real epsilon=defaultEpsilonInInit)
 Utility function for creating a model initializer.
 
IMixtureAlgoSTK::Clust::createShortRunAlgo (Clust::algoType algo=defaultAlgoShortRun, int nbIterMax=defaultMaxIterShortRun, Real epsilon=defaultEpsilonShortRun)
 utility function for creating a a short Run algorithm.
 
IMixtureAlgoSTK::Clust::createLongRunAlgo (Clust::algoType algo=defaultAlgoLongRun, int nbIterMax=defaultMaxIterLongRun, Real epsilon=defaultEpsilonLongRun)
 utility function for creating a long Run algorithm.
 
IMixtureStrategySTK::Clust::createSimpleStrategy (IMixtureComposer *&p_composer, int nbTry, IMixtureInit *const &p_init, IMixtureAlgo *const &algo)
 Utility function for creating a SimpleStrategy.
 
IMixtureStrategySTK::Clust::createFullStrategy (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 STK::Clust::defaultNbTry = 5
 Default number of try in an estimation strategy.
 
const Clust::initType STK::Clust::defaultInitType = randomFuzzyInit_
 Default algorithm type in short run.
 
const int STK::Clust::defaultNbInit = 5
 Default number of initializations to perform.
 
const Clust::algoType STK::Clust::defaultAlgoInInit = emAlgo_
 Default algorithm type in initialization.
 
const int STK::Clust::defaultNbIterMaxInInit = 20
 Default number of iteration in an initialization algorithm.
 
const Real STK::Clust::defaultEpsilonInInit = 1e-02
 Default epsilon in the short runs (used in strategy)
 
const Clust::algoType STK::Clust::defaultAlgoShortRun = emAlgo_
 Default algorithm type in short run.
 
const int STK::Clust::defaultMaxIterShortRun = 200
 Default number of iterations in the short runs (used in FullStrategy)
 
const Real STK::Clust::defaultEpsilonShortRun = 1e-04
 Default epsilon in the short runs (used in strategy)
 
const Clust::algoType STK::Clust::defaultAlgoLongRun = emAlgo_
 Default algorithm type in long run.
 
const int STK::Clust::defaultMaxIterLongRun = 1000
 Default number of iterations in the long run (used in FullStrategy)
 
const Real STK::Clust::defaultEpsilonLongRun = 1e-08
 Default epsilon in the long run (used in strategy)
 

Detailed Description

The project Clustering provides classes for modeling and estimating generative mixture model.

The aim of this project is to define Interfaces and specialized Classes in order to manipulate and estimate the parameters of any kind of generative mixture model.

In statistics, a mixture model is a probabilistic model for representing the presence of sub-populations within an overall population, without requiring that an observed data-set should identify the sub-population to which an individual observation belongs. Formally a mixture model </ corresponds to the mixture distribution that represents the probability distribution of observations in the overall population. However, while problems associated with mixture distributions relate to deriving the properties of the overall population from those of the sub-populations, mixture models are used to make statistical inferences about the properties of the sub-populations given only observations on the pooled population, without sub-population-identity information.

Some ways of implementing mixture models involve steps that attribute postulated sub-population-identities to individual observations (or weights towards such sub-populations), in which case these can be regarded as types of unsupervised learning or clustering procedures. However not all inference procedures involve such steps.

Enumeration Type Documentation

◆ algoLearnType

Learning estimation algorithms.

Enumerator
imputeAlgo_ 
simulAlgo_ 

Definition at line 193 of file STK_Clust_Util.h.

194{
197};

◆ algoPredictType

Learning estimation algorithms.

Enumerator
emPredictAlgo_ 
semiSEMPredictAlgo_ 

Definition at line 170 of file STK_Clust_Util.h.

◆ algoType

Estimation algorithms.

Enumerator
emAlgo_ 
cemAlgo_ 
semAlgo_ 
semiSemAlgo_ 

Definition at line 138 of file STK_Clust_Util.h.

139{
140 emAlgo_ = 0,
141 cemAlgo_ = 1,
142 semAlgo_ = 2,
143 semiSemAlgo_ = 3
144};

◆ criterionType

type of criterion to use in order to select the mixture model

Enumerator
aic_ 
bic_ 
icl_ 
ml_ 

Definition at line 229 of file STK_Clust_Util.h.

230{
231 aic_ = 0,
232 bic_ = 1,
233 icl_ = 2,
234 ml_ = 3
235};

◆ exceptions

Specific exceptions allowing to handle the erroros that can occur in the estimation process.

Enumerator
randomInitFail_ 
randomParamInitFail_ 
randomClassInitFail_ 
randomFuzzyInitFail_ 
estimFail_ 
initializeStepFail_ 
mStepFail_ 
eStepFail_ 
mapStepFail_ 
cStepFail_ 
sStepFail_ 

Definition at line 257 of file STK_Clust_Util.h.

◆ HDCovarianceModel

list of the HD covariance models that can be used

Enumerator
HDCovariance_AjkBkQkDk_ 
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_ 

Definition at line 315 of file STK_Clust_Util.h.

316{
348 HDCovariance_ABQD_ // =151
349};

◆ initType

initialization type.

There is four ways to initialize the mixture model:

  • using random values for the parameters
  • using random class for the sampling
  • using random probabilities class for the sampling
  • using parameters values
Enumerator
noInit_ 

no initialization

randomInit_ 

DEPRECATED.

randomParamInit_ 

initialize randomly the parameters

randomClassInit_ 

initialize randomly the class labels

randomFuzzyInit_ 

initialize randomly the partnership class probabilities

valueParamInit_ 

initialize parameters using given values

Definition at line 106 of file STK_Clust_Util.h.

107{
108 noInit_ = -1,
109 randomInit_ = -2,
110 randomParamInit_ = 0,
111 randomClassInit_ = 1,
112 randomFuzzyInit_ = 2,
113 valueParamInit_ = 3
114};
@ randomParamInit_
initialize randomly the parameters
@ valueParamInit_
initialize parameters using given values
@ randomFuzzyInit_
initialize randomly the partnership class probabilities
@ randomClassInit_
initialize randomly the class labels
@ randomInit_
DEPRECATED.
@ noInit_
no initialization

◆ Mixture

list of the mixtures that can be used by the composer

Enumerator
Gamma_ajk_bjk_ 
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_ 
Gaussian_sk_ 
Gaussian_sj_ 
Gaussian_s_ 
Gaussian_sjsk_ 
Categorical_pjk_ 
Categorical_pk_ 
Poisson_ljk_ 
Poisson_lk_ 
Poisson_ljlk_ 
Kmm_sk_ 
Kmm_s_ 
HDGaussian_AjkBkQkDk_ 
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_ 

Definition at line 617 of file STK_Clust_Util.h.

618{
630 Gamma_a_bk_, // = 11
631 Gaussian_sjk_ =20,
635 Gaussian_sjsk_, // = 24
638 Poisson_ljk_ = 60,
641 Kmm_sk_ = 80,
642 Kmm_s_,
671 HDGaussian_ABQD_, // =148
673};

◆ MixtureClass

list of the class of mixture implemented in stkpp

Enumerator
Gamma_ 
DiagGaussian_ 
Categorical_ 
Poisson_ 
Kmm_ 
Matrix_ 
HDGaussian_ 
HDMatrixGaussian_ 
unknown_mixture_class_ 

Definition at line 678 of file STK_Clust_Util.h.

◆ modelState

Give the state of the model.

Enumerator
modelCreated_ 

the model has been created but is not initialized

modelInitialized_ 

the model is initialized and its parameters are initialized to default values

modelParamInitialized_ 

The parameters of the model have been initialized.

shortRun_ 

A short run has been done.

longRun_ 

A long run has been done.

modelFinalized_ 

the model is finalized

Definition at line 282 of file STK_Clust_Util.h.

283{
284 modelCreated_ =0,
287 shortRun_,
288 longRun_,
290};
@ modelCreated_
the model has been created but is not initialized
@ longRun_
A long run has been done.
@ modelInitialized_
the model is initialized and its parameters are initialized to default values
@ modelFinalized_
the model is finalized
@ modelParamInitialized_
The parameters of the model have been initialized.
@ shortRun_
A short run has been done.

◆ ParsimoniousCovarianceModel

list of the parsimonious covariance models that can be used

Enumerator
Covariance_EII_ 
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_ 

Definition at line 295 of file STK_Clust_Util.h.

◆ strategyType

strategy of estimation

Enumerator
simpleStrategy_ 
XemStrategy_ 
SemStrategy_ 
FullStrategy_ 

Definition at line 218 of file STK_Clust_Util.h.

219{
220 simpleStrategy_ = 0,
221 XemStrategy_ = 1, // not implemented
222 SemStrategy_ = 2,
223 FullStrategy_ = 3
224};

Function Documentation

◆ createAlgo()

IMixtureAlgo * STK::Clust::createAlgo ( Clust::algoType  algo,
int  nbIterMax,
Real  epsilon 
)

utility function for creating an estimation algorithm.

Parameters
algothe algorithm to create
nbIterMax,epsilonthe maximal number of iteration and the tolerance of the algorithm

Definition at line 670 of file STK_Clust_Util.cpp.

671{
672 IMixtureAlgo* p_algo = 0;
673 switch (algo)
674 {
675 case emAlgo_:
676 p_algo = new EMAlgo();
677 break;
678 case cemAlgo_:
679 p_algo = new CEMAlgo();
680 break;
681 case semAlgo_:
682 p_algo = new SEMAlgo();
683 break;
684 case semiSemAlgo_:
685 p_algo = new SemiSEMAlgo();
686 break;
687 default:
688 break;
689 }
690 if (p_algo)
691 {
692 p_algo->setNbIterMax(nbIterMax);
693 p_algo->setEpsilon(epsilon);
694 }
695 return p_algo;
696}

References STK::Clust::cemAlgo_, STK::Clust::emAlgo_, STK::Clust::semAlgo_, and STK::Clust::semiSemAlgo_.

Referenced by STK::StrategyFacade::createFullStrategy(), STK::Clust::createInit(), STK::Clust::createLongRunAlgo(), STK::Clust::createShortRunAlgo(), and STK::StrategyFacade::createSimpleStrategy().

◆ createCriterion()

IMixtureCriterion * STK::Clust::createCriterion ( Clust::criterionType  criterion)
Parameters
criterionselection criterion to use
Returns
a pointer on the class computing the criterion

Definition at line 637 of file STK_Clust_Util.cpp.

638{
639 IMixtureCriterion* p_criter = 0;
640 switch (type)
641 {
642 case aic_:
643 p_criter = new AICMixtureCriterion();
644 break;
645 case bic_:
646 p_criter = new BICMixtureCriterion();
647 break;
648 case icl_:
649 p_criter = new ICLMixtureCriterion();
650 break;
651 case ml_:
652 p_criter = new MLMixtureCriterion();
653 break;
654 }
655 return p_criter;
656}

References STK::Clust::aic_, STK::Clust::bic_, STK::Clust::icl_, and STK::Clust::ml_.

Referenced by STK::Clust::createCriterion().

◆ createFullStrategy()

IMixtureStrategy * STK::Clust::createFullStrategy ( 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.

Parameters
p_composerthe composer to which we want to apply a the strategy.
nbTrythe maximal number of tries.
nbInitRunthe number of initialization to perform.
p_initthe initializer to use.
nbShortRunthe number of shortRun.
shortRunAlgothe algorithm to use in the short run.
longRunAlgothe algorithm to use in the long run.
Returns
an instance of the FullStrategy

Definition at line 821 of file STK_Clust_Util.cpp.

826{
827 FullStrategyParam* p_strategyParam = new FullStrategyParam();
828 p_strategyParam->nbInitRun_ = nbInitRun;
829 p_strategyParam->nbShortRun_ = nbShortRun;
830 p_strategyParam->p_shortAlgo_ = shortRunAlgo;
831 p_strategyParam->p_longAlgo_ = longRunAlgo;
832 FullStrategy* p_strategy = new FullStrategy(p_composer);
833 p_strategy->setNbTry(nbTry);
834 p_strategy->setMixtureInit(p_init);
835 p_strategy->setParam(p_strategyParam);
836 return p_strategy;
837}

Referenced by STK::StrategyFacade::createFullStrategy().

◆ createInit()

IMixtureInit * STK::Clust::createInit ( Clust::initType  init = defaultInitType,
int  nbInits = defaultNbInit,
Clust::algoType  algo = defaultAlgoInInit,
int  nbIterMax = defaultNbIterMaxInInit,
Real  epsilon = defaultEpsilonInInit 
)

Utility function for creating a model initializer.

Parameters
initthe kind of initializer to create
nbInitsthe number of initialization to try
algothe kind of algorithm to add to the initializer
nbIterMax,epsilonthe maximal number of iteration and the tolerance of the initialization algorithm

Definition at line 759 of file STK_Clust_Util.cpp.

760{
761 IMixtureInit* p_init = 0;
762 switch (init)
763 {
764 case Clust::noInit_:
765 p_init = 0;
766 break;
767 case Clust::randomInit_:
768 p_init = new RandomInit();
769 break;
770 case Clust::randomParamInit_:
771 p_init = new RandomInit();
772 break;
773 case Clust::randomClassInit_:
774 p_init = new ClassInit();
775 break;
776 case Clust::randomFuzzyInit_:
777 p_init = new FuzzyInit();
778 break;
779 default:
780 break;
781 }
782 if (p_init)
783 {
784 p_init->setNbTry(nbInits);
785 p_init->setInitAlgo(Clust::createAlgo(algo, nbIterMax, epsilon));
786 }
787 return p_init;
788}

References STK::Clust::createAlgo(), STK::Clust::noInit_, STK::Clust::randomClassInit_, STK::Clust::randomFuzzyInit_, STK::Clust::randomInit_, and STK::Clust::randomParamInit_.

Referenced by STK::StrategyFacade::createFullStrategy(), and STK::StrategyFacade::createSimpleStrategy().

◆ createLearnAlgo()

IMixtureAlgoLearn * STK::Clust::createLearnAlgo ( Clust::algoLearnType  algo,
int  nbIterMax,
Real  epsilon 
)

utility function for creating a learning algorithm.

Parameters
algothe algorithm to create
nbIterMax,epsilonthe maximal number of iteration and the tolerance of the algorithm

Definition at line 703 of file STK_Clust_Util.cpp.

704{
705 IMixtureAlgoLearn* p_algo = 0;
706 switch (algo)
707 {
708 case imputeAlgo_:
709 p_algo = new ImputeAlgo();
710 break;
711 case simulAlgo_:
712 p_algo = new SimulAlgo();
713 break;
714 default:
715 break;
716 }
717 if (p_algo)
718 {
719 p_algo->setNbIterMax(nbIterMax);
720 p_algo->setEpsilon(epsilon);
721 }
722 return p_algo;
723}

References STK::Clust::imputeAlgo_, and STK::Clust::simulAlgo_.

Referenced by STK::LearnFacade::createImputeAlgo(), and STK::LearnFacade::createSimulAlgo().

◆ createLongRunAlgo()

IMixtureAlgo * STK::Clust::createLongRunAlgo ( Clust::algoType  algo = defaultAlgoLongRun,
int  nbIterMax = defaultMaxIterLongRun,
Real  epsilon = defaultEpsilonLongRun 
)
inline

utility function for creating a long Run algorithm.

Parameters
algothe algorithm to create
nbIterMaxthe maximal number of iteration of the algorithm
epsilonthe tolerance of the algorithm

Definition at line 946 of file STK_Clust_Util.h.

949{ return createAlgo(algo, nbIterMax, epsilon);}
IMixtureAlgo * createAlgo(Clust::algoType algo, int nbIterMax, Real epsilon)
utility function for creating an estimation algorithm.

References STK::Clust::createAlgo().

◆ createPredictAlgo()

IMixtureAlgoPredict * STK::Clust::createPredictAlgo ( Clust::algoPredictType  algo,
int  nbIterBurn,
int  nbIterLong,
Real  epsilon 
)

utility function for creating a predicting algorithm.

Parameters
algothe algorithm to create
nbIterBurn,nbIterLong,epsilonnumber of iteration of the burning and estimation steps and tolerance of the algorithm

Definition at line 730 of file STK_Clust_Util.cpp.

731{
732 IMixtureAlgoPredict* p_algo = 0;
733 switch (algo)
734 {
735 case emPredictAlgo_:
736 p_algo = new EMPredict();
737 break;
739 p_algo = new SemiSEMPredict();
740 break;
741 default:
742 break;
743 }
744 if (p_algo)
745 {
746 p_algo->setNbIterBurn(nbIterBurn);
747 p_algo->setNbIterLong(nbIterLong);
748 p_algo->setEpsilon(epsilon);
749 }
750 return p_algo;
751}

References STK::Clust::emPredictAlgo_, and STK::Clust::semiSEMPredictAlgo_.

◆ createShortRunAlgo()

IMixtureAlgo * STK::Clust::createShortRunAlgo ( Clust::algoType  algo = defaultAlgoShortRun,
int  nbIterMax = defaultMaxIterShortRun,
Real  epsilon = defaultEpsilonShortRun 
)
inline

utility function for creating a a short Run algorithm.

Parameters
algothe algorithm to create
nbIterMaxthe maximal number of iteration of the algorithm
epsilonthe tolerance of the algorithm

Definition at line 936 of file STK_Clust_Util.h.

939{ return createAlgo(algo, nbIterMax, epsilon);}

References STK::Clust::createAlgo().

◆ createSimpleStrategy()

IMixtureStrategy * STK::Clust::createSimpleStrategy ( IMixtureComposer *&  p_composer,
int  nbTry,
IMixtureInit *const p_init,
IMixtureAlgo *const algo 
)

Utility function for creating a SimpleStrategy.

Parameters
p_composerthe composer to which we want to apply a the strategy.
nbTrythe number of tries.
p_initthe initializer to use.
algothe algorithm to use in the long run.
Returns
an instance of the SimpleStrategy

Definition at line 797 of file STK_Clust_Util.cpp.

801{
802 SimpleStrategyParam* p_strategyParam = new SimpleStrategyParam();
803 p_strategyParam->p_algo_ = algo;
804 SimpleStrategy* p_strategy = new SimpleStrategy(p_composer);
805 p_strategy->setNbTry(nbTry);
806 p_strategy->setMixtureInit(p_init);
807 p_strategy->setParam(p_strategyParam);
808 return p_strategy;
809}

Referenced by STK::StrategyFacade::createSimpleStrategy().

◆ exceptionToString()

String STK::Clust::exceptionToString ( exceptions const type)

convert a Clust::exceptions to a String.

Parameters
typethe type of exception that occur
Returns
the string associated to this exception.

Definition at line 178 of file STK_Clust_Util.cpp.

179{
180 if (type == randomInitFail_) return String(_T("RandomInit fail"));
181 if (type == randomClassInitFail_) return String(_T("RandomClassInit fail"));
182 if (type == randomFuzzyInitFail_) return String(_T("RandomFuzzyInit fail"));
183 if (type == randomParamInitFail_) return String(_T("RandomParamInit fail"));
184 if (type == initializeStepFail_) return String(_T("initializeStep fail"));
185 if (type == estimFail_) return String(_T("Estimation fail"));
186 if (type == mStepFail_) return String(_T("mStep fail"));
187 if (type == eStepFail_) return String(_T("eStep fail"));
188 if (type == mapStepFail_) return String(_T("mapStep fail"));
189 if (type == cStepFail_) return String(_T("cStep fail"));
190 if (type == sStepFail_) return String(_T("sStep fail"));
191 return String(_T("unknown exception"));
192}
#define _T(x)
Let x unmodified.
std::basic_string< Char > String
STK fundamental type of a String.

References _T, STK::Clust::cStepFail_, STK::Clust::eStepFail_, STK::Clust::estimFail_, STK::Clust::initializeStepFail_, STK::Clust::mapStepFail_, STK::Clust::mStepFail_, STK::Clust::randomClassInitFail_, STK::Clust::randomFuzzyInitFail_, STK::Clust::randomInitFail_, STK::Clust::randomParamInitFail_, and STK::Clust::sStepFail_.

Referenced by STK::IMixtureAlgoPredict::burnStep(), STK::IMixtureAlgoPredict::predictBayesClassifier(), STK::EMAlgo::run(), STK::CEMAlgo::run(), STK::SEMAlgo::run(), STK::SemiSEMAlgo::run(), STK::ImputeAlgo::run(), STK::SimulAlgo::run(), STK::EMPredict::run(), STK::SemiSEMPredict::run(), STK::RandomInit::run(), STK::ClassInit::run(), and STK::FuzzyInit::run().

◆ mixtureToMixtureClass()

MixtureClass STK::Clust::mixtureToMixtureClass ( Mixture const type)

convert a Mixture to a MixtureClass.

Parameters
typethe type of Mixture
Returns
the MixtureClass associated to this Mixture.

Definition at line 199 of file STK_Clust_Util.cpp.

200{
201 if (type == Gamma_ajk_bjk_) return Gamma_;
202 if (type == Gamma_ajk_bk_) return Gamma_;
203 if (type == Gamma_ajk_bj_) return Gamma_;
204 if (type == Gamma_ajk_b_) return Gamma_;
205 if (type == Gamma_ak_bjk_) return Gamma_;
206 if (type == Gamma_ak_bk_) return Gamma_;
207 if (type == Gamma_ak_bj_) return Gamma_;
208 if (type == Gamma_ak_b_) return Gamma_;
209 if (type == Gamma_aj_bjk_) return Gamma_;
210 if (type == Gamma_aj_bk_) return Gamma_;
211 if (type == Gamma_a_bjk_) return Gamma_;
212 if (type == Gamma_a_bk_) return Gamma_;
213 if (type == Gaussian_sjk_) return DiagGaussian_;
214 if (type == Gaussian_sk_) return DiagGaussian_;
215 if (type == Gaussian_sj_) return DiagGaussian_;
216 if (type == Gaussian_s_) return DiagGaussian_;
217 if (type == Gaussian_sjsk_) return DiagGaussian_;
218 if (type == HDGaussian_AjkBkQkDk_) return HDGaussian_;
219 if (type == HDGaussian_AjkBkQkD_) return HDGaussian_;
220 if (type == HDGaussian_AjkBkQDk_) return HDGaussian_;
221 if (type == HDGaussian_AjkBkQD_) return HDGaussian_;
222 if (type == HDGaussian_AjkBQkDk_) return HDGaussian_;
223 if (type == HDGaussian_AjkBQkD_) return HDGaussian_;
224 if (type == HDGaussian_AjkBQDk_) return HDGaussian_;
225 if (type == HDGaussian_AjkBQD_) return HDGaussian_;
226 if (type == HDGaussian_AkBkQkDk_) return HDGaussian_;
227 if (type == HDGaussian_AkBkQkD_) return HDGaussian_;
228 if (type == HDGaussian_AkBkQDk_) return HDGaussian_;
229 if (type == HDGaussian_AkBkQD_) return HDGaussian_;
230 if (type == HDGaussian_AkBQkDk_) return HDGaussian_;
231 if (type == HDGaussian_AkBQkD_) return HDGaussian_;
232 if (type == HDGaussian_AkBQDk_) return HDGaussian_;
233 if (type == HDGaussian_AkBQD_) return HDGaussian_;
234 if (type == HDGaussian_AjBkQkDk_) return HDGaussian_;
235 if (type == HDGaussian_AjBkQkD_) return HDGaussian_;
236 if (type == HDGaussian_AjBkQDk_) return HDGaussian_;
237 if (type == HDGaussian_AjBkQD_) return HDGaussian_;
238 if (type == HDGaussian_AjBQkDk_) return HDGaussian_;
239 if (type == HDGaussian_AjBQkD_) return HDGaussian_;
240 if (type == HDGaussian_ABkQkDk_) return HDGaussian_;
241 if (type == HDGaussian_ABkQkD_) return HDGaussian_;
242 if (type == HDGaussian_ABkQDk_) return HDGaussian_;
243 if (type == HDGaussian_ABkQD_) return HDGaussian_;
244 if (type == HDGaussian_ABQkDk_) return HDGaussian_;
245 if (type == HDGaussian_ABQkD_) return HDGaussian_;
246 if (type == Categorical_pjk_) return Categorical_;
247 if (type == Categorical_pk_) return Categorical_;
248 if (type == Poisson_ljk_) return Poisson_;
249 if (type == Poisson_lk_) return Poisson_;
250 if (type == Poisson_ljlk_) return Poisson_;
251 if (type == Kmm_sk_) return Kmm_;
252 if (type == Kmm_s_) return Kmm_;
253 if (type == unknown_mixture_) return unknown_mixture_class_;
254 return unknown_mixture_class_; // avoid compiler warning
255}

References STK::Clust::Categorical_, STK::Clust::Categorical_pjk_, STK::Clust::Categorical_pk_, STK::Clust::DiagGaussian_, STK::Clust::Gamma_, STK::Clust::Gamma_a_bjk_, STK::Clust::Gamma_a_bk_, STK::Clust::Gamma_aj_bjk_, STK::Clust::Gamma_aj_bk_, STK::Clust::Gamma_ajk_b_, STK::Clust::Gamma_ajk_bj_, STK::Clust::Gamma_ajk_bjk_, STK::Clust::Gamma_ajk_bk_, STK::Clust::Gamma_ak_b_, STK::Clust::Gamma_ak_bj_, STK::Clust::Gamma_ak_bjk_, STK::Clust::Gamma_ak_bk_, STK::Clust::Gaussian_s_, STK::Clust::Gaussian_sj_, STK::Clust::Gaussian_sjk_, STK::Clust::Gaussian_sjsk_, STK::Clust::Gaussian_sk_, STK::Clust::HDGaussian_, STK::Clust::HDGaussian_ABkQD_, STK::Clust::HDGaussian_ABkQDk_, STK::Clust::HDGaussian_ABkQkD_, STK::Clust::HDGaussian_ABkQkDk_, STK::Clust::HDGaussian_ABQkD_, STK::Clust::HDGaussian_ABQkDk_, STK::Clust::HDGaussian_AjBkQD_, STK::Clust::HDGaussian_AjBkQDk_, STK::Clust::HDGaussian_AjBkQkD_, STK::Clust::HDGaussian_AjBkQkDk_, STK::Clust::HDGaussian_AjBQkD_, STK::Clust::HDGaussian_AjBQkDk_, STK::Clust::HDGaussian_AjkBkQD_, STK::Clust::HDGaussian_AjkBkQDk_, STK::Clust::HDGaussian_AjkBkQkD_, STK::Clust::HDGaussian_AjkBkQkDk_, STK::Clust::HDGaussian_AjkBQD_, STK::Clust::HDGaussian_AjkBQDk_, STK::Clust::HDGaussian_AjkBQkD_, STK::Clust::HDGaussian_AjkBQkDk_, STK::Clust::HDGaussian_AkBkQD_, STK::Clust::HDGaussian_AkBkQDk_, STK::Clust::HDGaussian_AkBkQkD_, STK::Clust::HDGaussian_AkBkQkDk_, STK::Clust::HDGaussian_AkBQD_, STK::Clust::HDGaussian_AkBQDk_, STK::Clust::HDGaussian_AkBQkD_, STK::Clust::HDGaussian_AkBQkDk_, STK::Clust::Kmm_, STK::Clust::Kmm_s_, STK::Clust::Kmm_sk_, STK::Clust::Poisson_, STK::Clust::Poisson_ljk_, STK::Clust::Poisson_ljlk_, STK::Clust::Poisson_lk_, STK::Clust::unknown_mixture_, and STK::Clust::unknown_mixture_class_.

Referenced by STK::MixtureComposerFacade< DataHandler_ >::getParameters(), and STK::MixtureComposerFacade< DataHandler_ >::setParameters().

◆ mixtureToString() [1/2]

String STK::Clust::mixtureToString ( Mixture const type)

convert a Mixture to a String.

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

Definition at line 453 of file STK_Clust_Util.cpp.

454{
455 if (type == Gamma_ajk_bjk_) return String(_T("Gamma_ajk_bjk"));
456 if (type == Gamma_ajk_bk_) return String(_T("Gamma_ajk_bk"));
457 if (type == Gamma_ajk_bj_) return String(_T("Gamma_ajk_bj"));
458 if (type == Gamma_ajk_b_) return String(_T("Gamma_ajk_b"));
459 if (type == Gamma_ak_bjk_) return String(_T("Gamma_ak_bjk"));
460 if (type == Gamma_ak_bk_) return String(_T("Gamma_ak_bk"));
461 if (type == Gamma_ak_bj_) return String(_T("Gamma_ak_bj"));
462 if (type == Gamma_ak_b_) return String(_T("Gamma_ak_b"));
463 if (type == Gamma_aj_bjk_) return String(_T("Gamma_aj_bjk"));
464 if (type == Gamma_aj_bk_) return String(_T("Gamma_aj_bk"));
465 if (type == Gamma_a_bjk_) return String(_T("Gamma_a_bjk"));
466 if (type == Gamma_a_bk_) return String(_T("Gamma_a_bk"));
467 if (type == Gaussian_sjk_) return String(_T("Gaussian_sjk"));
468 if (type == Gaussian_sk_) return String(_T("Gaussian_sk"));
469 if (type == Gaussian_sj_) return String(_T("Gaussian_sj"));
470 if (type == Gaussian_s_) return String(_T("Gaussian_s"));
471 if (type == Gaussian_sjsk_) return String(_T("Gaussian_sjsk"));
472 if (type == Categorical_pjk_) return String(_T("Categorical_pjk"));
473 if (type == Categorical_pk_) return String(_T("Categorical_pk"));
474 if (type == Poisson_ljk_) return String(_T("Poisson_ljk"));
475 if (type == Poisson_lk_) return String(_T("Poisson_lk"));
476 if (type == Poisson_ljlk_) return String(_T("Poisson_ljlk"));
477 if (type == Kmm_sk_) return String(_T("Kmm_sk"));
478 if (type == Kmm_s_) return String(_T("Kmm_s"));
479 if (type == HDGaussian_AjkBkQkDk_) return String(_T("HDGaussian_AjkBkQkDk"));
480 if (type == HDGaussian_AjkBkQkD_) return String(_T("HDGaussian_AjkBkQkD"));
481 if (type == HDGaussian_AjkBkQDk_) return String(_T("HDGaussian_AjkBkQDk"));
482 if (type == HDGaussian_AjkBkQD_) return String(_T("HDGaussian_AjkBkQD"));
483 if (type == HDGaussian_AjkBQkDk_) return String(_T("HDGaussian_AjkBQkDk"));
484 if (type == HDGaussian_AjkBQkD_) return String(_T("HDGaussian_AjkBQkD"));
485 if (type == HDGaussian_AjkBQDk_) return String(_T("HDGaussian_AjkBQDk"));
486 if (type == HDGaussian_AjkBQD_) return String(_T("HDGaussian_AjkBQD"));
487 if (type == HDGaussian_AkBkQkDk_) return String(_T("HDGaussian_AkBkQkDk"));
488 if (type == HDGaussian_AkBkQkD_) return String(_T("HDGaussian_AkBkQkD"));
489 if (type == HDGaussian_AkBkQDk_) return String(_T("HDGaussian_AkBkQDk"));
490 if (type == HDGaussian_AkBkQD_) return String(_T("HDGaussian_AkBkQD"));
491 if (type == HDGaussian_AkBQkDk_) return String(_T("HDGaussian_AkBQkDk"));
492 if (type == HDGaussian_AkBQkD_) return String(_T("HDGaussian_AkBQkD"));
493 if (type == HDGaussian_AkBQDk_) return String(_T("HDGaussian_AkBQDk"));
494 if (type == HDGaussian_AkBQD_) return String(_T("HDGaussian_AkBQD"));
495 if (type == HDGaussian_AjBkQkDk_) return String(_T("HDGaussian_AjBkQkDk"));
496 if (type == HDGaussian_AjBkQkD_) return String(_T("HDGaussian_AjBkQkD"));
497 if (type == HDGaussian_AjBkQDk_) return String(_T("HDGaussian_AjBkQDk"));
498 if (type == HDGaussian_AjBkQD_) return String(_T("HDGaussian_AjBkQD"));
499 if (type == HDGaussian_AjBQkDk_) return String(_T("HDGaussian_AjBQkDk"));
500 if (type == HDGaussian_AjBQkD_) return String(_T("HDGaussian_AjBQkD"));
501 if (type == HDGaussian_ABkQkDk_) return String(_T("HDGaussian_ABkQkDk"));
502 if (type == HDGaussian_ABkQkD_) return String(_T("HDGaussian_ABkQkD"));
503 if (type == HDGaussian_ABkQDk_) return String(_T("HDGaussian_ABkQDk"));
504 if (type == HDGaussian_ABkQD_) return String(_T("HDGaussian_ABkQD"));
505 if (type == HDGaussian_ABQkDk_) return String(_T("HDGaussian_ABQkDk"));
506 if (type == HDGaussian_ABQkD_) return String(_T("HDGaussian_ABQkD"));
507 if (type == HDGaussian_ABQD_) return String(_T("HDGaussian_ABQD"));
508 return String(_T("unknown"));
509}

References _T, STK::Clust::Categorical_pjk_, STK::Clust::Categorical_pk_, STK::Clust::Gamma_a_bjk_, STK::Clust::Gamma_a_bk_, STK::Clust::Gamma_aj_bjk_, STK::Clust::Gamma_aj_bk_, STK::Clust::Gamma_ajk_b_, STK::Clust::Gamma_ajk_bj_, STK::Clust::Gamma_ajk_bjk_, STK::Clust::Gamma_ajk_bk_, STK::Clust::Gamma_ak_b_, STK::Clust::Gamma_ak_bj_, STK::Clust::Gamma_ak_bjk_, STK::Clust::Gamma_ak_bk_, STK::Clust::Gaussian_s_, STK::Clust::Gaussian_sj_, STK::Clust::Gaussian_sjk_, STK::Clust::Gaussian_sjsk_, STK::Clust::Gaussian_sk_, STK::Clust::HDGaussian_ABkQD_, STK::Clust::HDGaussian_ABkQDk_, STK::Clust::HDGaussian_ABkQkD_, STK::Clust::HDGaussian_ABkQkDk_, STK::Clust::HDGaussian_ABQD_, STK::Clust::HDGaussian_ABQkD_, STK::Clust::HDGaussian_ABQkDk_, STK::Clust::HDGaussian_AjBkQD_, STK::Clust::HDGaussian_AjBkQDk_, STK::Clust::HDGaussian_AjBkQkD_, STK::Clust::HDGaussian_AjBkQkDk_, STK::Clust::HDGaussian_AjBQkD_, STK::Clust::HDGaussian_AjBQkDk_, STK::Clust::HDGaussian_AjkBkQD_, STK::Clust::HDGaussian_AjkBkQDk_, STK::Clust::HDGaussian_AjkBkQkD_, STK::Clust::HDGaussian_AjkBkQkDk_, STK::Clust::HDGaussian_AjkBQD_, STK::Clust::HDGaussian_AjkBQDk_, STK::Clust::HDGaussian_AjkBQkD_, STK::Clust::HDGaussian_AjkBQkDk_, STK::Clust::HDGaussian_AkBkQD_, STK::Clust::HDGaussian_AkBkQDk_, STK::Clust::HDGaussian_AkBkQkD_, STK::Clust::HDGaussian_AkBkQkDk_, STK::Clust::HDGaussian_AkBQD_, STK::Clust::HDGaussian_AkBQDk_, STK::Clust::HDGaussian_AkBQkD_, STK::Clust::HDGaussian_AkBQkDk_, STK::Clust::Kmm_s_, STK::Clust::Kmm_sk_, STK::Clust::Poisson_ljk_, STK::Clust::Poisson_ljlk_, and STK::Clust::Poisson_lk_.

◆ mixtureToString() [2/2]

String STK::Clust::mixtureToString ( Mixture  type,
bool  freeProp 
)

convert a Mixture to a string specifying if the model is with free proportions.

See also
stringToMixture
Parameters
typethe Mixture we want to convert
freeProptrue if the model have free proportions, false otherwise.
Returns
the string represented by the Mixture type.

Definition at line 519 of file STK_Clust_Util.cpp.

520{
521 if (freeProp == false)
522 {
523 if (type == Gamma_ajk_bjk_) return String(_T("Gamma_p_ajk_bjk"));
524 if (type == Gamma_ajk_bk_) return String(_T("Gamma_p_ajk_bk"));
525 if (type == Gamma_ajk_bj_) return String(_T("Gamma_p_ajk_bj"));
526 if (type == Gamma_ajk_b_) return String(_T("Gamma_p_ajk_b"));
527 if (type == Gamma_ak_bjk_) return String(_T("Gamma_p_ak_bjk"));
528 if (type == Gamma_ak_bk_) return String(_T("Gamma_p_ak_bk"));
529 if (type == Gamma_ak_bj_) return String(_T("Gamma_p_ak_bj"));
530 if (type == Gamma_ak_b_) return String(_T("Gamma_p_ak_b"));
531 if (type == Gamma_aj_bjk_) return String(_T("Gamma_p_aj_bjk"));
532 if (type == Gamma_aj_bk_) return String(_T("Gamma_p_aj_bk"));
533 if (type == Gamma_a_bjk_) return String(_T("Gamma_p_a_bjk"));
534 if (type == Gamma_a_bk_) return String(_T("Gamma_p_a_bk"));
535 if (type == Gaussian_sjk_) return String(_T("Gaussian_p_sjk"));
536 if (type == Gaussian_sk_) return String(_T("Gaussian_p_sk"));
537 if (type == Gaussian_sj_) return String(_T("Gaussian_p_sj"));
538 if (type == Gaussian_s_) return String(_T("Gaussian_p_s"));
539 if (type == Gaussian_sjsk_) return String(_T("Gaussian_p_sjsk"));
540 if (type == Categorical_pjk_) return String(_T("Categorical_p_pjk"));
541 if (type == Categorical_pk_) return String(_T("Categorical_p_pk"));
542 if (type == Poisson_ljk_) return String(_T("Poisson_p_ljk"));
543 if (type == Poisson_lk_) return String(_T("Poisson_p_lk"));
544 if (type == Poisson_ljlk_) return String(_T("Poisson_p_ljlk"));
545 if (type == Poisson_ljlk_) return String(_T("Poisson_p_ljlk"));
546 if (type == Kmm_sk_) return String(_T("Kmm_p_sk"));
547 if (type == Kmm_s_) return String(_T("Kmm_p_s"));
548 if (type == HDGaussian_AjkBkQkDk_) return String(_T("HDGaussian_p_AjkBkQkDk"));
549 if (type == HDGaussian_AjkBkQkD_) return String(_T("HDGaussian_p_AjkBkQkD"));
550 if (type == HDGaussian_AjkBkQDk_) return String(_T("HDGaussian_p_AjkBkQDk"));
551 if (type == HDGaussian_AjkBkQD_) return String(_T("HDGaussian_p_AjkBkQD"));
552 if (type == HDGaussian_AjkBQkDk_) return String(_T("HDGaussian_p_AjkBQkDk"));
553 if (type == HDGaussian_AjkBQkD_) return String(_T("HDGaussian_p_AjkBQkD"));
554 if (type == HDGaussian_AjkBQDk_) return String(_T("HDGaussian_p_AjkBQDk"));
555 if (type == HDGaussian_AjkBQD_) return String(_T("HDGaussian_p_AjkBQD"));
556 if (type == HDGaussian_AkBkQkDk_) return String(_T("HDGaussian_p_AkBkQkDk"));
557 if (type == HDGaussian_AkBkQkD_) return String(_T("HDGaussian_p_AkBkQkD"));
558 if (type == HDGaussian_AkBkQDk_) return String(_T("HDGaussian_p_AkBkQDk"));
559 if (type == HDGaussian_AkBkQD_) return String(_T("HDGaussian_p_AkBkQD"));
560 if (type == HDGaussian_AkBQkDk_) return String(_T("HDGaussian_p_AkBQkDk"));
561 if (type == HDGaussian_AkBQkD_) return String(_T("HDGaussian_p_AkBQkD"));
562 if (type == HDGaussian_AkBQDk_) return String(_T("HDGaussian_p_AkBQDk"));
563 if (type == HDGaussian_AkBQD_) return String(_T("HDGaussian_p_AkBQD"));
564 if (type == HDGaussian_AjBkQkDk_) return String(_T("HDGaussian_p_AjBkQkDk"));
565 if (type == HDGaussian_AjBkQkD_) return String(_T("HDGaussian_p_AjBkQkD"));
566 if (type == HDGaussian_AjBkQDk_) return String(_T("HDGaussian_p_AjBkQDk"));
567 if (type == HDGaussian_AjBkQD_) return String(_T("HDGaussian_p_AjBkQD"));
568 if (type == HDGaussian_AjBQkDk_) return String(_T("HDGaussian_p_AjBQkDk"));
569 if (type == HDGaussian_AjBQkD_) return String(_T("HDGaussian_p_AjBQkD"));
570 if (type == HDGaussian_ABkQkDk_) return String(_T("HDGaussian_p_ABkQkDk"));
571 if (type == HDGaussian_ABkQkD_) return String(_T("HDGaussian_p_ABkQkD"));
572 if (type == HDGaussian_ABkQDk_) return String(_T("HDGaussian_p_ABkQDk"));
573 if (type == HDGaussian_ABkQD_) return String(_T("HDGaussian_p_ABkQD"));
574 if (type == HDGaussian_ABQkDk_) return String(_T("HDGaussian_p_ABQkDk"));
575 if (type == HDGaussian_ABQkD_) return String(_T("HDGaussian_p_ABQkD"));
576 if (type == HDGaussian_ABQD_) return String(_T("HDGaussian_p_ABQD"));
577 }
578 else
579 {
580 if (type == Gamma_ajk_bjk_) return String(_T("Gamma_pk_ajk_bjk"));
581 if (type == Gamma_ajk_bk_) return String(_T("Gamma_pk_ajk_bk"));
582 if (type == Gamma_ajk_bj_) return String(_T("Gamma_pk_ajk_bj"));
583 if (type == Gamma_ajk_b_) return String(_T("Gamma_pk_ajk_b"));
584 if (type == Gamma_ak_bjk_) return String(_T("Gamma_pk_ak_bjk"));
585 if (type == Gamma_ak_bk_) return String(_T("Gamma_pk_ak_bk"));
586 if (type == Gamma_ak_bj_) return String(_T("Gamma_pk_ak_bj"));
587 if (type == Gamma_ak_b_) return String(_T("Gamma_pk_ak_b"));
588 if (type == Gamma_aj_bjk_) return String(_T("Gamma_pk_aj_bjk"));
589 if (type == Gamma_aj_bk_) return String(_T("Gamma_pk_aj_bk"));
590 if (type == Gamma_a_bjk_) return String(_T("Gamma_pk_a_bjk"));
591 if (type == Gamma_a_bk_) return String(_T("Gamma_pk_a_bk"));
592 if (type == Gaussian_sjk_) return String(_T("Gaussian_pk_sjk"));
593 if (type == Gaussian_sk_) return String(_T("Gaussian_pk_sk"));
594 if (type == Gaussian_sj_) return String(_T("Gaussian_pk_sj"));
595 if (type == Gaussian_s_) return String(_T("Gaussian_pk_s"));
596 if (type == Gaussian_sjsk_) return String(_T("Gaussian_pk_sjsk"));
597 if (type == Categorical_pjk_) return String(_T("Categorical_pk_pjk"));
598 if (type == Categorical_pk_) return String(_T("Categorical_pk_pk"));
599 if (type == Poisson_ljk_) return String(_T("Poisson_pk_ljk"));
600 if (type == Poisson_lk_) return String(_T("Poisson_pk_lk"));
601 if (type == Poisson_ljlk_) return String(_T("Poisson_pk_ljlk"));
602 if (type == Kmm_sk_) return String(_T("Kmm_pk_sk"));
603 if (type == Kmm_s_) return String(_T("Kmm_pk_s"));
604 if (type == HDGaussian_AjkBkQkDk_) return String(_T("HDGaussian_pk_AjkBkQkDk"));
605 if (type == HDGaussian_AjkBkQkD_) return String(_T("HDGaussian_pk_AjkBkQkD"));
606 if (type == HDGaussian_AjkBkQDk_) return String(_T("HDGaussian_pk_AjkBkQDk"));
607 if (type == HDGaussian_AjkBkQD_) return String(_T("HDGaussian_pk_AjkBkQD"));
608 if (type == HDGaussian_AjkBQkDk_) return String(_T("HDGaussian_pk_AjkBQkDk"));
609 if (type == HDGaussian_AjkBQkD_) return String(_T("HDGaussian_pk_AjkBQkD"));
610 if (type == HDGaussian_AjkBQDk_) return String(_T("HDGaussian_pk_AjkBQDk"));
611 if (type == HDGaussian_AjkBQD_) return String(_T("HDGaussian_pk_AjkBQD"));
612 if (type == HDGaussian_AkBkQkDk_) return String(_T("HDGaussian_pk_AkBkQkDk"));
613 if (type == HDGaussian_AkBkQkD_) return String(_T("HDGaussian_pk_AkBkQkD"));
614 if (type == HDGaussian_AkBkQDk_) return String(_T("HDGaussian_pk_AkBkQDk"));
615 if (type == HDGaussian_AkBkQD_) return String(_T("HDGaussian_pk_AkBkQD"));
616 if (type == HDGaussian_AkBQkDk_) return String(_T("HDGaussian_pk_AkBQkDk"));
617 if (type == HDGaussian_AkBQkD_) return String(_T("HDGaussian_pk_AkBQkD"));
618 if (type == HDGaussian_AkBQDk_) return String(_T("HDGaussian_pk_AkBQDk"));
619 if (type == HDGaussian_AkBQD_) return String(_T("HDGaussian_pk_AkBQD"));
620 if (type == HDGaussian_AjBkQkDk_) return String(_T("HDGaussian_pk_AjBkQkDk"));
621 if (type == HDGaussian_AjBkQkD_) return String(_T("HDGaussian_pk_AjBkQkD"));
622 if (type == HDGaussian_AjBkQDk_) return String(_T("HDGaussian_pk_AjBkQDk"));
623 if (type == HDGaussian_AjBkQD_) return String(_T("HDGaussian_pk_AjBkQD"));
624 if (type == HDGaussian_AjBQkDk_) return String(_T("HDGaussian_pk_AjBQkDk"));
625 if (type == HDGaussian_AjBQkD_) return String(_T("HDGaussian_pk_AjBQkD"));
626 if (type == HDGaussian_ABkQkDk_) return String(_T("HDGaussian_pk_ABkQkDk"));
627 if (type == HDGaussian_ABkQkD_) return String(_T("HDGaussian_pk_ABkQkD"));
628 if (type == HDGaussian_ABkQDk_) return String(_T("HDGaussian_pk_ABkQDk"));
629 if (type == HDGaussian_ABkQD_) return String(_T("HDGaussian_pk_ABkQD"));
630 if (type == HDGaussian_ABQkDk_) return String(_T("HDGaussian_pk_ABQkDk"));
631 if (type == HDGaussian_ABQkD_) return String(_T("HDGaussian_pk_ABQkD"));
632 if (type == HDGaussian_ABQD_) return String(_T("HDGaussian_pk_ABQD"));
633 }
634 return String(_T("unknown"));
635}

References _T, STK::Clust::Categorical_pjk_, STK::Clust::Categorical_pk_, STK::Clust::Gamma_a_bjk_, STK::Clust::Gamma_a_bk_, STK::Clust::Gamma_aj_bjk_, STK::Clust::Gamma_aj_bk_, STK::Clust::Gamma_ajk_b_, STK::Clust::Gamma_ajk_bj_, STK::Clust::Gamma_ajk_bjk_, STK::Clust::Gamma_ajk_bk_, STK::Clust::Gamma_ak_b_, STK::Clust::Gamma_ak_bj_, STK::Clust::Gamma_ak_bjk_, STK::Clust::Gamma_ak_bk_, STK::Clust::Gaussian_s_, STK::Clust::Gaussian_sj_, STK::Clust::Gaussian_sjk_, STK::Clust::Gaussian_sjsk_, STK::Clust::Gaussian_sk_, STK::Clust::HDGaussian_ABkQD_, STK::Clust::HDGaussian_ABkQDk_, STK::Clust::HDGaussian_ABkQkD_, STK::Clust::HDGaussian_ABkQkDk_, STK::Clust::HDGaussian_ABQD_, STK::Clust::HDGaussian_ABQkD_, STK::Clust::HDGaussian_ABQkDk_, STK::Clust::HDGaussian_AjBkQD_, STK::Clust::HDGaussian_AjBkQDk_, STK::Clust::HDGaussian_AjBkQkD_, STK::Clust::HDGaussian_AjBkQkDk_, STK::Clust::HDGaussian_AjBQkD_, STK::Clust::HDGaussian_AjBQkDk_, STK::Clust::HDGaussian_AjkBkQD_, STK::Clust::HDGaussian_AjkBkQDk_, STK::Clust::HDGaussian_AjkBkQkD_, STK::Clust::HDGaussian_AjkBkQkDk_, STK::Clust::HDGaussian_AjkBQD_, STK::Clust::HDGaussian_AjkBQDk_, STK::Clust::HDGaussian_AjkBQkD_, STK::Clust::HDGaussian_AjkBQkDk_, STK::Clust::HDGaussian_AkBkQD_, STK::Clust::HDGaussian_AkBkQDk_, STK::Clust::HDGaussian_AkBkQkD_, STK::Clust::HDGaussian_AkBkQkDk_, STK::Clust::HDGaussian_AkBQD_, STK::Clust::HDGaussian_AkBQDk_, STK::Clust::HDGaussian_AkBQkD_, STK::Clust::HDGaussian_AkBQkDk_, STK::Clust::Kmm_s_, STK::Clust::Kmm_sk_, STK::Clust::Poisson_ljk_, STK::Clust::Poisson_ljlk_, and STK::Clust::Poisson_lk_.

◆ stringToAlgo()

algoType STK::Clust::stringToAlgo ( String const type)

Convert a String to an algoType.

The recognized strings are

Algorithm
"emAlgo"
"cemAlgo"
"semAlgo"
"semiSemAlgo"
"em"
"cem"
"sem"
"semiSem"
Parameters
typethe type of algorithm wanted
Returns
the algoType corresponding (default is emAlgo)
Note
The capitalized letters have no effect and if the string is not found in the list above, the type Clust::emAlgo_ is returned.

Definition at line 93 of file STK_Clust_Util.cpp.

94{
95 if (toUpperString(type) == toUpperString(_T("emAlgo"))) return emAlgo_;
96 if (toUpperString(type) == toUpperString(_T("cemAlgo"))) return cemAlgo_;
97 if (toUpperString(type) == toUpperString(_T("semAlgo"))) return semAlgo_;
98 if (toUpperString(type) == toUpperString(_T("semiSemAlgo"))) return semiSemAlgo_;
99 if (toUpperString(type) == toUpperString(_T("em"))) return emAlgo_;
100 if (toUpperString(type) == toUpperString(_T("cem"))) return cemAlgo_;
101 if (toUpperString(type) == toUpperString(_T("sem"))) return semAlgo_;
102 if (toUpperString(type) == toUpperString(_T("semiSem"))) return semiSemAlgo_;
103 return emAlgo_;
104}
String const & toUpperString(String &s)
convert the characters of the String to upper case
Definition STK_String.h:134

References _T, STK::Clust::cemAlgo_, STK::Clust::emAlgo_, STK::Clust::semAlgo_, STK::Clust::semiSemAlgo_, and STK::toUpperString().

◆ stringToCriterion()

criterionType STK::Clust::stringToCriterion ( String const type)

Convert a String to an criterionType.

The recognized strings are

Criterion
"AIC"
"BIC"
"ICL </td></tr> <tr> <td> "ML"
Parameters
typethe type of criterion wanted
Returns
the criterionType corresponding
Note
The capitalized letters have no effect and if the string is not found in the list above,the type Clust::bic_ is returned.

Definition at line 164 of file STK_Clust_Util.cpp.

165{
166 if (toUpperString(type) == toUpperString(_T("AIC"))) return aic_;
167 if (toUpperString(type) == toUpperString(_T("BIC"))) return bic_;
168 if (toUpperString(type) == toUpperString(_T("ICL"))) return icl_;
169 if (toUpperString(type) == toUpperString(_T("ML"))) return ml_;
170 return bic_;
171}

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

Referenced by STK::Clust::createCriterion().

◆ stringToInit()

initType STK::Clust::stringToInit ( String const type)

Convert a String to a initType.

The recognized strings are

Initialization
"randomInit" (DEPECATED)
"randomParamInit"
"randomClassInit"
"randomFuzzyInit"
"random"
"class"
"fuzzy"
Parameters
typethe type of initialization wanted
Returns
the initType corresponding (default is randomClassInit)
Note
if the string is not found in the list above,the type Clust::randomClassInit_ is returned.

Definition at line 65 of file STK_Clust_Util.cpp.

66{
67 if (toUpperString(type) == toUpperString(_T("randomInit"))) return randomParamInit_;
68 if (toUpperString(type) == toUpperString(_T("randomParamInit"))) return randomParamInit_;
69 if (toUpperString(type) == toUpperString(_T("randomClassInit"))) return randomClassInit_;
70 if (toUpperString(type) == toUpperString(_T("randomFuzzyInit"))) return randomFuzzyInit_;
71 if (toUpperString(type) == toUpperString(_T("random"))) return randomParamInit_;
72 if (toUpperString(type) == toUpperString(_T("class"))) return randomClassInit_;
73 if (toUpperString(type) == toUpperString(_T("fuzzy"))) return randomFuzzyInit_;
74 return randomClassInit_;
75}

References _T, STK::Clust::randomClassInit_, STK::Clust::randomFuzzyInit_, STK::Clust::randomParamInit_, and STK::toUpperString().

◆ stringToLearnAlgo()

algoLearnType STK::Clust::stringToLearnAlgo ( String const type)

Convert a String to an algoLearnType.

The recognized strings are

Algorithm
"imputeAlgo"
"simulAlgo"
"impute"
"simul"
Parameters
typethe type of algorithm wanted
Returns
the algoType corresponding (default is emAlgo)
Note
The capitalized letters have no effect and if the string is not found in the list above,the type Clust::emAlgo_ is returned.

Definition at line 139 of file STK_Clust_Util.cpp.

140{
141 if (toUpperString(type) == toUpperString(_T("imputeAlgo"))) return imputeAlgo_;
142 if (toUpperString(type) == toUpperString(_T("simulAlgo"))) return simulAlgo_;
143 if (toUpperString(type) == toUpperString(_T("impute"))) return imputeAlgo_;
144 if (toUpperString(type) == toUpperString(_T("simul"))) return simulAlgo_;
145 return imputeAlgo_;
146}

References _T, STK::Clust::imputeAlgo_, STK::Clust::simulAlgo_, and STK::toUpperString().

◆ stringToMixture() [1/2]

Mixture STK::Clust::stringToMixture ( String const type)

Convert a String to a Mixture.

The recognized strings are

Model
"Gamma_Ajkbjk"
"Gamma_Ajkbk"
"Gamma_Ajkbj"
"Gamma_Ajkb"
"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"
"Gaussian_sk"
"Gaussian_sj"
"Gaussian_s"
"Gaussian_sjsk"
"HDGaussian_AjkBkQkDk"
"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"
"Categorical_pjk"
"Categorical_pk"
"Poisson_ljk"
"Poisson_lk"
"Poisson_ljlk"
"Kmm_sk"
"Kmm_s"
Parameters
typethe String we want to convert
Returns
the Mixture represented by the String type. if the string does not match any known name, the unknown_mixture_ type is returned.

Definition at line 263 of file STK_Clust_Util.cpp.

264{
265 if (toUpperString(type) == toUpperString(_T("Gamma_ajk_bjk"))) return Gamma_ajk_bjk_;
266 if (toUpperString(type) == toUpperString(_T("Gamma_ajk_bk"))) return Gamma_ajk_bk_;
267 if (toUpperString(type) == toUpperString(_T("Gamma_ajk_bj"))) return Gamma_ajk_bj_;
268 if (toUpperString(type) == toUpperString(_T("Gamma_ajk_b"))) return Gamma_ajk_b_;
269 if (toUpperString(type) == toUpperString(_T("Gamma_ak_bjk"))) return Gamma_ak_bjk_;
270 if (toUpperString(type) == toUpperString(_T("Gamma_ak_bk"))) return Gamma_ak_bk_;
271 if (toUpperString(type) == toUpperString(_T("Gamma_ak_bj"))) return Gamma_ak_bj_;
272 if (toUpperString(type) == toUpperString(_T("Gamma_ak_b"))) return Gamma_ak_b_;
273 if (toUpperString(type) == toUpperString(_T("Gamma_aj_bjk"))) return Gamma_aj_bjk_;
274 if (toUpperString(type) == toUpperString(_T("Gamma_aj_bk"))) return Gamma_aj_bk_;
275 if (toUpperString(type) == toUpperString(_T("Gamma_a_bjk"))) return Gamma_a_bjk_;
276 if (toUpperString(type) == toUpperString(_T("Gamma_a_bk"))) return Gamma_a_bk_;
277 if (toUpperString(type) == toUpperString(_T("Gaussian_sjk"))) return Gaussian_sjk_;
278 if (toUpperString(type) == toUpperString(_T("Gaussian_sk"))) return Gaussian_sk_;
279 if (toUpperString(type) == toUpperString(_T("Gaussian_sj"))) return Gaussian_sj_;
280 if (toUpperString(type) == toUpperString(_T("Gaussian_s"))) return Gaussian_s_;
281 if (toUpperString(type) == toUpperString(_T("Gaussian_sjsk"))) return Gaussian_sjsk_;
282 if (toUpperString(type) == toUpperString(_T("Categorical_pjk"))) return Categorical_pjk_;
283 if (toUpperString(type) == toUpperString(_T("Categorical_pk"))) return Categorical_pk_;
284 if (toUpperString(type) == toUpperString(_T("Poisson_ljk"))) return Poisson_ljk_;
285 if (toUpperString(type) == toUpperString(_T("Poisson_lk"))) return Poisson_lk_;
286 if (toUpperString(type) == toUpperString(_T("Poisson_ljlk"))) return Poisson_ljlk_;
287 if (toUpperString(type) == toUpperString(_T("Kmm_sk")))return Kmm_sk_;
288 if (toUpperString(type) == toUpperString(_T("Kmm_s"))) return Kmm_s_;
289 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBkQkDk")))return HDGaussian_AjkBkQkDk_;
290 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBkQkD"))) return HDGaussian_AjkBkQkD_;
291 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBkQDk"))) return HDGaussian_AjkBkQDk_;
292 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBkQD"))) return HDGaussian_AjkBkQD_;
293 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBQkDk"))) return HDGaussian_AjkBQkDk_;
294 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBQkD"))) return HDGaussian_AjkBQkD_;
295 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBQDk"))) return HDGaussian_AjkBQDk_;
296 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjkBQD"))) return HDGaussian_AjkBQD_;
297 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBkQkDk"))) return HDGaussian_AkBkQkDk_;
298 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBkQkD"))) return HDGaussian_AkBkQkD_;
299 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBkQDk"))) return HDGaussian_AkBkQDk_;
300 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBkQD"))) return HDGaussian_AkBkQD_;
301 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBQkDk"))) return HDGaussian_AkBQkDk_;
302 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBQkD"))) return HDGaussian_AkBQkD_;
303 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBQDk"))) return HDGaussian_AkBQDk_;
304 if (toUpperString(type) == toUpperString(_T("HDGaussian_AkBQD"))) return HDGaussian_AkBQD_;
305 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBkQkDk"))) return HDGaussian_AjBkQkDk_;
306 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBkQkD"))) return HDGaussian_AjBkQkD_;
307 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBkQDk"))) return HDGaussian_AjBkQDk_;
308 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBkQD"))) return HDGaussian_AjBkQD_;
309 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBQkDk"))) return HDGaussian_AjBQkDk_;
310 if (toUpperString(type) == toUpperString(_T("HDGaussian_AjBQkD"))) return HDGaussian_AjBQkD_;
311 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABkQkDk"))) return HDGaussian_ABkQkDk_;
312 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABkQkD"))) return HDGaussian_ABkQkD_;
313 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABkQDk"))) return HDGaussian_ABkQDk_;
314 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABkQD"))) return HDGaussian_ABkQD_;
315 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABQkDk"))) return HDGaussian_ABQkDk_;
316 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABQkD"))) return HDGaussian_ABQkD_;
317 if (toUpperString(type) == toUpperString(_T("HDGaussian_ABQD"))) return HDGaussian_ABQD_;
318 // try second naming sheme
319 bool freeProp;
320 Mixture res = stringToMixture(type, freeProp);
321#ifdef STK_MIXTURE_DEBUG
322 if (res == unknown_mixture_)
323 { stk_cout << _T("In stringToMixture, mixture ") << type << _T(" not found.\n");}
324#endif
325 return res;
326}
#define stk_cout
Standard stk output stream.
Mixture stringToMixture(String const &type)
Convert a String to a Mixture.
Mixture
list of the mixtures that can be used by the composer

References _T, STK::Clust::Categorical_pjk_, STK::Clust::Categorical_pk_, STK::Clust::Gamma_a_bjk_, STK::Clust::Gamma_a_bk_, STK::Clust::Gamma_aj_bjk_, STK::Clust::Gamma_aj_bk_, STK::Clust::Gamma_ajk_b_, STK::Clust::Gamma_ajk_bj_, STK::Clust::Gamma_ajk_bjk_, STK::Clust::Gamma_ajk_bk_, STK::Clust::Gamma_ak_b_, STK::Clust::Gamma_ak_bj_, STK::Clust::Gamma_ak_bjk_, STK::Clust::Gamma_ak_bk_, STK::Clust::Gaussian_s_, STK::Clust::Gaussian_sj_, STK::Clust::Gaussian_sjk_, STK::Clust::Gaussian_sjsk_, STK::Clust::Gaussian_sk_, STK::Clust::HDGaussian_ABkQD_, STK::Clust::HDGaussian_ABkQDk_, STK::Clust::HDGaussian_ABkQkD_, STK::Clust::HDGaussian_ABkQkDk_, STK::Clust::HDGaussian_ABQD_, STK::Clust::HDGaussian_ABQkD_, STK::Clust::HDGaussian_ABQkDk_, STK::Clust::HDGaussian_AjBkQD_, STK::Clust::HDGaussian_AjBkQDk_, STK::Clust::HDGaussian_AjBkQkD_, STK::Clust::HDGaussian_AjBkQkDk_, STK::Clust::HDGaussian_AjBQkD_, STK::Clust::HDGaussian_AjBQkDk_, STK::Clust::HDGaussian_AjkBkQD_, STK::Clust::HDGaussian_AjkBkQDk_, STK::Clust::HDGaussian_AjkBkQkD_, STK::Clust::HDGaussian_AjkBkQkDk_, STK::Clust::HDGaussian_AjkBQD_, STK::Clust::HDGaussian_AjkBQDk_, STK::Clust::HDGaussian_AjkBQkD_, STK::Clust::HDGaussian_AjkBQkDk_, STK::Clust::HDGaussian_AkBkQD_, STK::Clust::HDGaussian_AkBkQDk_, STK::Clust::HDGaussian_AkBkQkD_, STK::Clust::HDGaussian_AkBkQkDk_, STK::Clust::HDGaussian_AkBQD_, STK::Clust::HDGaussian_AkBQDk_, STK::Clust::HDGaussian_AkBQkD_, STK::Clust::HDGaussian_AkBQkDk_, STK::Clust::Kmm_s_, STK::Clust::Kmm_sk_, STK::Clust::Poisson_ljk_, STK::Clust::Poisson_ljlk_, STK::Clust::Poisson_lk_, stk_cout, STK::Clust::stringToMixture(), STK::toUpperString(), and STK::Clust::unknown_mixture_.

Referenced by STK::CategoricalMixtureManager< DataHandler >::createMixtureImpl(), STK::DiagGaussianMixtureManager< DataHandler >::createMixtureImpl(), STK::GammaMixtureManager< DataHandler >::createMixtureImpl(), STK::KernelMixtureManager::createMixtureImpl(), STK::PoissonMixtureManager< DataHandler >::createMixtureImpl(), STK::IMixtureManager< Derived >::getIdModel(), STK::MixtureComposerFacade< DataHandler_ >::getParameters(), STK::MixtureComposerFacade< DataHandler_ >::setParameters(), and STK::Clust::stringToMixture().

◆ stringToMixture() [2/2]

Mixture STK::Clust::stringToMixture ( String const type,
bool freeProp 
)

convert a string to a Mixture and specify if the model is with free proportions or fixed proportions.

The recognized strings are

Free proportions Fixed Proportions
"Gamma_pk_ajk_bjk" "Gamma_p_ajk_bjk"
"Gamma_pk_ajk_bk" "Gamma_p_ajk_bk"
"Gamma_pk_ajk_bj" "Gamma_p_ajk_bj"
"Gamma_pk_ajk_b" "Gamma_p_ajk_b"
"Gamma_pk_ak_bjk" "Gamma_p_ak_bjk"
"Gamma_pk_ak_bk" "Gamma_p_ak_bk"
"Gamma_pk_ak_bj" "Gamma_p_ak_bj"
"Gamma_pk_ak_b" "Gamma_p_ak_b"
"Gamma_pk_aj_bjk" "Gamma_p_aj_bjk"
"Gamma_pk_aj_bk" "Gamma_p_aj_bk"
"Gamma_pk_a_bjk" "Gamma_p_a_bjk"
"Gamma_pk_a_bk" "Gamma_p_a_bk"
"Gaussian_pk_sjk" "Gaussian_p_sjk"
"Gaussian_pk_sk" "Gaussian_p_sk"
"Gaussian_pk_sj" "Gaussian_p_sj"
"Gaussian_pk_s" "Gaussian_p_s"
"Gaussian_pk_sjsk" "Gaussian_p_sjsk"
"HDGaussian_pk_AjkBkQkDk" "HDGaussian_p_AjkBkQkDk"
"HDGaussian_pk_AjkBkQkD" "HDGaussian_p_AjkBkQkD"
"HDGaussian_pk_AjkBkQdk" "HDGaussian_p_AjkBkQdk"
"HDGaussian_pk_AjkBkQd" "HDGaussian_p_AjkBkQd"
"HDGaussian_pk_AjkBQkDk" "HDGaussian_p_AjkBQkDk"
"HDGaussian_pk_AjkBQkD" "HDGaussian_p_AjkBQkD"
"HDGaussian_pk_AjkBQdk" "HDGaussian_p_AjkBQdk"
"HDGaussian_pk_AjkBQd" "HDGaussian_p_AjkBQd"
"HDGaussian_pk_AkBkQkDk" "HDGaussian_p_AkBkQkDk"
"HDGaussian_pk_AkBkQkD" "HDGaussian_p_AkBkQkD"
"HDGaussian_pk_AkBkQdk" "HDGaussian_p_AkBkQdk"
"HDGaussian_pk_AkBkQd" "HDGaussian_p_AkBkQd"
"HDGaussian_pk_AkBQkDk" "HDGaussian_p_AkBQkDk"
"HDGaussian_pk_AkBQkD" "HDGaussian_p_AkBQkD"
"HDGaussian_pk_AkBQdk" "HDGaussian_p_AkBQdk"
"HDGaussian_pk_AkBQd" "HDGaussian_p_AkBQd"
"HDGaussian_pk_AjBkQkDk" "HDGaussian_p_AjBkQkDk"
"HDGaussian_pk_AjBkQkD" "HDGaussian_p_AjBkQkD"
"HDGaussian_pk_AjBkQdk" "HDGaussian_p_AjBkQdk"
"HDGaussian_pk_AjBkQd" "HDGaussian_p_AjBkQd"
"HDGaussian_pk_AjBQkDk" "HDGaussian_p_AjBQkDk"
"HDGaussian_pk_AjBQkD" "HDGaussian_p_AjBQkD"
"HDGaussian_pk_ABkQkDk" "HDGaussian_p_ABkQkDk"
"HDGaussian_pk_ABkQkD" "HDGaussian_p_ABkQkD"
"HDGaussian_pk_ABkQdk" "HDGaussian_p_ABkQdk"
"HDGaussian_pk_ABkQd," "HDGaussian_p_ABkQd,"
"HDGaussian_pk_ABQkDk" "HDGaussian_p_ABQkDk"
"HDGaussian_pk_ABQkD" "HDGaussian_p_ABQkD"
"HDGaussian_pk_ABQD" "HDGaussian_p_ABQD"
"Categorical_pk_pjk" "Categorical_p_pjk"
"Categorical_pk_pk" "Categorical_p_pk"
"Poisson_pk_ljk" "Poisson_p_ljk"
"Poisson_pk_lk" "Poisson_p_lk"
"Poisson_pk_ljlk" "Poisson_p_ljlk"
"Kmm_pk_sk" "Kmm_p_sk"
"Kmm_pk_s" "Kmm_p_s"
Parameters
typethe String we want to convert
[out]freeProptrue if the model have free proportions, false otherwise.
Returns
the Mixture represented by the String type. if the string does not match any known name, the unknown_mixture_ type is returned.

Definition at line 333 of file STK_Clust_Util.cpp.

334{
335 freeProp = false;
336 if (toUpperString(type) == toUpperString(_T("Gamma_p_ajk_bjk"))) return Gamma_ajk_bjk_;
337 if (toUpperString(type) == toUpperString(_T("Gamma_p_ajk_bk"))) return Gamma_ajk_bk_;
338 if (toUpperString(type) == toUpperString(_T("Gamma_p_ajk_bj"))) return Gamma_ajk_bj_;
339 if (toUpperString(type) == toUpperString(_T("Gamma_p_ajk_b"))) return Gamma_ajk_b_;
340 if (toUpperString(type) == toUpperString(_T("Gamma_p_ak_bjk"))) return Gamma_ak_bjk_;
341 if (toUpperString(type) == toUpperString(_T("Gamma_p_ak_bk"))) return Gamma_ak_bk_;
342 if (toUpperString(type) == toUpperString(_T("Gamma_p_ak_bj"))) return Gamma_ak_bj_;
343 if (toUpperString(type) == toUpperString(_T("Gamma_p_ak_b"))) return Gamma_ak_b_;
344 if (toUpperString(type) == toUpperString(_T("Gamma_p_aj_bjk"))) return Gamma_aj_bjk_;
345 if (toUpperString(type) == toUpperString(_T("Gamma_p_aj_bk"))) return Gamma_aj_bk_;
346 if (toUpperString(type) == toUpperString(_T("Gamma_p_a_bjk"))) return Gamma_a_bjk_;
347 if (toUpperString(type) == toUpperString(_T("Gamma_p_a_bk"))) return Gamma_a_bk_;
348 if (toUpperString(type) == toUpperString(_T("Gaussian_p_sjk"))) return Gaussian_sjk_;
349 if (toUpperString(type) == toUpperString(_T("Gaussian_p_sk"))) return Gaussian_sk_;
350 if (toUpperString(type) == toUpperString(_T("Gaussian_p_sj"))) return Gaussian_sj_;
351 if (toUpperString(type) == toUpperString(_T("Gaussian_p_s"))) return Gaussian_s_;
352 if (toUpperString(type) == toUpperString(_T("Gaussian_p_sjsk"))) return Gaussian_sjsk_;
353 if (toUpperString(type) == toUpperString(_T("Categorical_p_pjk"))) return Categorical_pjk_;
354 if (toUpperString(type) == toUpperString(_T("Categorical_p_pk"))) return Categorical_pk_;
355 if (toUpperString(type) == toUpperString(_T("Poisson_p_ljk"))) return Poisson_ljk_;
356 if (toUpperString(type) == toUpperString(_T("Poisson_p_lk"))) return Poisson_lk_;
357 if (toUpperString(type) == toUpperString(_T("Poisson_p_ljlk"))) return Poisson_ljlk_;
358 if (toUpperString(type) == toUpperString(_T("Kmm_p_sk"))) return Kmm_sk_;
359 if (toUpperString(type) == toUpperString(_T("Kmm_p_s"))) return Kmm_s_;
360 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBkQkDk"))) return HDGaussian_AjkBkQkDk_;
361 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBkQkD"))) return HDGaussian_AjkBkQkD_;
362 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBkQDk"))) return HDGaussian_AjkBkQDk_;
363 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBkQD"))) return HDGaussian_AjkBkQD_;
364 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBQkDk"))) return HDGaussian_AjkBQkDk_;
365 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBQkD"))) return HDGaussian_AjkBQkD_;
366 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBQDk"))) return HDGaussian_AjkBQDk_;
367 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjkBQD"))) return HDGaussian_AjkBQD_;
368 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBkQkDk"))) return HDGaussian_AkBkQkDk_;
369 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBkQkD"))) return HDGaussian_AkBkQkD_;
370 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBkQDk"))) return HDGaussian_AkBkQDk_;
371 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBkQD"))) return HDGaussian_AkBkQD_;
372 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBQkDk"))) return HDGaussian_AkBQkDk_;
373 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBQkD"))) return HDGaussian_AkBQkD_;
374 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBQDk"))) return HDGaussian_AkBQDk_;
375 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AkBQD"))) return HDGaussian_AkBQD_;
376 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBkQkDk"))) return HDGaussian_AjBkQkDk_;
377 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBkQkD"))) return HDGaussian_AjBkQkD_;
378 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBkQDk"))) return HDGaussian_AjBkQDk_;
379 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBkQD"))) return HDGaussian_AjBkQD_;
380 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBQkDk"))) return HDGaussian_AjBQkDk_;
381 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_AjBQkD"))) return HDGaussian_AjBQkD_;
382 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABkQkDk"))) return HDGaussian_ABkQkDk_;
383 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABkQkD"))) return HDGaussian_ABkQkD_;
384 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABkQDk"))) return HDGaussian_ABkQDk_;
385 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABkQD"))) return HDGaussian_ABkQD_;
386 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABQkDk"))) return HDGaussian_ABQkDk_;
387 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABQkD"))) return HDGaussian_ABQkD_;
388 if (toUpperString(type) == toUpperString(_T("HDGaussian_p_ABQD"))) return HDGaussian_ABQD_;
389 freeProp = true;
390 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ajk_bjk"))) return Gamma_ajk_bjk_;
391 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ajk_bk"))) return Gamma_ajk_bk_;
392 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ajk_bj"))) return Gamma_ajk_bj_;
393 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ajk_b"))) return Gamma_ajk_b_;
394 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ak_bjk"))) return Gamma_ak_bjk_;
395 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ak_bk"))) return Gamma_ak_bk_;
396 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ak_bj"))) return Gamma_ak_bj_;
397 if (toUpperString(type) == toUpperString(_T("Gamma_pk_ak_b"))) return Gamma_ak_b_;
398 if (toUpperString(type) == toUpperString(_T("Gamma_pk_aj_bjk"))) return Gamma_aj_bjk_;
399 if (toUpperString(type) == toUpperString(_T("Gamma_pk_aj_bk"))) return Gamma_aj_bk_;
400 if (toUpperString(type) == toUpperString(_T("Gamma_pk_a_bjk"))) return Gamma_a_bjk_;
401 if (toUpperString(type) == toUpperString(_T("Gamma_pk_a_bk"))) return Gamma_a_bk_;
402 if (toUpperString(type) == toUpperString(_T("Gaussian_pk_sjk"))) return Gaussian_sjk_;
403 if (toUpperString(type) == toUpperString(_T("Gaussian_pk_sk"))) return Gaussian_sk_;
404 if (toUpperString(type) == toUpperString(_T("Gaussian_pk_sj"))) return Gaussian_sj_;
405 if (toUpperString(type) == toUpperString(_T("Gaussian_pk_s"))) return Gaussian_s_;
406 if (toUpperString(type) == toUpperString(_T("Categorical_pk_pjk"))) return Categorical_pjk_;
407 if (toUpperString(type) == toUpperString(_T("Categorical_pk_pk"))) return Categorical_pk_;
408 if (toUpperString(type) == toUpperString(_T("Poisson_pk_ljk"))) return Poisson_ljk_;
409 if (toUpperString(type) == toUpperString(_T("Poisson_pk_lk"))) return Poisson_lk_;
410 if (toUpperString(type) == toUpperString(_T("Poisson_pk_ljlk"))) return Poisson_ljlk_;
411 if (toUpperString(type) == toUpperString(_T("Kmm_pk_sk"))) return Kmm_sk_;
412 if (toUpperString(type) == toUpperString(_T("Kmm_pk_s"))) return Kmm_s_;
413 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBkQkDk"))) return HDGaussian_AjkBkQkDk_;
414 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBkQkD"))) return HDGaussian_AjkBkQkD_;
415 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBkQDk"))) return HDGaussian_AjkBkQDk_;
416 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBkQD"))) return HDGaussian_AjkBkQD_;
417 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBQkDk"))) return HDGaussian_AjkBQkDk_;
418 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBQkD"))) return HDGaussian_AjkBQkD_;
419 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBQDk"))) return HDGaussian_AjkBQDk_;
420 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjkBQD"))) return HDGaussian_AjkBQD_;
421 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBkQkDk"))) return HDGaussian_AkBkQkDk_;
422 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBkQkD"))) return HDGaussian_AkBkQkD_;
423 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBkQDk"))) return HDGaussian_AkBkQDk_;
424 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBkQD"))) return HDGaussian_AkBkQD_;
425 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBQkDk"))) return HDGaussian_AkBQkDk_;
426 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBQkD"))) return HDGaussian_AkBQkD_;
427 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBQDk"))) return HDGaussian_AkBQDk_;
428 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AkBQD"))) return HDGaussian_AkBQD_;
429 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBkQkDk"))) return HDGaussian_AjBkQkDk_;
430 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBkQkD"))) return HDGaussian_AjBkQkD_;
431 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBkQDk"))) return HDGaussian_AjBkQDk_;
432 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBkQD"))) return HDGaussian_AjBkQD_;
433 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBQkDk"))) return HDGaussian_AjBQkDk_;
434 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_AjBQkD"))) return HDGaussian_AjBQkD_;
435 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABkQkDk"))) return HDGaussian_ABkQkDk_;
436 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABkQkD"))) return HDGaussian_ABkQkD_;
437 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABkQDk"))) return HDGaussian_ABkQDk_;
438 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABkQD"))) return HDGaussian_ABkQD_;
439 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABQkDk"))) return HDGaussian_ABQkDk_;
440 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABQkD"))) return HDGaussian_ABQkD_;
441 if (toUpperString(type) == toUpperString(_T("HDGaussian_pk_ABQD"))) return HDGaussian_ABQD_;
442#ifdef STK_MIXTURE_DEBUG
443 stk_cout << _T("In stringToMixture, mixture ") << type << _T(" not found.\n");
444#endif
445 return unknown_mixture_;
446}

References _T, STK::Clust::Categorical_pjk_, STK::Clust::Categorical_pk_, STK::Clust::Gamma_a_bjk_, STK::Clust::Gamma_a_bk_, STK::Clust::Gamma_aj_bjk_, STK::Clust::Gamma_aj_bk_, STK::Clust::Gamma_ajk_b_, STK::Clust::Gamma_ajk_bj_, STK::Clust::Gamma_ajk_bjk_, STK::Clust::Gamma_ajk_bk_, STK::Clust::Gamma_ak_b_, STK::Clust::Gamma_ak_bj_, STK::Clust::Gamma_ak_bjk_, STK::Clust::Gamma_ak_bk_, STK::Clust::Gaussian_s_, STK::Clust::Gaussian_sj_, STK::Clust::Gaussian_sjk_, STK::Clust::Gaussian_sjsk_, STK::Clust::Gaussian_sk_, STK::Clust::HDGaussian_ABkQD_, STK::Clust::HDGaussian_ABkQDk_, STK::Clust::HDGaussian_ABkQkD_, STK::Clust::HDGaussian_ABkQkDk_, STK::Clust::HDGaussian_ABQD_, STK::Clust::HDGaussian_ABQkD_, STK::Clust::HDGaussian_ABQkDk_, STK::Clust::HDGaussian_AjBkQD_, STK::Clust::HDGaussian_AjBkQDk_, STK::Clust::HDGaussian_AjBkQkD_, STK::Clust::HDGaussian_AjBkQkDk_, STK::Clust::HDGaussian_AjBQkD_, STK::Clust::HDGaussian_AjBQkDk_, STK::Clust::HDGaussian_AjkBkQD_, STK::Clust::HDGaussian_AjkBkQDk_, STK::Clust::HDGaussian_AjkBkQkD_, STK::Clust::HDGaussian_AjkBkQkDk_, STK::Clust::HDGaussian_AjkBQD_, STK::Clust::HDGaussian_AjkBQDk_, STK::Clust::HDGaussian_AjkBQkD_, STK::Clust::HDGaussian_AjkBQkDk_, STK::Clust::HDGaussian_AkBkQD_, STK::Clust::HDGaussian_AkBkQDk_, STK::Clust::HDGaussian_AkBkQkD_, STK::Clust::HDGaussian_AkBkQkDk_, STK::Clust::HDGaussian_AkBQD_, STK::Clust::HDGaussian_AkBQDk_, STK::Clust::HDGaussian_AkBQkD_, STK::Clust::HDGaussian_AkBQkDk_, STK::Clust::Kmm_s_, STK::Clust::Kmm_sk_, STK::Clust::Poisson_ljk_, STK::Clust::Poisson_ljlk_, STK::Clust::Poisson_lk_, stk_cout, STK::toUpperString(), and STK::Clust::unknown_mixture_.

◆ stringToPredictAlgo()

algoPredictType STK::Clust::stringToPredictAlgo ( String const type)

Convert a String to an algoPredictType.

The recognized strings are

Algorithm
"em"
"semiSem"
Parameters
typethe type of algorithm wanted
Returns
the algoPredictType corresponding (default is em)
Note
The capitalized letters have no effect and if the string is not found in the list above, the type Clust::emPredictAlgo_ is returned.

Definition at line 118 of file STK_Clust_Util.cpp.

119{
120 if (toUpperString(type) == toUpperString(_T("em"))) return emPredictAlgo_;
121 if (toUpperString(type) == toUpperString(_T("semiSem"))) return semiSEMPredictAlgo_;
122 return emPredictAlgo_;
123}

References _T, STK::Clust::emPredictAlgo_, STK::Clust::semiSEMPredictAlgo_, and STK::toUpperString().

Variable Documentation

◆ defaultAlgoInInit

const Clust::algoType STK::Clust::defaultAlgoInInit = emAlgo_

Default algorithm type in initialization.

Definition at line 857 of file STK_Clust_Util.h.

◆ defaultAlgoLongRun

const Clust::algoType STK::Clust::defaultAlgoLongRun = emAlgo_

Default algorithm type in long run.

Definition at line 877 of file STK_Clust_Util.h.

◆ defaultAlgoShortRun

const Clust::algoType STK::Clust::defaultAlgoShortRun = emAlgo_

Default algorithm type in short run.

Definition at line 867 of file STK_Clust_Util.h.

◆ defaultEpsilonInInit

const Real STK::Clust::defaultEpsilonInInit = 1e-02

Default epsilon in the short runs (used in strategy)

Definition at line 863 of file STK_Clust_Util.h.

◆ defaultEpsilonLongRun

const Real STK::Clust::defaultEpsilonLongRun = 1e-08

Default epsilon in the long run (used in strategy)

Definition at line 883 of file STK_Clust_Util.h.

◆ defaultEpsilonShortRun

const Real STK::Clust::defaultEpsilonShortRun = 1e-04

Default epsilon in the short runs (used in strategy)

Definition at line 873 of file STK_Clust_Util.h.

◆ defaultInitType

const Clust::initType STK::Clust::defaultInitType = randomFuzzyInit_

Default algorithm type in short run.

Definition at line 851 of file STK_Clust_Util.h.

◆ defaultMaxIterLongRun

const int STK::Clust::defaultMaxIterLongRun = 1000

Default number of iterations in the long run (used in FullStrategy)

Definition at line 880 of file STK_Clust_Util.h.

◆ defaultMaxIterShortRun

const int STK::Clust::defaultMaxIterShortRun = 200

Default number of iterations in the short runs (used in FullStrategy)

Definition at line 870 of file STK_Clust_Util.h.

◆ defaultNbInit

const int STK::Clust::defaultNbInit = 5

Default number of initializations to perform.

Definition at line 854 of file STK_Clust_Util.h.

◆ defaultNbIterMaxInInit

const int STK::Clust::defaultNbIterMaxInInit = 20

Default number of iteration in an initialization algorithm.

Definition at line 860 of file STK_Clust_Util.h.

◆ defaultNbTry

const int STK::Clust::defaultNbTry = 5

Default number of try in an estimation strategy.

Definition at line 847 of file STK_Clust_Util.h.