23 #ifndef __MSE_BATCH_H__
24 #define __MSE_BATCH_H__
26 #include "algorithms/algorithm.h"
27 #include "data_management/data/numeric_table.h"
28 #include "data_management/data/homogen_numeric_table.h"
29 #include "services/daal_defines.h"
30 #include "sum_of_functions_batch.h"
31 #include "mse_types.h"
37 namespace optimization_solver
58 template<
typename algorithmFPType, Method method, CpuType cpu>
59 class DAAL_EXPORT BatchContainer :
public daal::algorithms::AnalysisContainerIface<batch>
67 BatchContainer(daal::services::Environment::env *daalEnv);
69 virtual ~BatchContainer();
75 virtual services::Status compute() DAAL_C11_OVERRIDE;
94 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
95 class DAAL_EXPORT Batch :
public sum_of_functions::Batch
98 typedef sum_of_functions::Batch super;
100 typedef algorithms::optimization_solver::mse::Input InputType;
101 typedef algorithms::optimization_solver::mse::Parameter ParameterType;
102 typedef typename super::ResultType ResultType;
107 Batch(
size_t numberOfTerms) : parameter(numberOfTerms), sum_of_functions::Batch(numberOfTerms, &input, ¶meter)
120 Batch(
const Batch<algorithmFPType, method> &other) :
121 parameter(other.parameter), sum_of_functions::Batch(other.parameter.numberOfTerms, &input, ¶meter), input(other.input)
130 virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int)method; }
137 services::SharedPtr<Batch<algorithmFPType, method> > clone()
const
139 return services::SharedPtr<Batch<algorithmFPType, method> >(cloneImpl());
147 services::Status allocate()
149 return allocateResult();
153 virtual Batch<algorithmFPType, method> *cloneImpl() const DAAL_C11_OVERRIDE
155 return new Batch<algorithmFPType, method>(*this);
158 virtual services::Status allocateResult() DAAL_C11_OVERRIDE
160 services::Status s = _result->allocate<algorithmFPType>(&input, ¶meter, (int) method);
161 _res = _result.get();
167 Analysis<batch>::_ac =
new __DAAL_ALGORITHM_CONTAINER(batch, BatchContainer, algorithmFPType, method)(&_env);
174 ParameterType parameter;
179 using interface1::BatchContainer;
180 using interface1::Batch;
daal::algorithms::optimization_solver::mse::interface1::Batch::parameter
ParameterType parameter
Definition: mse_batch.h:174
daal
Definition: algorithm_base_common.h:31
daal::algorithms::optimization_solver::mse::interface1::Batch
Computes the Mean squared error objective function in the batch processing mode.
Definition: mse_batch.h:95
daal::algorithms::AnalysisContainerIface
Abstract interface class that provides virtual methods to access and run implementations of the analy...
Definition: analysis.h:53
daal::algorithms::optimization_solver::mse::interface1::Batch::allocate
services::Status allocate()
Definition: mse_batch.h:147
daal::algorithms::optimization_solver::mse::interface1::Batch::getMethod
virtual int getMethod() const DAAL_C11_OVERRIDE
Definition: mse_batch.h:130
daal::algorithms::optimization_solver::mse::interface1::Batch::clone
services::SharedPtr< Batch< algorithmFPType, method > > clone() const
Definition: mse_batch.h:137
daal::algorithms::optimization_solver::mse::interface1::Batch::Batch
Batch(const Batch< algorithmFPType, method > &other)
Definition: mse_batch.h:120
daal::batch
Definition: daal_defines.h:110
daal::algorithms::optimization_solver::mse::interface1::Batch::input
InputType input
Definition: mse_batch.h:173
daal::algorithms::Analysis
Provides methods for execution of operations over data, such as computation of Summary Statistics est...
Definition: analysis.h:68
daal::algorithms::optimization_solver::mse::interface1::BatchContainer
Provides methods to run implementations of the mean squared error objective function. This class is associated with the Batch class and supports the method of computing the Mean squared error objective function in the batch processing mode.
Definition: mse_batch.h:59
daal::algorithms::optimization_solver::mse::interface1::Batch::Batch
Batch(size_t numberOfTerms)
Definition: mse_batch.h:107