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

lcn_layer_types.h
1 /* file: lcn_layer_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 // Implementation of the local contrast normalization layer.
19 //--
20 */
21 
22 #ifndef __NEURAL_NETWORKS__LCN_LAYER_TYPES_H__
23 #define __NEURAL_NETWORKS__LCN_LAYER_TYPES_H__
24 
25 #include "algorithms/algorithm.h"
26 #include "data_management/data/tensor.h"
27 #include "data_management/data/homogen_tensor.h"
28 #include "data_management/data/homogen_numeric_table.h"
29 #include "services/daal_defines.h"
30 #include "algorithms/neural_networks/layers/layer_types.h"
31 
32 namespace daal
33 {
34 namespace algorithms
35 {
36 namespace neural_networks
37 {
38 namespace layers
39 {
49 namespace lcn
50 {
54 enum Method
55 {
56  defaultDense = 0,
57 };
58 
63 enum LayerDataId
64 {
65  auxCenteredData,
66  auxSigma,
67  auxC,
68  auxInvMax,
69  lastLayerDataId = auxInvMax
70 };
71 
75 struct Indices
76 {
82  Indices(size_t first, size_t second) { dims[0] = first; dims[1] = second; }
83  size_t dims[2];
84 };
85 
86 namespace interface1
87 {
92 class DAAL_EXPORT Parameter: public layers::Parameter
93 {
94 public:
98  Parameter();
99 
100  data_management::TensorPtr kernel;
101  data_management::NumericTablePtr sumDimension;
102  Indices indices;
103  double sigmaDegenerateCasesThreshold;
110  services::Status check() const DAAL_C11_OVERRIDE;
111 };
112 
113 } // namespace interface1
114 using interface1::Parameter;
115 
116 } // namespace lcn
118 } // namespace layers
119 } // namespace neural_networks
120 } // namespace algorithms
121 } // namespace daal
122 #endif
daal::algorithms::neural_networks::layers::lcn::Indices::Indices
Indices(size_t first, size_t second)
Definition: lcn_layer_types.h:82
daal
Definition: algorithm_base_common.h:31
daal::algorithms::neural_networks::layers::lcn::interface1::Parameter::indices
Indices indices
Definition: lcn_layer_types.h:102
daal::algorithms::neural_networks::layers::lcn::interface1::Parameter
local contrast normalization layer parameters
Definition: lcn_layer_types.h:92
daal_defines.h
daal::algorithms::neural_networks::layers::lcn::LayerDataId
LayerDataId
Definition: lcn_layer_types.h:63
daal::algorithms::neural_networks::layers::lcn::Indices
Data structure representing the indices of the two dimensions on which local contrast normalization i...
Definition: lcn_layer_types.h:75
daal::algorithms::neural_networks::layers::lcn::interface1::Parameter::sumDimension
data_management::NumericTablePtr sumDimension
Definition: lcn_layer_types.h:101
daal::algorithms::neural_networks::layers::lcn::interface1::Parameter::sigmaDegenerateCasesThreshold
double sigmaDegenerateCasesThreshold
Definition: lcn_layer_types.h:103
daal::algorithms::neural_networks::layers::lcn::Method
Method
Definition: lcn_layer_types.h:54
daal::algorithms::neural_networks::layers::lcn::interface1::Parameter::kernel
data_management::TensorPtr kernel
Definition: lcn_layer_types.h:100
daal::algorithms::neural_networks::layers::lcn::defaultDense
Definition: lcn_layer_types.h:56

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