C++ API Reference for Intel® Data Analytics Acceleration Library 2019 Update 5

outlier_detection_bacon_types.h
1 /* file: outlier_detection_bacon_types.h */
2 /*******************************************************************************
3 * Copyright 2014-2019 Intel Corporation.
4 *
5 * This software and the related documents are Intel copyrighted materials, and
6 * your use of them is governed by the express license under which they were
7 * provided to you (License). Unless the License provides otherwise, you may not
8 * use, modify, copy, publish, distribute, disclose or transmit this software or
9 * the related documents without Intel's prior written permission.
10 *
11 * This software and the related documents are provided as is, with no express
12 * or implied warranties, other than those that are expressly stated in the
13 * License.
14 *******************************************************************************/
15 
16 /*
17 //++
18 // Outlier Detection algorithm parameter structure
19 //--
20 */
21 
22 #ifndef __OUTLIERDETECTION_BACON_TYPES_H__
23 #define __OUTLIERDETECTION_BACON_TYPES_H__
24 
25 #include "algorithms/algorithm.h"
26 #include "data_management/data/homogen_numeric_table.h"
27 
28 namespace daal
29 {
30 namespace algorithms
31 {
41 namespace bacon_outlier_detection
42 {
47 enum Method
48 {
49  defaultDense = 0
50 };
51 
56 enum InitializationMethod
57 {
58  baconMedian = 0,
59  baconMahalanobis = 1
60 };
61 
66 enum InputId
67 {
68  data = 0
69 };
70 
75 enum ResultId
76 {
77  weights = 0
78 };
79 
83 namespace interface1
84 {
85 
92 /* [ParameterBacon source code] */
93 struct DAAL_EXPORT Parameter : public daal::algorithms::Parameter
94 {
95  Parameter(InitializationMethod initMethod = baconMedian,
96  double alpha = 0.05, double toleranceToConverge = 0.005);
97 
98  InitializationMethod initMethod;
99  double alpha;
102  double toleranceToConverge;
104  virtual services::Status check() const DAAL_C11_OVERRIDE;
105 };
106 /* [ParameterBacon source code] */
107 
112 class DAAL_EXPORT Input : public daal::algorithms::Input
113 {
114 public:
115  Input();
116  Input(const Input& other);
117 
118  virtual ~Input() {}
119 
125  data_management::NumericTablePtr get(InputId id) const;
126 
132  void set(InputId id, const data_management::NumericTablePtr &ptr);
133 
141  services::Status check(const daal::algorithms::Parameter *par, int method) const DAAL_C11_OVERRIDE;
142 };
143 
148 class DAAL_EXPORT Result : public daal::algorithms::Result
149 {
150 public:
151  DECLARE_SERIALIZABLE_CAST(Result);
152  Result();
153 
154  virtual ~Result() {};
155 
165  template <typename algorithmFPType>
166  DAAL_EXPORT services::Status allocate(const daal::algorithms::Input *input, const daal::algorithms::Parameter *parameter, const int method);
167 
173  data_management::NumericTablePtr get(ResultId id) const;
174 
180  void set(ResultId id, const data_management::NumericTablePtr &ptr);
181 
190  services::Status check(const daal::algorithms::Input *input, const daal::algorithms::Parameter *par, int method) const DAAL_C11_OVERRIDE;
191 
192 protected:
194  template<typename Archive, bool onDeserialize>
195  services::Status serialImpl(Archive *arch)
196  {
197  return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
198  }
199 };
200 typedef services::SharedPtr<Result> ResultPtr;
201 
203 } // namespace interface1
204 using interface1::Parameter;
205 using interface1::Input;
206 using interface1::Result;
207 using interface1::ResultPtr;
208 
209 } // namespace bacon_outlier_detection
210 } // namespace algorithm
211 } // namespace daal
212 #endif
daal::algorithms::bacon_outlier_detection::weights
Definition: outlier_detection_bacon_types.h:77
daal::algorithms::bacon_outlier_detection::interface1::Input
Input objects for the BACON outlier detection algorithm
Definition: outlier_detection_bacon_types.h:112
daal
Definition: algorithm_base_common.h:31
daal::algorithms::bacon_outlier_detection::baconMahalanobis
Definition: outlier_detection_bacon_types.h:59
daal::algorithms::bacon_outlier_detection::interface1::Parameter::alpha
double alpha
Definition: outlier_detection_bacon_types.h:99
daal::algorithms::bacon_outlier_detection::ResultId
ResultId
Definition: outlier_detection_bacon_types.h:75
daal::algorithms::bacon_outlier_detection::defaultDense
Definition: outlier_detection_bacon_types.h:49
daal::algorithms::bacon_outlier_detection::InputId
InputId
Definition: outlier_detection_bacon_types.h:66
daal::algorithms::bacon_outlier_detection::baconMedian
Definition: outlier_detection_bacon_types.h:58
daal::algorithms::bacon_outlier_detection::interface1::Parameter
Parameters of the outlier detection computation using the baconDense method.
Definition: outlier_detection_bacon_types.h:93
daal::algorithms::bacon_outlier_detection::Method
Method
Definition: outlier_detection_bacon_types.h:47
daal::algorithms::bacon_outlier_detection::interface1::Parameter::initMethod
InitializationMethod initMethod
Definition: outlier_detection_bacon_types.h:98
daal::algorithms::bacon_outlier_detection::interface1::Result
Results obtained with the compute() method of the BACON outlier detection algorithm in the batch proc...
Definition: outlier_detection_bacon_types.h:148
daal::algorithms::bacon_outlier_detection::data
Definition: outlier_detection_bacon_types.h:68
daal::algorithms::bacon_outlier_detection::InitializationMethod
InitializationMethod
Definition: outlier_detection_bacon_types.h:56
daal::algorithms::bacon_outlier_detection::interface1::Parameter::toleranceToConverge
double toleranceToConverge
Definition: outlier_detection_bacon_types.h:102

For more complete information about compiler optimizations, see our Optimization Notice.