22 #ifndef __EM_GMM_INIT_TYPES_H__
23 #define __EM_GMM_INIT_TYPES_H__
25 #include "algorithms/algorithm.h"
26 #include "data_management/data/numeric_table.h"
27 #include "data_management/data/homogen_numeric_table.h"
28 #include "services/daal_defines.h"
29 #include "em_gmm_covariance_storage_id.h"
30 #include "algorithms/engines/mt19937/mt19937.h"
78 enum ResultCovariancesId
80 covariances = lastResultId + 1,
81 lastResultCovariancesId = covariances
107 struct DAAL_EXPORT Parameter :
public daal::algorithms::Parameter
118 Parameter(
size_t nComponents,
size_t nTrials = 20,
size_t nIterations = 10,
size_t seed = 777,
119 double accuracyThreshold = 1.0e-04, em_gmm::CovarianceStorageId covarianceStorage = em_gmm::full);
121 virtual ~Parameter() {}
126 virtual services::Status check()
const;
132 double accuracyThreshold;
133 em_gmm::CovarianceStorageId covarianceStorage;
134 engines::EnginePtr engine;
142 class DAAL_EXPORT Input :
public daal::algorithms::Input
149 Input(
const Input& other) : daal::algorithms::Input(other){}
158 void set(InputId
id,
const data_management::NumericTablePtr &ptr);
165 data_management::NumericTablePtr
get(InputId id)
const;
172 services::Status check(
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
179 class DAAL_EXPORT Result :
public daal::algorithms::Result
182 DECLARE_SERIALIZABLE_CAST(Result);
186 virtual ~Result() {};
194 template <
typename algorithmFPType>
195 DAAL_EXPORT services::Status allocate(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *parameter,
const int method);
202 void set(ResultId
id,
const data_management::NumericTablePtr &ptr);
209 void set(ResultCovariancesId
id,
const data_management::DataCollectionPtr &ptr);
216 data_management::NumericTablePtr
get(ResultId id)
const;
223 data_management::DataCollectionPtr
get(ResultCovariancesId id)
const;
231 data_management::NumericTablePtr
get(ResultCovariancesId id,
size_t index)
const;
239 services::Status check(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
243 template<
typename Archive,
bool onDeserialize>
244 services::Status serialImpl(Archive *arch)
246 return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
249 typedef services::SharedPtr<daal::algorithms::em_gmm::init::interface1::Result> ResultPtr;
253 using interface1::Parameter;
254 using interface1::Input;
255 using interface1::Result;
256 using interface1::ResultPtr;
daal::algorithms::em_gmm::init::interface1::Parameter::accuracyThreshold
double accuracyThreshold
Definition: em_gmm_init_types.h:132
daal::algorithms::em_gmm::init::ResultCovariancesId
ResultCovariancesId
Definition: em_gmm_init_types.h:78
daal
Definition: algorithm_base_common.h:31
daal::algorithms::em_gmm::CovarianceStorageId
CovarianceStorageId
Definition: em_gmm_covariance_storage_id.h:40
daal::algorithms::em_gmm::init::covariances
Definition: em_gmm_init_types.h:80
daal::algorithms::em_gmm::init::interface1::Parameter::seed
size_t seed
Definition: em_gmm_init_types.h:131
daal::algorithms::em_gmm::nIterations
Definition: em_gmm_types.h:97
daal::algorithms::em_gmm::init::interface1::Parameter::covarianceStorage
em_gmm::CovarianceStorageId covarianceStorage
Definition: em_gmm_init_types.h:133
daal::algorithms::em_gmm::init::Method
Method
Definition: em_gmm_init_types.h:88
daal::algorithms::em_gmm::init::data
Definition: em_gmm_init_types.h:59
daal::algorithms::em_gmm::init::interface1::Parameter::nTrials
size_t nTrials
Definition: em_gmm_init_types.h:129
daal::algorithms::em_gmm::init::ResultId
ResultId
Definition: em_gmm_init_types.h:67
daal::algorithms::em_gmm::init::interface1::Parameter::nIterations
size_t nIterations
Definition: em_gmm_init_types.h:130
daal::algorithms::em_gmm::init::interface1::Result
Results obtained with the compute() method of the initialization of the EM for GMM algorithm in the b...
Definition: em_gmm_init_types.h:179
daal::algorithms::em_gmm::init::interface1::Parameter::nComponents
size_t nComponents
Definition: em_gmm_init_types.h:128
daal::algorithms::em_gmm::init::defaultDense
Definition: em_gmm_init_types.h:90
daal::algorithms::em_gmm::init::means
Definition: em_gmm_init_types.h:70
daal::algorithms::em_gmm::init::interface1::Parameter::engine
engines::EnginePtr engine
Definition: em_gmm_init_types.h:134
daal::algorithms::em_gmm::init::InputId
InputId
Definition: em_gmm_init_types.h:57
daal::algorithms::em_gmm::init::interface1::Parameter
Parameter for the computation of initial values for the EM for GMM algorithm
Definition: em_gmm_init_types.h:107
daal::algorithms::em_gmm::init::weights
Definition: em_gmm_init_types.h:69