C++ API Reference for Intel® Data Analytics Acceleration Library 2020 Update 1

cross_entropy_loss_types.h
1 /* file: cross_entropy_loss_types.h */
2 /*******************************************************************************
3 * Copyright 2014-2020 Intel Corporation
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *******************************************************************************/
17 
18 /*
19 //++
20 // Implementation of cross-entropy loss objective function
21 //--
22 */
23 
24 #ifndef __CROSS_ENTROPY_LOSS_TYPES_H__
25 #define __CROSS_ENTROPY_LOSS_TYPES_H__
26 
27 #include "algorithms/algorithm.h"
28 #include "data_management/data/numeric_table.h"
29 #include "services/daal_defines.h"
30 #include "sum_of_functions_types.h"
31 
32 namespace daal
33 {
34 namespace algorithms
35 {
39 namespace optimization_solver
40 {
50 namespace cross_entropy_loss
51 {
52 
57 enum InputId
58 {
59  argument = (int)sum_of_functions::argument,
60  data,
61  dependentVariables,
62  lastInputId = dependentVariables
63 };
64 
69 enum Method
70 {
71  defaultDense = 0
72 };
73 
77 namespace interface1
78 {
79 
86 /* [interface1::Parameter source code] */
87 struct DAAL_EXPORT Parameter : public sum_of_functions::interface1::Parameter
88 {
99  DAAL_DEPRECATED Parameter(size_t nClasses, size_t numberOfTerms,
100  data_management::NumericTablePtr batchIndices = data_management::NumericTablePtr(),
101  const DAAL_UINT64 resultsToCompute = objective_function::gradient);
102 
107  DAAL_DEPRECATED Parameter(const Parameter &other);
113  DAAL_DEPRECATED_VIRTUAL virtual services::Status check() const;
114 
115  DAAL_DEPRECATED_VIRTUAL virtual ~Parameter() {}
116 
117  bool interceptFlag;
118  float penaltyL1;
119  float penaltyL2;
120  size_t nClasses;
121 };
122 /* [interface1::Parameter source code] */
123 
128 class DAAL_EXPORT Input : public sum_of_functions::interface1::Input
129 {
130 public:
132  DAAL_DEPRECATED Input();
133 
135  DAAL_DEPRECATED Input(const Input& other);
136 
138  DAAL_DEPRECATED_VIRTUAL virtual ~Input() {}
139 
145  DAAL_DEPRECATED void set(InputId id, const data_management::NumericTablePtr &ptr);
146 
152  DAAL_DEPRECATED data_management::NumericTablePtr get(InputId id) const;
153 
161  DAAL_DEPRECATED services::Status check(const daal::algorithms::Parameter *par, int method) const DAAL_C11_OVERRIDE;
162 };
164 } // namespace interface1
165 
169 namespace interface2
170 {
171 
178 /* [Parameter source code] */
179 struct DAAL_EXPORT Parameter : public sum_of_functions::Parameter
180 {
191  Parameter(size_t nClasses, size_t numberOfTerms,
192  data_management::NumericTablePtr batchIndices = data_management::NumericTablePtr(),
193  const DAAL_UINT64 resultsToCompute = objective_function::gradient);
194 
199  Parameter(const Parameter &other);
205  virtual services::Status check() const;
206 
207  virtual ~Parameter() {}
208 
209  bool interceptFlag;
210  float penaltyL1;
211  float penaltyL2;
212  size_t nClasses;
213 };
214 
219 class DAAL_EXPORT Input : public sum_of_functions::Input
220 {
221 public:
223  Input();
224 
226  Input(const Input& other);
227 
229  virtual ~Input() {}
230 
236  void set(InputId id, const data_management::NumericTablePtr &ptr);
237 
243  data_management::NumericTablePtr get(InputId id) const;
244 
252  services::Status check(const daal::algorithms::Parameter *par, int method) const DAAL_C11_OVERRIDE;
253 };
254 /* [Parameter source code] */
255 }// namespace interface2
256 using interface2::Parameter;
257 using interface2::Input;
258 
259 } // namespace cross_entropy_loss
260 } // namespace optimization_solver
261 } // namespace algorithm
262 } // namespace daal
263 #endif
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Parameter::nClasses
size_t nClasses
Definition: cross_entropy_loss_types.h:120
daal::algorithms::optimization_solver::cross_entropy_loss::argument
Definition: cross_entropy_loss_types.h:59
daal::algorithms::optimization_solver::cross_entropy_loss::InputId
InputId
Definition: cross_entropy_loss_types.h:57
daal::algorithms::optimization_solver::sum_of_functions::interface1::Input
Input objects for the Sum of functions
Definition: sum_of_functions_types.h:113
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Input
Input objects for the Cross-entropy loss objective function
Definition: cross_entropy_loss_types.h:219
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Parameter::nClasses
size_t nClasses
Definition: cross_entropy_loss_types.h:212
daal::algorithms::optimization_solver::cross_entropy_loss::data
Definition: cross_entropy_loss_types.h:60
daal::algorithms::optimization_solver::cross_entropy_loss::Method
Method
Definition: cross_entropy_loss_types.h:69
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Parameter::penaltyL1
float penaltyL1
Definition: cross_entropy_loss_types.h:118
daal::algorithms::optimization_solver::sum_of_functions::interface1::Parameter
Parameter for the Sum of functions
Definition: sum_of_functions_types.h:71
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Parameter::penaltyL1
float penaltyL1
Definition: cross_entropy_loss_types.h:210
daal::algorithms::optimization_solver::cross_entropy_loss::dependentVariables
Definition: cross_entropy_loss_types.h:61
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Parameter::interceptFlag
bool interceptFlag
Definition: cross_entropy_loss_types.h:117
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Parameter
Parameter for Cross-entropy loss objective function
Definition: cross_entropy_loss_types.h:179
daal::algorithms::optimization_solver::cross_entropy_loss::defaultDense
Definition: cross_entropy_loss_types.h:71
daal_defines.h
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Parameter
Parameter for Cross-entropy loss objective function
Definition: cross_entropy_loss_types.h:87
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Parameter::interceptFlag
bool interceptFlag
Definition: cross_entropy_loss_types.h:209
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Input
Input objects for the Cross-entropy loss objective function
Definition: cross_entropy_loss_types.h:128
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Input::~Input
virtual ~Input()
Definition: cross_entropy_loss_types.h:229
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Parameter::penaltyL2
float penaltyL2
Definition: cross_entropy_loss_types.h:119
daal::algorithms::optimization_solver::sum_of_functions::argument
Definition: sum_of_functions_types.h:56
daal::algorithms::optimization_solver::cross_entropy_loss::interface1::Input::~Input
virtual DAAL_DEPRECATED_VIRTUAL ~Input()
Definition: cross_entropy_loss_types.h:138
daal::algorithms::optimization_solver::objective_function::gradient
Definition: objective_function_types.h:69
daal::algorithms::optimization_solver::cross_entropy_loss::interface2::Parameter::penaltyL2
float penaltyL2
Definition: cross_entropy_loss_types.h:211

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