mixmod  3.2.0
Mixture models for clustering and classification
 All Classes Namespaces Files Functions Variables Enumerations Friends
XEM Namespace Reference

Base class for Label(s) More...

Classes

class  ClusteringInput
 
class  ClusteringMain
 Main class for Clustering using mixture model(s) More...
 
class  ClusteringModelOutput
 
class  ClusteringOutput
 
class  ClusteringStrategy
 
class  ClusteringStrategyInit
 Base class for StrategyInitType(s) More...
 
class  LearnInput
 
class  LearnMain
 
class  LearnModelOutput
 
class  LearnOutput
 
class  LearnStrategy
 
class  PredictInput
 
class  PredictMain
 
class  PredictModelOutput
 
class  PredictOutput
 
class  PredictStrategy
 
class  Algo
 Base class for Algorithm(s) More...
 
class  CEMAlgo
 Derived class of XEMAlgo for CEM Algorithm(s) More...
 
class  EMAlgo
 Derived class of XEMAlgo for EM Algorithm(s) More...
 
class  MAlgo
 Derived class of XEMAlgo for M Algorithm. More...
 
class  MAPAlgo
 Derived class of XEMAlgo for MAP Algorithm. More...
 
class  SEMAlgo
 Derived class of XEMAlgo for SEM Algorithm(s) More...
 
class  BICCriterion
 Derived class of XEMCriterion for BIC Criterion. More...
 
class  Criterion
 
class  CriterionOutput
 Base class for Label(s) More...
 
class  CVCriterion
 Derived class of XEMCriterion for CV Criterion. More...
 
class  ICLCriterion
 Derived class of XEMCriterion for ICL Criterion. More...
 
class  NECCriterion
 Derived class of XEMCriterion for NEC Criterion. More...
 
class  BinaryData
 Base class for Binary Data. More...
 
class  BinarySample
 Base class for Sample. More...
 
class  ColumnDescription
 
class  CompositeData
 
class  CompositeSample
 
class  Data
 Base class for Data. More...
 
class  DataDescription
 
class  Description
 
class  GaussianData
 Base class for Gaussian Data. More...
 
class  GaussianSample
 Base class for Sample. More...
 
struct  IndividualDescription
 
class  IndividualColumnDescription
 
class  Input
 
class  Label
 
class  LabelDescription
 
class  LikelihoodOutput
 Base class for Label(s) More...
 
class  ModelOutput
 
struct  SortByCriterion
 
class  ParameterDescription
 
class  Partition
 Base class for Partition(s) More...
 
class  Proba
 
class  ProbaDescription
 
class  ProbaOutput
 
struct  VariableDescription
 
class  QualitativeColumnDescription
 
class  QuantitativeColumnDescription
 
class  Sample
 Base class for Sample. More...
 
class  UnusedColumnDescription
 
class  WeightColumnDescription
 
class  BinaryModel
 Base class for Model(s) More...
 
class  Model
 
class  ModelType
 Base class for ModelType(s) More...
 
class  BinaryEjParameter
 
class  BinaryEkjhParameter
 
class  BinaryEkjParameter
 
class  BinaryEkParameter
 
class  BinaryEParameter
 
class  BinaryParameter
 Base class for XEMBinaryParameter(s) More...
 
class  CompositeParameter
 
class  GaussianDiagParameter
 Derived class of XEMGaussianParameter for Spherical Gaussian Model(s) More...
 
class  GaussianEDDAParameter
 Derived class of XEMGaussianParameter for EDDA Gaussian Model(s) More...
 
class  GaussianGeneralParameter
 Derived class of XEMGaussianParameter for Spherical Gaussian Model(s) More...
 
class  GaussianHDDAParameter
 Derived class of XEMGaussianParameter for HDDA Gaussian Model(s) More...
 
class  GaussianParameter
 Base class for XEMGaussianParameter(s) More...
 
class  GaussianSphericalParameter
 Derived class of XEMGaussianParameter for Spherical Gaussian Model(s) More...
 
class  Parameter
 Base class for XEMParameter(s) More...
 
class  DiagMatrix
 class XEMDiagMatrix More...
 
class  GeneralMatrix
 class GeneralMatrix More...
 
class  Matrix
 Base class for Matrix. More...
 
class  SphericalMatrix
 class XEMSphericalMatrix More...
 
class  SymmetricMatrix
 
class  Error
 Base class for Error(s) More...
 
struct  GenericData
 
class  DCVException
 
class  DCVonlyInGaussianCaseException
 
class  Exception
 
class  InputException
 
class  NumericException
 
class  OtherException
 
struct  NumericPartitionFile
 
struct  TWeightedIndividual
 Structure for chain list of differents sample. More...
 
struct  CVBlock
 XEMCVBlock. More...
 
struct  TabDeleter
 
struct  IfChangedDeleter
 

Enumerations

enum  InputError {
  noError = 0, nbLinesTooLarge, nbLinesTooSmall, pbDimensionTooLarge,
  pbDimensionTooSmall, nbCriterionTooLarge, nbCriterionTooSmall, wrongCriterionName,
  nbNbClusterTooLarge, nbNbClusterTooSmall, nbModelTypeTooLarge, nbModelTypeTooSmall,
  wrongModelType, wrongCVinitType, wrongDCVinitType, nbStrategyTypeTooLarge,
  badNbParameterInInit, badNbPartitionInInit, nbStrategyTypeTooSmall, wrongStrategyInitName,
  errorInitParameter, nbAlgoTooLarge, nbAlgoTooSmall, wrongAlgoType,
  nbIterationTooLarge, nbIterationTooSmall, epsilonTooSmall, epsilonTooLarge,
  wrongDataFileName, wrongWeightFileName, wrongParamFileName, wrongLabelFileName,
  wrongPartitionFileName, wrongAlgoStopName, wrongOutputType, wrongInputFileName,
  wrongXEMNbParam, errorNbLines, errorPbDimension, errorNbCriterion,
  errorListCriterion, errorNbNbCluster, errorListNbCluster, errorNbModel,
  errorListModel, errorNbStrategy, errorInitType, errorInitFile,
  errorNbAlgo, errorAlgo, errorStopRule, errorStopRuleValue,
  errorDataFile, nbAlgoTypeTooSmall, badStrategyInitName, errorOpenFile,
  errorNbModality, knownPartitionNeeded, badKnownPartition, endDataFileReach,
  wrongNbKnownPartition, SubDimensionFreeTooLarge, SubDimensionFreeTooSmall, SubDimensionEqualTooLarge,
  SubDimensionEqualTooSmall, weightTotalIsNotAnInteger, ungivenSubDimension, inputNotFinalized,
  wrongNbAlgoWhenMorMAP, BadInitialsationWhenM, BadInitialsationWhenMAP, partitionMustBeComplete,
  algorithmMustBeM, knownPartitionAndInitPartitionMustBeEqual, nbStrategyMustBe1, wrongNbKnownPartitionOrInitPartition,
  tooManySampleInInitPartitionAndTooManyClusterNotRepresented, notAvailableForPrediction, ColumnTypeNotValid, errorInPartitionInput,
  wrongValueInMultinomialCase, badNumberOfValuesInLabelInput, notEnoughValuesInProbaInput, badValueInLabelInput,
  badStopNameWithSEMAlgo, badAlgorithmInHDContext, differentSubDimensionsWithMAP, wrongSubDimension,
  missingRequiredInputs, wrongCriterionPositionInSet, wrongCriterionPositionInGet, wrongCriterionPositionInInsert,
  wrongCriterionPositionInRemove, wrongModelPositionInSet, wrongModelPositionInGet, wrongModelPositionInInsert,
  wrongModelPositionInRemove, wrongModelPositionInSetSubDimensionEqual, wrongModelPositionInSetSubDimensionFree, wrongModelInSetSubDimensionEqual,
  wrongModelInSetSubDimensionFree, wrongKnownPartitionPositionInSet, wrongKnownPartitionPositionInRemove, badSetKnownPartition,
  wrongStrategyPositionInSetOrGetMethod, nbTryInStrategyTooSmall, nbTryInStrategyTooLarge, nbTryInInitTooSmall,
  nbTryInInitTooLarge, epsilonInInitTooSmall, epsilonInInitTooLarge, nbIterationInInitTooSmall,
  nbIterationInInitTooLarge, wrongNbStrategyTryValue, badInitPart, badSetNbTry,
  badSetNbTryInInit, badSetNbIterationInInit, badSetEpsilonInInit, badSetStopNameInInit,
  badCriterion, badAlgo, badAlgoStop, badInputType,
  DAInput, wrongModelName, knownPartitionNotAvailable, tooManyWeightColumnDescription,
  badDataDescription, badLabelDescription, errorInColumnDescription, errorInXEMInputSelector,
  wrongIndexInGetMethod, HDModelsAreNotAvailableInClusteringContext
}
 
enum  DCVError { wrongDCVinitBlocks, wrongDCVnumberOfBlocks, DCVmustBeDIAG, forbiddenCallToGetBestCVModel }
 
enum  DCVonlyInGaussianCaseError { allCVCriterionErrorForAnEstimationInDCVContext, NbDCVBlocksTooSmall }
 
enum  NumericError {
  int64_t_max_error, CEM_INIT_error, SEM_MAX_error, SMALL_EM_error,
  tabNkNotInteger, sumFiNullAndfkTPrimNull, sumFiNullInMultinomialCase, nonPositiveDefiniteMatrix,
  nullDeterminant, randomProblem, nullLikelihood, noProbability,
  pbNEC, nullNk, numericError, errorSigmaConditionNumber,
  minDeterminantSigmaValueError, minDeterminantWValueError, minDeterminantDiagWkValueError, minDeterminantDiagWValueError,
  minDeterminantBValueError, minDeterminantRValueError, minDeterminantWkValueError, minDeterminantShapeValueError,
  minDeterminantDiagQtmpValueError
}
 
enum  OtherError {
  badFormat, nullPointerError, wrongMatrixType, wrongConstructorType,
  nonImplementedMethod, badBinaryParameterClass, internalMixmodError, FunctionNotYetImplemented,
  AllTriesGotErros, AllModelsGotErros, UnknownReason
}
 
enum  CVinitBlocks { CV_RANDOM = 0, CV_DIAG = 1 }
 
enum  DCVinitBlocks { DCV_RANDOM = 0, DCV_DIAG = 1 }
 
enum  StrategyInitName {
  RANDOM = 0, USER = 1, USER_PARTITION = 2, SMALL_EM = 3,
  CEM_INIT = 4, SEM_MAX = 5
}
 Enumeration of differents strategy initialization.
 
enum  AlgoStopName { NO_STOP_NAME = -1, NBITERATION = 0, EPSILON = 1, NBITERATION_EPSILON = 2 }
 Enumeration of differents type of converge of algorithm (stop rule)
 
enum  CriterionName {
  UNKNOWN_CRITERION_NAME = -1, BIC = 0, CV = 1, ICL = 2,
  NEC = 3, DCV = 4
}
 Enumeration of Criterion type.
 
enum  AlgoName {
  UNKNOWN_ALGO_NAME = -1, MAP = 0, EM = 1, CEM = 2,
  SEM = 3, M = 4
}
 Enumeration of Algo type.
 
enum  DataType { QualitativeData = 0, QuantitativeData, HeterogeneousData }
 
enum  ModelGenre { QualitativeModel = 0, QuantitativeModel, HeterogeneousModel }
 
enum  ModelName {
  UNKNOWN_MODEL_NAME = -1, Gaussian_p_L_I = 0, Gaussian_p_Lk_I, Gaussian_pk_L_I,
  Gaussian_pk_Lk_I, Gaussian_p_L_B, Gaussian_p_Lk_B, Gaussian_p_L_Bk,
  Gaussian_p_Lk_Bk, Gaussian_pk_L_B, Gaussian_pk_Lk_B, Gaussian_pk_L_Bk,
  Gaussian_pk_Lk_Bk, Gaussian_p_L_C, Gaussian_p_Lk_C, Gaussian_p_L_D_Ak_D,
  Gaussian_p_Lk_D_Ak_D, Gaussian_p_L_Dk_A_Dk, Gaussian_p_Lk_Dk_A_Dk, Gaussian_p_L_Ck,
  Gaussian_p_Lk_Ck, Gaussian_pk_L_C, Gaussian_pk_Lk_C, Gaussian_pk_L_D_Ak_D,
  Gaussian_pk_Lk_D_Ak_D, Gaussian_pk_L_Dk_A_Dk, Gaussian_pk_Lk_Dk_A_Dk, Gaussian_pk_L_Ck,
  Gaussian_pk_Lk_Ck, Gaussian_HD_p_AkjBkQkDk, Gaussian_HD_p_AkBkQkDk, Gaussian_HD_p_AkjBkQkD,
  Gaussian_HD_p_AjBkQkD, Gaussian_HD_p_AkjBQkD, Gaussian_HD_p_AjBQkD, Gaussian_HD_p_AkBkQkD,
  Gaussian_HD_p_AkBQkD, Gaussian_HD_pk_AkjBkQkDk, Gaussian_HD_pk_AkBkQkDk, Gaussian_HD_pk_AkjBkQkD,
  Gaussian_HD_pk_AjBkQkD, Gaussian_HD_pk_AkjBQkD, Gaussian_HD_pk_AjBQkD, Gaussian_HD_pk_AkBkQkD,
  Gaussian_HD_pk_AkBQkD, Binary_p_E, Binary_p_Ek, Binary_p_Ej,
  Binary_p_Ekj, Binary_p_Ekjh, Binary_pk_E, Binary_pk_Ek,
  Binary_pk_Ej, Binary_pk_Ekj, Binary_pk_Ekjh, Heterogeneous_pk_E_L_B,
  Heterogeneous_pk_E_Lk_B, Heterogeneous_pk_E_L_Bk, Heterogeneous_pk_E_Lk_Bk, Heterogeneous_pk_Ek_L_B,
  Heterogeneous_pk_Ek_Lk_B, Heterogeneous_pk_Ek_L_Bk, Heterogeneous_pk_Ek_Lk_Bk, Heterogeneous_pk_Ej_L_B,
  Heterogeneous_pk_Ej_Lk_B, Heterogeneous_pk_Ej_L_Bk, Heterogeneous_pk_Ej_Lk_Bk, Heterogeneous_pk_Ekj_L_B,
  Heterogeneous_pk_Ekj_Lk_B, Heterogeneous_pk_Ekj_L_Bk, Heterogeneous_pk_Ekj_Lk_Bk, Heterogeneous_pk_Ekjh_L_B,
  Heterogeneous_pk_Ekjh_Lk_B, Heterogeneous_pk_Ekjh_L_Bk, Heterogeneous_pk_Ekjh_Lk_Bk, Heterogeneous_p_E_L_B,
  Heterogeneous_p_E_Lk_B, Heterogeneous_p_E_L_Bk, Heterogeneous_p_E_Lk_Bk, Heterogeneous_p_Ek_L_B,
  Heterogeneous_p_Ek_Lk_B, Heterogeneous_p_Ek_L_Bk, Heterogeneous_p_Ek_Lk_Bk, Heterogeneous_p_Ej_L_B,
  Heterogeneous_p_Ej_Lk_B, Heterogeneous_p_Ej_L_Bk, Heterogeneous_p_Ej_Lk_Bk, Heterogeneous_p_Ekj_L_B,
  Heterogeneous_p_Ekj_Lk_B, Heterogeneous_p_Ekj_L_Bk, Heterogeneous_p_Ekj_Lk_Bk, Heterogeneous_p_Ekjh_L_B,
  Heterogeneous_p_Ekjh_Lk_B, Heterogeneous_p_Ekjh_L_Bk, Heterogeneous_p_Ekjh_Lk_Bk, nbModelName = 54
}
 Enumeration of model name.
 
enum  OutputType {
  BICstandardOutput = 0, BICnumericStandardOutput, BIClabelOutput, BICparameterOutput,
  BICtikOutput, BICzikOutput, BIClikelihoodOutput, BICnumericLikelihoodOutput,
  BICErrorOutput = 8, CVstandardOutput, CVnumericStandardOutput, CVlabelOutput,
  CVparameterOutput, CVtikOutput, CVzikOutput, CVlikelihoodOutput,
  CVnumericLikelihoodOutput, CVErrorOutput = 17, ICLstandardOutput, ICLnumericStandardOutput,
  ICLlabelOutput, ICLparameterOutput, ICLtikOutput, ICLzikOutput,
  ICLlikelihoodOutput, ICLnumericLikelihoodOutput, ICLErrorOutput = 26, NECstandardOutput,
  NECnumericStandardOutput, NEClabelOutput, NECparameterOutput, NECtikOutput,
  NECzikOutput, NEClikelihoodOutput, NECnumericLikelihoodOutput, NECErrorOutput = 35,
  DCVstandardOutput, DCVnumericStandardOutput, DCVlabelOutput, DCVparameterOutput,
  DCVtikOutput, DCVzikOutput, DCVlikelihoodOutput, DCVnumericLikelihoodOutput,
  DCVErrorOutput = 44, completeOutput, numericCompleteOutput, CVlabelClassificationOutput,
  errorMixmodOutput, errorModelOutput, DCVinfo, DCVnumericInfo = 51
}
 

Functions

std::ostream & operator<< (std::ostream &fo, ClusteringStrategy &strategy)
 
std::ostream & operator<< (std::ostream &fo, ClusteringStrategyInit &strategyInit)
 
std::ostream & operator<< (std::ostream &fo, Algo &algo)
 
AlgocreateDefaultClusteringAlgo ()
 
std::ifstream & operator>> (std::ifstream &fi, Partition &partition)
 
std::ostream & operator<< (std::ostream &fo, const Partition &partition)
 
std::ostream & operator<< (std::ostream &fo, ModelType &modelType)
 
double computePdfOneCluster (Sample *x, int64_t *Center, double Scatter, int64_t *tabNbModality)
 compute Pdf in case nbCluster=1 (Scatter is a scalar)
 
double computePdfOneCluster (Sample *x, int64_t *Center, double *Scatter, int64_t *tabNbModality)
 compute Pdf in case nbCluster=1 (Scatter is a array of double, depends on variables)
 
double computePdfOneCluster (Sample *x, int64_t *Center, double **Scatter, int64_t *tabNbModality)
 compute Pdf in case nbCluster=1
 
GenericDatareadGenericData (string fileName)
 
DataDescriptiongetXEMDataDescriptionFromGeneric (GenericData *genericData)
 
ClusteringInputgetClusteringInput (string fileName, const vector< int64_t > &nbCluster)
 
LearnInputgetLearnInput (string fileName)
 
PredictInputgetPredictInput (string fileName, LearnModelOutput *lOutput)
 
template<class T >
void DeleteData (T **data, int nbSample)
 
double rnd ()
 
int64_t flip (double x)
 
void initRandomize (int seed)
 
void randomize ()
 
void antiRandomize (int seed)
 
double powAndCheckIfNotNull (double a, double b, const Exception &errorType=NumericException("Defaulter", 0, nullDeterminant))
 compute a^b and throw an error if it's equal to zero
 
int64_t Round (double d)
 return the nearest int64_t
 
void ConvertBigtoLowString (std::string &str)
 convert big char of a string in low char
 
std::string ModelNameToString (const ModelName &modelName)
 
ModelName StringToModelName (const std::string &strModelName)
 
ModelName getHeterogeneousModelName (const ModelName binaryName, const ModelName gaussianName)
 
ModelName getGaussianModelNamefromHeterogeneous (const ModelName HeterogeneousName)
 
ModelName getBinaryModelNamefromHeterogeneous (const ModelName HeterogeneousName)
 
void edit (const ModelName &modelName)
 
bool isKeyword (std::string &name)
 
std::string CriterionNameToString (const CriterionName &criterionName)
 
CriterionName StringtoCriterionName (const std::string &str)
 
void edit (const CriterionName &criterionName)
 
std::string AlgoNameToString (const AlgoName &typeAlgo)
 
AlgoName StringToAlgoName (const std::string &str)
 
std::string AlgoStopNameToString (const AlgoStopName &algoStopName)
 
AlgoStopName StringToAlgoStopName (const std::string &str)
 
void edit (const AlgoName &typeAlgo)
 
std::string FormatNumericFileToString (const FormatNumeric::FormatNumericFile &formatNumericFile)
 
FormatNumeric::FormatNumericFile StringToFormatNumericFile (const std::string &strFormatNumericFile)
 
std::string TypePartitionToString (const TypePartition::TypePartition &typePartition)
 
TypePartition::TypePartition StringToTypePartition (const std::string &strTypePartition)
 
std::string StrategyInitNameToString (const StrategyInitName &strategyInitName)
 
StrategyInitName StringToStrategyInitName (const std::string &str)
 
void edit (const StrategyInitName &strategyInitName)
 
void edit (const AlgoStopName &algoStopName)
 
void printTypeAlgo (std::ostream &flux, const AlgoName &typeAlgo)
 printAlgoType
 
bool isSpherical (ModelName modelName)
 
bool isDiagonal (ModelName modelName)
 
bool isGeneral (ModelName modelName)
 
bool isEDDA (ModelName modelName)
 
bool isHD (ModelName modelName)
 
bool isFreeSubDimension (ModelName modelName)
 
bool isBinary (ModelName modelName)
 
bool isHeterogeneous (ModelName modelname)
 
ModelGenre getModelGenre (ModelName name)
 
bool hasFreeProportion (ModelName modelName)
 
void editSimpleTab (double *tab, int64_t n, std::string sep, std::string before, std::ostream &flux)
 
void editSimpleTab (int64_t *tab, int64_t n, std::ostream &flux)
 
void moveUntilReach (std::ifstream &fi, std::string what)
 
void readTabFileName (std::ifstream &fi, int64_t nbNbCluster, std::string *tabFileName, std::string &keyWord)
 
void initToZero (double *tab, int64_t n)
 
void echange (double *tab, int64_t i1, int64_t i2)
 
void echange (int64_t *tab, int64_t i1, int64_t i2)
 
void selectionSortWithOrder (double *tabRandom, int64_t *tabOrder, int64_t left, int64_t right)
 
int64_t partition (double *tabRandom, int64_t *tabOrder, int64_t left, int64_t right)
 
void quickSortWithOrder (double *tabRandom, int64_t *tabOrder, int64_t left, int64_t right)
 
int64_t generateRandomIndex (bool *tabIndividualCanBeUsedForInitRandom, double *weight, double totalWeight)
 
void inputCriterion (std::ifstream &fi, CriterionName &criterionName)
 
void inputCVinitBlocks (std::ifstream &fi, CVinitBlocks cVinitBlocks)
 
void inputDCVinitBlocks (std::ifstream &fi, DCVinitBlocks dCVinitBlocks)
 
template<typename T >
T * copyTab (T *tab, int64_t dim)
 
template<typename T >
T ** copyTab (T **tab, int64_t dim1, int64_t dim2)
 
template<typename T >
void recopyTab (T *source, T *destination, int64_t dim)
 
void recopyTab (int64_t *source, double *destination, int64_t dim)
 
void recopyTabToVector (double **source, std::vector< std::vector< double > > &destination, int64_t dim1, int64_t dim2)
 
void recopyTabToVector (int64_t *source, std::vector< int64_t > &destination, int64_t dim1)
 
void recopyVectorToTab (std::vector< std::vector< double > > source, double **&destination)
 
void recopyVectorToTab (std::vector< int64_t > source, int64_t *&destination)
 
template<typename T >
void recopyTab (T **source, T **destination, int64_t dim1, int64_t dim2)
 
void editSimpleTab (double *tab, int64_t n, std::ostream &flux, std::string sep=" ", std::string before=" ")
 
template<typename T >
void editTab (T **tab, int64_t dim1, int64_t dim2, std::ostream &flux, std::string sep=" ", std::string before="")
 

Variables

const double m = 4294967296.0
 
const uint32_t d = 0x09E3779B9L
 
const uint32_t k0 = 0x0C7D7A8B4L
 
const uint32_t k1 = 0x09ABFB3B6L
 
const uint32_t k2 = 0x073DC1683L
 
const uint32_t k3 = 0x017B7BE43L
 
uint32_t y = 123456789L
 
uint32_t z = 987654321L
 
const double XEMPI = 3.14159265358979323846
 Define PI.
 
const int DEBUG = 0
 
const bool DATA_REDUCE = false
 
const bool VERBOSE = false
 
const int64_t maxNbSample = 1000000
 Define number of maximum samples.
 
const int64_t maxPbDimension = 10000
 
const int64_t minNbIteration = 1
 
const int64_t minNbIterationForSEM = 50
 
const int64_t maxNbIteration = 100000
 
const int64_t defaultNbIteration = 200
 
const double minEpsilon = 0
 
const double maxEpsilon = 1
 
const double defaultEpsilon = 1.0E-3
 
const int64_t maxNbNbCluster = 10
 
const int64_t maxNbAlgo = 5
 
const int64_t defaultNbAlgo = 1
 
const int64_t maxNbStrategy = 10
 
const int64_t defaultNbStrategy = 1
 
const int64_t maxNbModel = 100
 
const int64_t defaultNbModel = 1
 
const int64_t maxNbCriterion = 4
 
const int64_t defaultNbCriterion = 1
 
const int64_t minNbTryInStrategy = 1
 
const int64_t maxNbTryInStrategy = 100
 
const int64_t defaultNbTryInStrategy = 1
 
const int64_t nbTryInDefaultClusteringStrategy = 1
 
const int64_t minNbTryInInit = 1
 
const int64_t maxNbTryInInit = 1000
 
const int64_t defaultNbTryInInit = 10
 
const int64_t minNbIterationInInit = 1
 
const int64_t maxNbIterationInInit = 1000
 
const int64_t defaultNbIterationInInit = 5
 
const int64_t defaultNbIterationInInitForSemMax = 100
 
const double minEpsilonInInit = 0
 
const double maxEpsilonInInit = 1
 
const double defaultEpsilonInInit = 0.001
 
const int64_t maxNbIterationInCEM_INIT = 100
 
const double minOverflow = std::numeric_limits<double>::min()
 
const double minUnderflow = std::numeric_limits<double>::min()
 
const int64_t nbMaxSelection = 5
 
const int64_t maxNbOutputFiles = 52
 
const int64_t nbTestOutputFiles = 7
 
const double defaultFluryEpsilon = 0.001
 
const int64_t maxFluryIter = 7
 
const double minDeterminantValue
 
const double maxRelativeDiffValueTest = 1.0E-5
 
const double maxAbsoluteDiffValueTest = 1.0E-8
 
const int64_t defaultDCVnumberOfBlocks = 10
 
const int64_t defaultCVnumberOfBlocks = 10
 
const double minValueForLLandLLOne = 1.e-10
 
const int64_t int64_t_max = std::numeric_limits<int64_t>::max()
 
const int64_t nbQualitativeGraphics = 2
 
const int64_t nbQuantitativeGraphics = 3
 
const CVinitBlocks defaultCVinitBlocks = CV_RANDOM
 
const DCVinitBlocks defaultDCVinitBlocks = DCV_RANDOM
 
const StrategyInitName defaultStrategyInitName = SMALL_EM
 
const StrategyInitName defaultClusteringStrategyInitName = SMALL_EM
 
const AlgoStopName defaultAlgoStopName = NBITERATION_EPSILON
 
const CriterionName defaultCriterionName = BIC
 
const CriterionName defaultLearnCriterionName = CV
 
const AlgoName defaultAlgoName = EM
 
const AlgoName defaultClusteringAlgoName = EM
 
const int64_t nbFormatNumeric = 3
 
const ModelName defaultGaussianModelName = Gaussian_pk_Lk_C
 
const ModelName defaultBinaryModelName = Binary_pk_Ekjh
 
const ModelName defaultGaussianHDDAModelName = Gaussian_HD_pk_AkjBkQkD
 
const ModelName defaultHeterogeneousModelName = Heterogeneous_pk_Ekjh_Lk_Bk
 
const int64_t SMALL_ENOUGH_TO_USE_SELECTION_SORT = 15
 

Detailed Description

Base class for Label(s)

Author
F Langrognet & A Echenim
F Langrognet

Exception Classes

Function Documentation

std::ostream& XEM::operator<< ( std::ostream &  fo,
const Partition &  partition 
)
Returns
Operator << overloaded to write Partition
std::ifstream& XEM::operator>> ( std::ifstream &  fi,
Partition &  partition 
)
Returns
Operator >> overloaded to read Partition from input files

Variable Documentation

const double XEM::minDeterminantValue
Initial value:
=
std::numeric_limits<double>::min()