24 #ifndef __OUTLIERDETECTION_MULTIVARIATE_TYPES_H__
25 #define __OUTLIERDETECTION_MULTIVARIATE_TYPES_H__
27 #include "algorithms/algorithm.h"
28 #include "data_management/data/homogen_numeric_table.h"
43 namespace multivariate_outlier_detection
61 enum BaconInitializationMethod
77 lastInputId = threshold
88 lastResultId = weights
109 virtual void operator()(data_management::NumericTable *data,
110 data_management::NumericTable *location,
111 data_management::NumericTable *scatter,
112 data_management::NumericTable *threshold) = 0;
114 virtual ~InitIface() {}
121 struct DAAL_EXPORT DefaultInit :
public InitIface
130 virtual void operator()(data_management::NumericTable *data,
131 data_management::NumericTable *location,
132 data_management::NumericTable *scatter,
133 data_management::NumericTable *threshold) {}
139 template <Method method>
140 struct Parameter :
public daal::algorithms::Parameter
151 struct DAAL_EXPORT Parameter<defaultDense> :
public daal::algorithms::Parameter
154 services::SharedPtr<InitIface> initializationProcedure;
156 virtual services::Status check() const DAAL_C11_OVERRIDE {
return services::Status();}
169 struct DAAL_EXPORT Parameter<baconDense> :
public daal::algorithms::Parameter
171 Parameter(BaconInitializationMethod initMethod = baconMedian,
172 double alpha = 0.05,
double toleranceToConverge = 0.005) {}
174 BaconInitializationMethod initMethod;
178 double toleranceToConverge;
180 virtual services::Status check() const DAAL_C11_OVERRIDE {
return services::Status();}
188 class DAAL_EXPORT Input :
public daal::algorithms::Input
192 Input(
const Input& other);
201 data_management::NumericTablePtr
get(InputId id)
const;
208 void set(InputId
id,
const data_management::NumericTablePtr &ptr);
217 services::Status check(
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
224 class DAAL_EXPORT Result :
public daal::algorithms::Result
227 DECLARE_SERIALIZABLE_CAST(Result);
230 virtual ~Result() {};
241 template <
typename algorithmFPType>
242 DAAL_EXPORT services::Status allocate(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *parameter,
const int method);
249 data_management::NumericTablePtr
get(ResultId id)
const;
256 void set(ResultId
id,
const data_management::NumericTablePtr &ptr);
266 services::Status check(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
270 template<
typename Archive,
bool onDeserialize>
271 services::Status serialImpl(Archive *arch)
273 return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
276 typedef services::SharedPtr<Result> ResultPtr;
280 using interface1::InitIface;
281 using interface1::DefaultInit;
282 using interface1::Parameter;
283 using interface1::Input;
284 using interface1::Result;
285 using interface1::ResultPtr;
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::toleranceToConverge
double toleranceToConverge
Definition: outlier_detection_multivariate_types.h:178
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< defaultDense >::initializationProcedure
services::SharedPtr< InitIface > initializationProcedure
Definition: outlier_detection_multivariate_types.h:154
daal::algorithms::multivariate_outlier_detection::interface1::DefaultInit::operator()
virtual void operator()(data_management::NumericTable *data, data_management::NumericTable *location, data_management::NumericTable *scatter, data_management::NumericTable *threshold)
Definition: outlier_detection_multivariate_types.h:130
daal::algorithms::multivariate_outlier_detection::location
Definition: outlier_detection_multivariate_types.h:74
daal::algorithms::multivariate_outlier_detection::baconMahalanobis
Definition: outlier_detection_multivariate_types.h:64
daal::algorithms::multivariate_outlier_detection::weights
Definition: outlier_detection_multivariate_types.h:87
daal::algorithms::multivariate_outlier_detection::interface1::Input
Input objects for the multivariate outlier detection algorithm
Definition: outlier_detection_multivariate_types.h:188
daal::algorithms::multivariate_outlier_detection::threshold
Definition: outlier_detection_multivariate_types.h:76
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::initMethod
BaconInitializationMethod initMethod
Definition: outlier_detection_multivariate_types.h:174
daal::algorithms::multivariate_outlier_detection::defaultDense
Definition: outlier_detection_multivariate_types.h:51
daal::algorithms::multivariate_outlier_detection::interface1::InitIface::operator()
virtual void operator()(data_management::NumericTable *data, data_management::NumericTable *location, data_management::NumericTable *scatter, data_management::NumericTable *threshold)=0
daal::algorithms::multivariate_outlier_detection::baconDense
Definition: outlier_detection_multivariate_types.h:52
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::alpha
double alpha
Definition: outlier_detection_multivariate_types.h:175
daal::algorithms::multivariate_outlier_detection::interface1::Parameter
Definition: outlier_detection_multivariate_types.h:140
daal::algorithms::multivariate_outlier_detection::baconMedian
Definition: outlier_detection_multivariate_types.h:63
daal::algorithms::multivariate_outlier_detection::data
Definition: outlier_detection_multivariate_types.h:73
daal::algorithms::multivariate_outlier_detection::InputId
InputId
Definition: outlier_detection_multivariate_types.h:71
daal::algorithms::multivariate_outlier_detection::BaconInitializationMethod
BaconInitializationMethod
Definition: outlier_detection_multivariate_types.h:61
daal::algorithms::multivariate_outlier_detection::interface1::DefaultInit
Class that specifies the default method for the initialization procedure.
Definition: outlier_detection_multivariate_types.h:121
daal::algorithms::multivariate_outlier_detection::scatter
Definition: outlier_detection_multivariate_types.h:75
daal::algorithms::multivariate_outlier_detection::interface1::Result
Results obtained with the compute() method of the multivariate outlier detection algorithm in the bat...
Definition: outlier_detection_multivariate_types.h:224
daal::algorithms::multivariate_outlier_detection::ResultId
ResultId
Definition: outlier_detection_multivariate_types.h:85
daal::algorithms::multivariate_outlier_detection::interface1::InitIface
Abstract interface class that provides function for the initialization procedure. ...
Definition: outlier_detection_multivariate_types.h:100
daal::algorithms::multivariate_outlier_detection::Method
Method
Definition: outlier_detection_multivariate_types.h:49