Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-06-02 08:48:23

0001 /*
0002  * TrainingAlgorithm.h
0003  *
0004  *  Created on: Apr 23, 2016
0005  *      Author: Pawel Sznajder
0006  */
0007 
0008 #ifndef TRAININGALGORITHM_H_
0009 #define TRAININGALGORITHM_H_
0010 
0011 #include <string>
0012 #include <vector>
0013 
0014 #include "../beans/Data.h"
0015 #include "../beans/TrainingFunctionType.h"
0016 
0017 namespace NumA {
0018 
0019 class NeuralNetwork;
0020 
0021 class TrainingAlgorithm {
0022 
0023 public:
0024 
0025     TrainingAlgorithm();
0026     TrainingAlgorithm(const std::string& name);
0027     virtual ~TrainingAlgorithm();
0028     virtual TrainingAlgorithm* clone() const;
0029 
0030     virtual void train(const NeuralNetwork& nn, const Data& input,
0031             const Data& output, TrainingFunctionType::Type trainingFunctionType,
0032             const std::vector<double>& parameters);
0033 
0034 protected:
0035 
0036     TrainingAlgorithm(const TrainingAlgorithm& other);
0037 };
0038 
0039 }
0040 
0041 #endif /* TRAININGALGORITHM_H_ */