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

loss_layer_backward.h
1 /* file: loss_layer_backward.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 interface for the backward loss layer in the batch processing mode
19 //--
20 */
21 
22 #ifndef __LOSS_LAYER_BACKWARD_H__
23 #define __LOSS_LAYER_BACKWARD_H__
24 
25 #include "algorithms/algorithm.h"
26 #include "data_management/data/tensor.h"
27 #include "services/daal_defines.h"
28 #include "algorithms/neural_networks/layers/layer.h"
29 #include "algorithms/neural_networks/layers/loss/loss_layer_backward_types.h"
30 
31 namespace daal
32 {
33 namespace algorithms
34 {
35 namespace neural_networks
36 {
37 namespace layers
38 {
39 namespace loss
40 {
41 namespace backward
42 {
43 namespace interface1
44 {
66 class Batch : public layers::backward::LayerIfaceImpl
67 {
68 public:
69  typedef algorithms::neural_networks::layers::loss::backward::Input InputType;
70  typedef algorithms::neural_networks::layers::loss::backward::Result ResultType;
71 
73  Batch()
74  {
75  initialize();
76  };
77 
84  Batch(const Batch &other)
85  {
86  initialize();
87  }
88 
95  services::SharedPtr<Batch > clone() const
96  {
97  return services::SharedPtr<Batch >(cloneImpl());
98  }
99 
100 protected:
101  virtual Batch *cloneImpl() const DAAL_C11_OVERRIDE = 0;
102 
103  void initialize()
104  {}
105 };
107 } // namespace interface1
108 using interface1::Batch;
109 } // namespace backward
110 } // namespace loss
111 } // namespace layers
112 } // namespace neural_networks
113 } // namespace algorithms
114 } // namespace daal
115 #endif
daal
Definition: algorithm_base_common.h:31
daal::algorithms::neural_networks::layers::loss::backward::interface1::Batch
Provides methods for the backward loss layer in the batch processing mode.
Definition: loss_layer_backward.h:66
daal::algorithms::neural_networks::layers::loss::backward::interface1::Batch::clone
services::SharedPtr< Batch > clone() const
Definition: loss_layer_backward.h:95
daal_defines.h
daal::algorithms::neural_networks::layers::loss::backward::interface1::Batch::Batch
Batch()
Definition: loss_layer_backward.h:73
daal::algorithms::neural_networks::layers::loss::backward::interface1::Batch::Batch
Batch(const Batch &other)
Definition: loss_layer_backward.h:84

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