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

initializer.h
1 /* file: initializer.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 neural network layer.
21 //--
22 */
23 
24 #ifndef __INITIALIZERS_H__
25 #define __INITIALIZERS_H__
26 
27 #include "algorithms/algorithm.h"
28 #include "data_management/data/tensor.h"
29 #include "services/daal_defines.h"
30 #include "algorithms/neural_networks/initializers/initializer_types.h"
31 
32 namespace daal
33 {
34 namespace algorithms
35 {
36 namespace neural_networks
37 {
38 namespace initializers
39 {
44 namespace interface1
45 {
50 class InitializerContainerIface : public AnalysisContainerIface<batch>
51 {
52 public:
53  virtual ~InitializerContainerIface()
54  {}
55 };
56 
61 class InitializerIface : public daal::algorithms::Analysis<batch>
62 {
63 public:
64  typedef algorithms::neural_networks::initializers::Input InputType;
65  typedef algorithms::neural_networks::initializers::Parameter ParameterType;
66  typedef algorithms::neural_networks::initializers::Result ResultType;
67 
68  InputType input;
70  InitializerIface() {}
71  InitializerIface(const InitializerIface& other) {}
72 
73  virtual ~InitializerIface() {}
74 
79  virtual ParameterType * getParameter() = 0;
80 };
81 typedef services::SharedPtr<InitializerIface> InitializerIfacePtr;
82 
83 } // namespace interface1
84 using interface1::InitializerContainerIface;
85 using interface1::InitializerIface;
86 using interface1::InitializerIfacePtr;
88 } // namespace initializers
89 } // namespace neural_networks
90 } // namespace algorithms
91 } // namespace daal
92 #endif
daal::algorithms::neural_networks::initializers::interface1::InitializerIface::getParameter
virtual ParameterType * getParameter()=0
daal::algorithms::neural_networks::initializers::interface1::InitializerIface::input
InputType input
Definition: initializer.h:68
daal::algorithms::neural_networks::initializers::interface1::InitializerContainerIface
Class that specifies interfaces of implementations of the neural network weights and biases initializ...
Definition: initializer.h:50
daal::algorithms::AnalysisContainerIface
Abstract interface class that provides virtual methods to access and run implementations of the analy...
Definition: analysis.h:55
daal_defines.h
daal::algorithms::neural_networks::initializers::interface1::InitializerIface
Class representing a neural network weights and biases initializer.
Definition: initializer.h:61
daal::algorithms::Analysis
Provides methods for execution of operations over data, such as computation of Summary Statistics est...
Definition: analysis.h:70

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