31 #ifndef GRT_REGRESSIFIER_HEADER
32 #define GRT_REGRESSIFIER_HEADER
35 #include "../DataStructures/ClassificationData.h"
36 #include "../DataStructures/TimeSeriesClassificationData.h"
40 #define DEFAULT_NULL_LIKELIHOOD_VALUE 0
41 #define DEFAULT_NULL_DISTANCE_VALUE 0
177 string regressifierType;
178 VectorDouble regressionData;
179 vector< MinMax > inputVectorRanges;
180 vector< MinMax > targetVectorRanges;
182 static StringRegressifierMap *getMap() {
184 return stringRegressifierMap;
188 static StringRegressifierMap *stringRegressifierMap;
189 static UINT numRegressifierInstances;
194 template<
typename T > Regressifier *newRegressionModuleInstance() {
return new T; }
196 template<
typename T >
200 getMap()->insert( std::pair<
string,
Regressifier*(*)()>(newRegresionModuleName, &newRegressionModuleInstance< T > ) );
206 #endif //GRT_REGRESSIFIER_HEADER
static vector< string > getRegisteredRegressifiers()
static Regressifier * createInstanceFromString(string const ®ressifierType)
bool copyBaseVariables(const Regressifier *regressifier)
vector< MinMax > getOutputRanges() const
VectorDouble getRegressionData() const
vector< MinMax > getInputRanges() const
virtual ~Regressifier(void)
virtual bool train(ClassificationData trainingData)
bool loadBaseSettingsFromFile(fstream &file)
std::map< string, Regressifier *(*)() > StringRegressifierMap
bool saveBaseSettingsToFile(fstream &file) const
This is the main base class that all GRT machine learning algorithms should inherit from...
Regressifier * createNewInstance() const
Regressifier * deepCopy() const
string getRegressifierType() const
const Regressifier & getBaseRegressifier() const
virtual bool deepCopyFrom(const Regressifier *regressifier)