48 #ifndef __OUTLIERDETECTION_MULTIVARIATE_TYPES_H__ 49 #define __OUTLIERDETECTION_MULTIVARIATE_TYPES_H__ 51 #include "algorithms/algorithm.h" 52 #include "data_management/data/homogen_numeric_table.h" 67 namespace multivariate_outlier_detection
85 enum BaconInitializationMethod
101 lastInputId = threshold
112 lastResultId = weights
133 virtual void operator()(data_management::NumericTable *data,
134 data_management::NumericTable *location,
135 data_management::NumericTable *scatter,
136 data_management::NumericTable *threshold) = 0;
138 virtual ~InitIface() {}
145 struct DAAL_EXPORT DefaultInit :
public InitIface
154 virtual void operator()(data_management::NumericTable *data,
155 data_management::NumericTable *location,
156 data_management::NumericTable *scatter,
157 data_management::NumericTable *threshold) {}
163 template <Method method>
164 struct Parameter :
public daal::algorithms::Parameter
175 struct DAAL_EXPORT Parameter<defaultDense> :
public daal::algorithms::Parameter
178 services::SharedPtr<InitIface> initializationProcedure;
180 virtual services::Status check() const DAAL_C11_OVERRIDE {
return services::Status();}
193 struct DAAL_EXPORT Parameter<baconDense> :
public daal::algorithms::Parameter
195 Parameter(BaconInitializationMethod initMethod = baconMedian,
196 double alpha = 0.05,
double toleranceToConverge = 0.005) {}
198 BaconInitializationMethod initMethod;
202 double toleranceToConverge;
204 virtual services::Status check() const DAAL_C11_OVERRIDE {
return services::Status();}
212 class DAAL_EXPORT Input :
public daal::algorithms::Input
216 Input(
const Input& other);
225 data_management::NumericTablePtr
get(InputId id)
const;
232 void set(InputId id,
const data_management::NumericTablePtr &ptr);
241 services::Status check(
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
248 class DAAL_EXPORT Result :
public daal::algorithms::Result
251 DECLARE_SERIALIZABLE_CAST(Result);
254 virtual ~Result() {};
265 template <
typename algorithmFPType>
266 DAAL_EXPORT services::Status allocate(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *parameter,
const int method);
273 data_management::NumericTablePtr
get(ResultId id)
const;
280 void set(ResultId id,
const data_management::NumericTablePtr &ptr);
290 services::Status check(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
294 template<
typename Archive,
bool onDeserialize>
295 services::Status serialImpl(Archive *arch)
297 return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
300 typedef services::SharedPtr<Result> ResultPtr;
304 using interface1::InitIface;
305 using interface1::DefaultInit;
306 using interface1::Parameter;
307 using interface1::Input;
308 using interface1::Result;
309 using interface1::ResultPtr;
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::threshold
Definition: outlier_detection_multivariate_types.h:100
daal::services::interface1::Status
Class that holds the results of API calls. In case of API routine failure it contains the list of err...
Definition: error_handling.h:491
daal::algorithms::multivariate_outlier_detection::ResultId
ResultId
Definition: outlier_detection_multivariate_types.h:109
daal
Definition: algorithm_base_common.h:57
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::alpha
double alpha
Definition: outlier_detection_multivariate_types.h:199
daal::algorithms::multivariate_outlier_detection::Method
Method
Definition: outlier_detection_multivariate_types.h:73
daal::algorithms::interface1::Result
Base class to represent final results of the computation. Algorithm-specific final results are repres...
Definition: algorithm_types.h:331
daal::algorithms::multivariate_outlier_detection::baconMahalanobis
Definition: outlier_detection_multivariate_types.h:88
daal::algorithms::multivariate_outlier_detection::interface1::InitIface
Abstract interface class that provides function for the initialization procedure. ...
Definition: outlier_detection_multivariate_types.h:124
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::initMethod
BaconInitializationMethod initMethod
Definition: outlier_detection_multivariate_types.h:198
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< defaultDense >::initializationProcedure
services::SharedPtr< InitIface > initializationProcedure
Definition: outlier_detection_multivariate_types.h:178
daal::algorithms::multivariate_outlier_detection::baconDense
Definition: outlier_detection_multivariate_types.h:76
daal::algorithms::multivariate_outlier_detection::location
Definition: outlier_detection_multivariate_types.h:98
daal::algorithms::multivariate_outlier_detection::interface1::Parameter
Definition: outlier_detection_multivariate_types.h:164
daal::algorithms::interface1::Parameter
Base class to represent computation parameters. Algorithm-specific parameters are represented as deri...
Definition: algorithm_types.h:86
daal::services::interface1::SharedPtr
Shared pointer that retains shared ownership of an object through a pointer. Several SharedPtr object...
Definition: daal_shared_ptr.h:187
daal::algorithms::multivariate_outlier_detection::InputId
InputId
Definition: outlier_detection_multivariate_types.h:95
daal::data_management::interface1::NumericTable
Class for a data management component responsible for representation of data in the numeric format...
Definition: numeric_table.h:600
daal::algorithms::multivariate_outlier_detection::weights
Definition: outlier_detection_multivariate_types.h:111
daal::algorithms::multivariate_outlier_detection::interface1::DefaultInit
Class that specifies the default method for the initialization procedure.
Definition: outlier_detection_multivariate_types.h:145
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:154
daal::algorithms::multivariate_outlier_detection::baconMedian
Definition: outlier_detection_multivariate_types.h:87
daal::algorithms::multivariate_outlier_detection::defaultDense
Definition: outlier_detection_multivariate_types.h:75
daal::algorithms::multivariate_outlier_detection::data
Definition: outlier_detection_multivariate_types.h:97
daal::algorithms::multivariate_outlier_detection::scatter
Definition: outlier_detection_multivariate_types.h:99
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:248
daal::algorithms::multivariate_outlier_detection::interface1::Parameter< baconDense >::toleranceToConverge
double toleranceToConverge
Definition: outlier_detection_multivariate_types.h:202
daal::algorithms::multivariate_outlier_detection::BaconInitializationMethod
BaconInitializationMethod
Definition: outlier_detection_multivariate_types.h:85