49 #ifndef __NEURAL_NETWORKS_PREDICTION_H__
50 #define __NEURAL_NETWORKS_PREDICTION_H__
52 #include "algorithms/algorithm.h"
54 #include "services/daal_defines.h"
55 #include "algorithms/neural_networks/neural_networks_types.h"
56 #include "algorithms/neural_networks/neural_networks_prediction_types.h"
57 #include "algorithms/neural_networks/neural_networks_prediction_model.h"
58 #include "algorithms/neural_networks/layers/layer.h"
67 namespace neural_networks
82 template<
typename algorithmFPType, Method method, CpuType cpu>
83 class DAAL_EXPORT BatchContainer :
public PredictionContainerIface
91 BatchContainer(daal::services::Environment::env *daalEnv);
97 services::Status compute() DAAL_C11_OVERRIDE;
98 services::Status setupCompute() DAAL_C11_OVERRIDE;
99 services::Status resetCompute() DAAL_C11_OVERRIDE;
117 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
118 class Batch :
public daal::algorithms::Prediction
132 Batch(
const Batch<algorithmFPType, method> &other) : parameter(other.parameter), input(other.input)
143 ResultPtr getResult()
154 services::Status setResult(
const ResultPtr& res)
156 DAAL_CHECK(res, services::ErrorNullResult)
158 _res = _result.get();
159 return services::Status();
167 services::SharedPtr<Batch<algorithmFPType, method> > clone()
const
169 return services::SharedPtr<Batch<algorithmFPType, method> >(cloneImpl());
176 virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int) method; }
184 Prediction::_ac =
new __DAAL_ALGORITHM_CONTAINER(batch, BatchContainer, algorithmFPType, method)(&_env);
187 _result.reset(
new Result());
190 virtual Batch<algorithmFPType, method> *cloneImpl() const DAAL_C11_OVERRIDE
192 return new Batch<algorithmFPType, method>(*this);
195 virtual services::Status allocateResult() DAAL_C11_OVERRIDE
197 services::Status s = _result->allocate<algorithmFPType>(&input, ¶meter, (int) method);
198 _res = _result.get();
208 using interface1::Batch;
209 using interface1::BatchContainer;
daal::algorithms::neural_networks::prediction::interface1::Batch::Batch
Batch(const Batch< algorithmFPType, method > &other)
Definition: neural_networks_prediction.h:132
daal
Definition: algorithm_base_common.h:57
daal::algorithms::Prediction
Provides prediction methods depending on the model such as linear_regression::Model. The methods of the class support different computation modes: batch, distributed, and online(see ComputeMode). Classes that implement specific algorithms of the model based data prediction are derived classes of the Prediction class. The class additionally provides virtual methods for validation of input and output parameters of the algorithms.
Definition: prediction.h:76
daal::algorithms::neural_networks::prediction::interface1::BatchContainer
Class containing methods to train neural network model using algorithmFPType precision arithmetic...
Definition: neural_networks_prediction.h:83
daal::algorithms::neural_networks::prediction::interface1::Batch::clone
services::SharedPtr< Batch< algorithmFPType, method > > clone() const
Definition: neural_networks_prediction.h:167
daal::algorithms::neural_networks::prediction::interface1::Parameter
Class representing the parameters of neural network prediction.
Definition: neural_networks_prediction_model.h:88
daal::algorithms::PredictionContainerIface
Abstract interface class that provides virtual methods to access and run implementations of the algor...
Definition: prediction.h:66
daal::algorithms::neural_networks::prediction::interface1::Batch::getResult
ResultPtr getResult()
Definition: neural_networks_prediction.h:143
daal::algorithms::neural_networks::prediction::interface1::Batch::parameter
Parameter parameter
Definition: neural_networks_prediction.h:179
daal::algorithms::neural_networks::prediction::interface1::Result
Provides methods to access result obtained with the compute() method of the neural networks predictio...
Definition: neural_networks_prediction_result.h:102
daal::batch
Definition: daal_defines.h:131
daal::algorithms::neural_networks::prediction::interface1::Batch::Batch
Batch()
Definition: neural_networks_prediction.h:122
daal::algorithms::neural_networks::prediction::interface1::Batch::getMethod
virtual int getMethod() const DAAL_C11_OVERRIDE
Definition: neural_networks_prediction.h:176
daal::algorithms::neural_networks::prediction::interface1::Batch
Provides methods for neural network model-based prediction in the batch processing mode...
Definition: neural_networks_prediction.h:118
daal::algorithms::classifier::prediction::prediction
Definition: classifier_predict_types.h:102
daal::algorithms::neural_networks::prediction::interface1::Batch::setResult
services::Status setResult(const ResultPtr &res)
Definition: neural_networks_prediction.h:154
daal::services::ErrorNullResult
Definition: error_indexes.h:122
daal::algorithms::neural_networks::prediction::interface1::Batch::input
Input input
Definition: neural_networks_prediction.h:178