24 #ifndef __LOGISTIC_REGRESSION_TRAINING_BATCH_H__
25 #define __LOGISTIC_REGRESSION_TRAINING_BATCH_H__
27 #include "algorithms/classifier/classifier_training_batch.h"
28 #include "algorithms/logistic_regression/logistic_regression_training_types.h"
34 namespace logistic_regression
53 template<
typename algorithmFPType, Method method, CpuType cpu>
54 class BatchContainer :
public TrainingContainerIface<batch>
62 DAAL_DEPRECATED BatchContainer(daal::services::Environment::env *daalEnv);
64 DAAL_DEPRECATED ~BatchContainer();
69 DAAL_DEPRECATED services::Status compute() DAAL_C11_OVERRIDE;
70 DAAL_DEPRECATED services::Status setupCompute() DAAL_C11_OVERRIDE;
90 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
91 class DAAL_EXPORT Batch :
public classifier::training::interface1::Batch
94 typedef classifier::training::interface1::Batch super;
95 typedef optimization_solver::iterative_solver::interface1::BatchPtr SolverPtr;
97 typedef typename super::InputType InputType;
98 typedef algorithms::logistic_regression::training::interface1::Parameter ParameterType;
99 typedef algorithms::logistic_regression::training::interface1::Result ResultType;
108 DAAL_DEPRECATED Batch(
size_t nClasses,
const SolverPtr& solver = SolverPtr());
116 DAAL_DEPRECATED Batch(
const Batch<algorithmFPType, method> &other);
119 DAAL_DEPRECATED ~Batch()
128 DAAL_DEPRECATED ParameterType& parameter() {
return *
static_cast<ParameterType*
>(_par); }
134 DAAL_DEPRECATED
const ParameterType& parameter()
const {
return *
static_cast<const ParameterType*
>(_par); }
140 DAAL_DEPRECATED InputType * getInput() DAAL_C11_OVERRIDE {
return &input; }
146 DAAL_DEPRECATED_VIRTUAL
virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int)method; }
152 DAAL_DEPRECATED interface1::ResultPtr getResult()
154 return ResultType::cast(_result);
160 DAAL_DEPRECATED services::Status resetResult() DAAL_C11_OVERRIDE
162 _result.reset(
new ResultType());
163 DAAL_CHECK(_result, services::ErrorNullResult);
165 return services::Status();
173 DAAL_DEPRECATED services::SharedPtr<Batch<algorithmFPType, method> > clone()
const
175 return services::SharedPtr<Batch<algorithmFPType, method> >(cloneImpl());
179 virtual Batch<algorithmFPType, method> * cloneImpl() const DAAL_C11_OVERRIDE
181 return new Batch<algorithmFPType, method>(*this);
184 services::Status allocateResult() DAAL_C11_OVERRIDE
186 ResultPtr res = getResult();
187 DAAL_CHECK(res, services::ErrorNullResult);
188 services::Status s = res->template allocate<algorithmFPType>(&input, ¶meter(), method);
189 _res = _result.get();
195 _ac =
new __DAAL_ALGORITHM_CONTAINER(batch, BatchContainer, algorithmFPType, method)(&_env);
197 _result.reset(
new ResultType());
218 template<
typename algorithmFPType, Method method, CpuType cpu>
219 class BatchContainer :
public TrainingContainerIface<batch>
227 BatchContainer(daal::services::Environment::env *daalEnv);
234 services::Status compute() DAAL_C11_OVERRIDE;
235 services::Status setupCompute() DAAL_C11_OVERRIDE;
255 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
256 class DAAL_EXPORT Batch :
public classifier::training::interface1::Batch
259 typedef classifier::training::interface1::Batch super;
260 typedef optimization_solver::iterative_solver::BatchPtr SolverPtr;
262 typedef typename super::InputType InputType;
263 typedef algorithms::logistic_regression::training::interface2::Parameter ParameterType;
264 typedef algorithms::logistic_regression::training::Result ResultType;
273 Batch(
size_t nClasses,
const SolverPtr& solver = SolverPtr());
281 Batch(
const Batch<algorithmFPType, method> &other);
293 ParameterType& parameter() {
return *
static_cast<ParameterType*
>(_par); }
299 const ParameterType& parameter()
const {
return *
static_cast<const ParameterType*
>(_par); }
305 InputType * getInput() DAAL_C11_OVERRIDE {
return &input; }
311 virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int)method; }
317 ResultPtr getResult()
319 return ResultType::cast(_result);
325 services::Status resetResult() DAAL_C11_OVERRIDE
327 _result.reset(
new ResultType());
328 DAAL_CHECK(_result, services::ErrorNullResult);
330 return services::Status();
338 services::SharedPtr<Batch<algorithmFPType, method> > clone()
const
340 return services::SharedPtr<Batch<algorithmFPType, method> >(cloneImpl());
344 virtual Batch<algorithmFPType, method> * cloneImpl() const DAAL_C11_OVERRIDE
346 return new Batch<algorithmFPType, method>(*this);
349 services::Status allocateResult() DAAL_C11_OVERRIDE
351 ResultPtr res = getResult();
352 DAAL_CHECK(res, services::ErrorNullResult);
353 services::Status s = res->template allocate<algorithmFPType>(&input, ¶meter(), method);
354 _res = _result.get();
360 _ac =
new __DAAL_ALGORITHM_CONTAINER(batch, BatchContainer, algorithmFPType, method)(&_env);
362 _result.reset(
new ResultType());
383 template<
typename algorithmFPType, Method method, CpuType cpu>
384 class BatchContainer :
public TrainingContainerIface<batch>
392 BatchContainer(daal::services::Environment::env *daalEnv);
399 services::Status compute() DAAL_C11_OVERRIDE;
400 services::Status setupCompute() DAAL_C11_OVERRIDE;
420 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
421 class DAAL_EXPORT Batch :
public classifier::training::Batch
424 typedef classifier::training::Batch super;
425 typedef optimization_solver::iterative_solver::BatchPtr SolverPtr;
427 typedef typename super::InputType InputType;
428 typedef algorithms::logistic_regression::training::Parameter ParameterType;
429 typedef algorithms::logistic_regression::training::Result ResultType;
438 Batch(
size_t nClasses,
const SolverPtr& solver = SolverPtr());
446 Batch(
const Batch<algorithmFPType, method> &other);
458 ParameterType& parameter() {
return *
static_cast<ParameterType*
>(_par); }
464 const ParameterType& parameter()
const {
return *
static_cast<const ParameterType*
>(_par); }
470 InputType * getInput() DAAL_C11_OVERRIDE {
return &input; }
476 virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int)method; }
482 ResultPtr getResult()
484 return ResultType::cast(_result);
490 services::Status resetResult() DAAL_C11_OVERRIDE
492 _result.reset(
new ResultType());
493 DAAL_CHECK(_result, services::ErrorNullResult);
495 return services::Status();
503 services::SharedPtr<Batch<algorithmFPType, method> > clone()
const
505 return services::SharedPtr<Batch<algorithmFPType, method> >(cloneImpl());
509 virtual Batch<algorithmFPType, method> * cloneImpl() const DAAL_C11_OVERRIDE
511 return new Batch<algorithmFPType, method>(*this);
514 services::Status allocateResult() DAAL_C11_OVERRIDE
516 ResultPtr res = getResult();
517 DAAL_CHECK(res, services::ErrorNullResult);
518 services::Status s = res->template allocate<algorithmFPType>(&input, ¶meter(), method);
519 _res = _result.get();
525 _ac =
new __DAAL_ALGORITHM_CONTAINER(batch, BatchContainer, algorithmFPType, method)(&_env);
527 _result.reset(
new ResultType());
532 using interface3::BatchContainer;
533 using interface3::Batch;
539 #endif // __LOGISTIC_REGRESSION_TRAINING_BATCH_H__
daal::algorithms::logistic_regression::training::interface2::Batch::parameter
ParameterType & parameter()
Definition: logistic_regression_training_batch.h:293
daal::algorithms::logistic_regression::training::interface1::Batch::parameter
DAAL_DEPRECATED const ParameterType & parameter() const
Definition: logistic_regression_training_batch.h:134
daal::algorithms::classifier::training::interface1::Result
Provides methods to access final results obtained with the compute() method in the batch processing m...
Definition: classifier_training_types.h:198
daal::algorithms::logistic_regression::training::interface3::BatchContainer
Provides methods to run implementations of logistic regression model-based training. This class is associated with daal::algorithms::logistic_regression::training::Batch class.
Definition: logistic_regression_training_batch.h:384
daal::algorithms::logistic_regression::training::interface2::Batch::input
InputType input
Definition: logistic_regression_training_batch.h:266
daal::algorithms::logistic_regression::training::interface2::Batch
Trains model of the logistic regression algorithms in the batch processing mode.
Definition: logistic_regression_training_batch.h:256
daal::batch
Definition: daal_defines.h:112
daal::algorithms::logistic_regression::training::interface3::Batch::clone
services::SharedPtr< Batch< algorithmFPType, method > > clone() const
Definition: logistic_regression_training_batch.h:503
daal::algorithms::logistic_regression::training::interface1::Batch
Trains model of the logistic regression algorithms in the batch processing mode.
Definition: logistic_regression_training_batch.h:91
daal::algorithms::classifier::training::interface1::Batch
Algorithm class for training the classifier model.
Definition: classifier_training_batch.h:58
daal::algorithms::logistic_regression::training::interface3::Batch
Trains model of the logistic regression algorithms in the batch processing mode.
Definition: logistic_regression_training_batch.h:421
daal::algorithms::logistic_regression::training::interface3::Batch::getResult
ResultPtr getResult()
Definition: logistic_regression_training_batch.h:482
daal::algorithms::logistic_regression::training::interface2::Batch::clone
services::SharedPtr< Batch< algorithmFPType, method > > clone() const
Definition: logistic_regression_training_batch.h:338
daal::algorithms::logistic_regression::training::interface2::BatchContainer::compute
services::Status compute() DAAL_C11_OVERRIDE
daal::algorithms::logistic_regression::training::interface1::Batch::parameter
DAAL_DEPRECATED ParameterType & parameter()
Definition: logistic_regression_training_batch.h:128
daal::algorithms::logistic_regression::training::interface2::Parameter
logistic regression algorithm parameters
Definition: logistic_regression_training_types.h:157
daal::algorithms::logistic_regression::training::interface3::Batch::~Batch
~Batch()
Definition: logistic_regression_training_batch.h:449
daal::algorithms::logistic_regression::training::interface2::BatchContainer
Provides methods to run implementations of logistic regression model-based training. This class is associated with daal::algorithms::logistic_regression::training::Batch class.
Definition: logistic_regression_training_batch.h:219
daal::algorithms::logistic_regression::training::interface1::Batch::getMethod
virtual DAAL_DEPRECATED_VIRTUAL int getMethod() const DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:146
daal::services::ErrorNullResult
Definition: error_indexes.h:98
daal::algorithms::logistic_regression::training::interface3::Batch::parameter
const ParameterType & parameter() const
Definition: logistic_regression_training_batch.h:464
daal::algorithms::logistic_regression::training::interface1::BatchContainer
Provides methods to run implementations of logistic regression model-based training.
Definition: logistic_regression_training_batch.h:54
daal::algorithms::logistic_regression::training::interface1::BatchContainer::~BatchContainer
DAAL_DEPRECATED ~BatchContainer()
daal::algorithms::logistic_regression::training::interface1::Batch::resetResult
DAAL_DEPRECATED services::Status resetResult() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:160
daal::algorithms::logistic_regression::training::interface2::Batch::~Batch
~Batch()
Definition: logistic_regression_training_batch.h:284
daal::algorithms::logistic_regression::training::interface2::Batch::resetResult
services::Status resetResult() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:325
daal::algorithms::logistic_regression::training::interface1::Result
Provides methods to access the result obtained with the compute() method of model-based training...
Definition: logistic_regression_training_types.h:92
daal::algorithms::logistic_regression::training::interface2::Batch::getInput
InputType * getInput() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:305
daal::algorithms::logistic_regression::training::interface1::BatchContainer::compute
DAAL_DEPRECATED services::Status compute() DAAL_C11_OVERRIDE
daal::algorithms::logistic_regression::training::interface1::Batch::getResult
DAAL_DEPRECATED interface1::ResultPtr getResult()
Definition: logistic_regression_training_batch.h:152
daal::algorithms::classifier::interface1::Parameter
Base class for the parameters of the classification algorithm.
Definition: classifier_model.h:69
daal::algorithms::logistic_regression::training::interface3::BatchContainer::BatchContainer
BatchContainer(daal::services::Environment::env *daalEnv)
daal::algorithms::classifier::training::interface1::Input
Base class for the input objects in the training stage of the classification algorithms.
Definition: classifier_training_types.h:110
daal::algorithms::logistic_regression::training::interface3::Batch::getMethod
virtual int getMethod() const DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:476
daal::algorithms::logistic_regression::training::interface3::Batch::resetResult
services::Status resetResult() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:490
daal::algorithms::logistic_regression::training::interface2::Batch::parameter
const ParameterType & parameter() const
Definition: logistic_regression_training_batch.h:299
daal::algorithms::logistic_regression::training::interface3::Batch::input
InputType input
Definition: logistic_regression_training_batch.h:431
daal::algorithms::logistic_regression::training::interface3::Batch::getInput
InputType * getInput() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:470
daal::algorithms::logistic_regression::training::interface3::Batch::parameter
ParameterType & parameter()
Definition: logistic_regression_training_batch.h:458
daal::algorithms::logistic_regression::training::interface3::BatchContainer::compute
services::Status compute() DAAL_C11_OVERRIDE
daal::algorithms::logistic_regression::training::interface2::Batch::getMethod
virtual int getMethod() const DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:311
daal::algorithms::logistic_regression::training::interface1::Batch::~Batch
DAAL_DEPRECATED ~Batch()
Definition: logistic_regression_training_batch.h:119
daal::algorithms::logistic_regression::training::interface1::Batch::clone
DAAL_DEPRECATED services::SharedPtr< Batch< algorithmFPType, method > > clone() const
Definition: logistic_regression_training_batch.h:173
daal::algorithms::logistic_regression::training::interface2::Batch::getResult
ResultPtr getResult()
Definition: logistic_regression_training_batch.h:317
daal::algorithms::logistic_regression::training::interface3::BatchContainer::~BatchContainer
~BatchContainer()
daal::algorithms::logistic_regression::training::interface1::Batch::input
InputType input
Definition: logistic_regression_training_batch.h:101
daal::algorithms::TrainingContainerIface
Abstract interface class that provides virtual methods to access and run implementations of the model...
Definition: training.h:52
daal::algorithms::logistic_regression::training::interface1::BatchContainer::BatchContainer
DAAL_DEPRECATED BatchContainer(daal::services::Environment::env *daalEnv)
daal::algorithms::logistic_regression::training::interface1::Batch::getInput
DAAL_DEPRECATED InputType * getInput() DAAL_C11_OVERRIDE
Definition: logistic_regression_training_batch.h:140
daal::algorithms::logistic_regression::training::interface1::Parameter
logistic regression algorithm parameters
Definition: logistic_regression_training_types.h:70
daal::algorithms::logistic_regression::training::interface2::BatchContainer::BatchContainer
BatchContainer(daal::services::Environment::env *daalEnv)
daal::algorithms::logistic_regression::training::interface2::BatchContainer::~BatchContainer
~BatchContainer()