48 #ifndef __ELTWISE_SUM_LAYER_BACKWARD_TYPES_H__ 49 #define __ELTWISE_SUM_LAYER_BACKWARD_TYPES_H__ 51 #include "algorithms/algorithm.h" 52 #include "services/daal_defines.h" 54 #include "data_management/data/tensor.h" 56 #include "algorithms/neural_networks/layers/layer_backward_types.h" 57 #include "algorithms/neural_networks/layers/eltwise_sum/eltwise_sum_layer_types.h" 63 namespace neural_networks
90 class DAAL_EXPORT Input :
public layers::backward::Input
93 typedef layers::backward::Input super;
100 Input(
const Input& other);
107 using layers::backward::Input::get;
112 using layers::backward::Input::set;
119 data_management::TensorPtr
get(LayerDataId id)
const;
126 data_management::NumericTablePtr
get(LayerDataNumericTableId id)
const;
133 void set(LayerDataId id,
const data_management::TensorPtr &value);
140 void set(LayerDataNumericTableId id,
const data_management::NumericTablePtr &value);
149 services::Status check(
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
156 size_t getNumberOfCoefficients()
const;
159 size_t getNumberOfAuxCoefficientsFromTable()
const;
161 services::Status checkInputGradient()
const;
162 services::Status checkAuxCoefficients()
const;
163 services::Status checkAuxNumberOfCoefficients()
const;
170 class DAAL_EXPORT Result :
public layers::backward::Result
173 DECLARE_SERIALIZABLE_CAST(Result);
185 using layers::backward::Result::get;
190 using layers::backward::Result::set;
198 data_management::TensorPtr
get(layers::backward::ResultLayerDataId id,
size_t index)
const;
206 void set(layers::backward::ResultLayerDataId id,
const data_management::TensorPtr &value,
size_t index);
213 virtual data_management::TensorPtr getGradient(
size_t index)
const DAAL_C11_OVERRIDE;
223 template <
typename algorithmFPType>
224 DAAL_EXPORT services::Status allocate(
const daal::algorithms::Input *input,
225 const daal::algorithms::Parameter *parameter,
const int method);
235 services::Status check(
const daal::algorithms::Input *input,
236 const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
242 virtual LayerResultLayout getLayout()
const DAAL_C11_OVERRIDE;
246 template<
typename Archive,
bool onDeserialize>
247 services::Status serialImpl(Archive *arch)
249 return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
253 template<
typename algorithmFPType>
254 services::Status allocateNewOutputTensors(
const data_management::TensorPtr &inputGradient,
size_t nOutputs);
256 LayerDataPtr getResultLayerDataAllocateIfEmpty();
258 void useInputGradientTensorAsOutput(
const data_management::TensorPtr &inputGradient,
size_t nOutputs);
260 services::Status checkResultLayerData(
const Input *input)
const;
261 services::Status checkOutputGradients(
const Input *input)
const;
264 typedef services::SharedPtr<Result> ResultPtr;
267 using interface1::Input;
268 using interface1::Result;
269 using interface1::ResultPtr;
daal::services::interface1::Status
Class that holds the results of API calls. In case of API routine failure it contains the list of err...
Definition: error_handling.h:491
daal
Definition: algorithm_base_common.h:57
daal::algorithms::neural_networks::layers::eltwise_sum::LayerDataNumericTableId
LayerDataNumericTableId
Available identifiers of input numeric tables for the backward element-wise sum layer and identifiers...
Definition: eltwise_sum_layer_types.h:98
daal::algorithms::neural_networks::layers::eltwise_sum::backward::interface1::Result
Results obtained with the compute() method of the backward element-wise sum layer.
Definition: eltwise_sum_layer_backward_types.h:170
daal::algorithms::neural_networks::layers::backward::interface1::Result::get
data_management::TensorPtr get(ResultId id) const
daal::algorithms::neural_networks::layers::LayerResultLayout
LayerResultLayout
Definition: layer_types.h:94
daal::algorithms::neural_networks::layers::backward::ResultLayerDataId
ResultLayerDataId
Definition: layer_backward_types.h:120
daal::algorithms::neural_networks::layers::eltwise_sum::LayerDataId
LayerDataId
Available identifiers of input tensors for the backward element-wise sum layer and identifiers of res...
Definition: eltwise_sum_layer_types.h:87
daal::algorithms::interface1::Parameter
Base class to represent computation parameters. Algorithm-specific parameters are represented as deri...
Definition: algorithm_types.h:86
daal::services::interface1::SharedPtr
Shared pointer that retains shared ownership of an object through a pointer. Several SharedPtr object...
Definition: daal_shared_ptr.h:187
daal::algorithms::math::abs::value
Definition: abs_types.h:112
daal::algorithms::neural_networks::layers::backward::interface1::Result
Provides methods to access the result obtained with the compute() method of the layer algorithm...
Definition: layer_backward_types.h:224
daal::algorithms::neural_networks::layers::backward::interface1::Result::set
void set(ResultId id, const data_management::TensorPtr &ptr)