24 using namespace KKMLL;
42 if (_param.svmParameters)
43 svmParameters =
new SVMparam (*_param.svmParameters
);
93 <<
"ModelParamOldSVM::C_Param ***ERROR*** 'binaryParmsList' is not defined." << endl
101 svm_parameter binaryParam =
this->Param ();
107 binaryParms
->C (cParam
);
121 <<
"ModelParamOldSVM::C_Param ***ERROR*** 'binaryParmsList' is not defined." << endl
130 <<
"ModelParamOldSVM::C_Param ***ERROR*** No entry for Class[" << class1->Name () <<
", " << class2->Name () <<
"]" << endl
136 return binaryParms
->C ();
226 return svmParameters;
304 while (!field
.Empty () && _validFormat)
308 _log.Level (-1) <<
"ModelParam::ParseCmdLine *** Invalid Parameter[" 311 _validFormat =
false;
318 if (_cmdLineStr
.Len () > 0)
320 if (_cmdLineStr
[0
] !=
'-')
329 bool parameterUsed =
false;
331 ParseCmdLineParameter (field, value, parameterUsed, _log);
334 _log.Level (-1) <<
"ModelParam::ParseCmdLine - Invalid Parameter[" 335 << field <<
"] Value[" << value <<
"]." 337 _validFormat =
false;
361 switch (_encodingMethod)
379 bool validFormat =
true;
383 log.Level (-1) << endl << endl
384 <<
"ModelParamOldSVM::ParseCmdLineParameter ***ERROR*** Invalid Parameters" << endl
385 <<
" Parameter[" << parameter <<
"] Value[" << value <<
"]." << endl
484 const svm_parameter& _param,
502 const svm_parameter& _param,
543 KKStr svmParametersStr;
554 log.Level (-1) << endl
555 <<
"ModelParamOldSVM::ReadXML ***ERROR*** Encountered unexpected content: " << endl
565 log.Level (-1) << endl
566 <<
"ModelParamOldSVM::ReadXML ***ERROR*** Encountered unexpected Element: " << e->NameTagStr () << endl
580 bool validFormat =
false;
581 delete svmParameters;
582 svmParameters =
new SVMparam (svmParametersStr
, selFeatures
, validFormat
, log
);
KKStr(kkint32 size)
Creates a KKStr object that pre-allocates space for 'size' characters.
XmlTag(const KKStr &_name, TagTypes _tagType)
const BinaryClassParmsListPtr BinaryParmsList() const
virtual const svm_parameter & Param() const
BinaryClassParmsPtr GetBinaryClassParms(MLClassPtr class1, MLClassPtr class2) const
bool EqualIgnoreCase(const char *s2) const
void ParseCmdLineParameter(const KKStr ¶meter, const KKStr &value, bool ¶meterUsed, bool &_validFormat, RunLog &log)
void WriteXMLFields(std::ostream &o) const
const BinaryClassParmsListPtr BinaryParmsList() const
FeatureNumListConstPtr SelectedFeatures() const
virtual void Cost(double _cost)
void SetBinaryClassFields(MLClassPtr _class1, MLClassPtr _class2, const svm_parameter &_param, FeatureNumListConstPtr _features, float _weight)
virtual void KernalType(SVM_KernalType _kernalType)
virtual KKStr ToKKStr() const
virtual void Gamma_Param(double _gamma)
Keeps track of selected features.
kkint32 NumOfFeaturesAfterEncoding(FileDescPtr fileDesc, RunLog &log) const
BinaryClassParmsPtr LookUp(MLClassPtr _class1, MLClassPtr _class2) const
KKStr ExtractToken(const char *delStr="\n\t\r ")
void SelectedFeatures(FeatureNumListConst &_selectedFeatures)
SVMparam(const SVMparam &_svmParam)
KKStr ToCmdLineStr() const
void AddBinaryClassParms(BinaryClassParmsPtr binaryClassParms)
virtual void Gamma(double _gamma)
virtual void ReadXML(XmlStream &s, XmlTagConstPtr tag, VolConstBool &cancelFlag, RunLog &log)
KKStr & operator=(const char *src)
BinaryClassParmsPtr GetParamtersToUseFor2ClassCombo(MLClassPtr class1, MLClassPtr class2)
SVM_KernalType KernalType() const
virtual void EncodingMethod(EncodingMethodType _encodingMethod)
void SetFeatureNums(MLClassPtr _class1, MLClassPtr _class2, FeatureNumListConstPtr _features, float _weight=-1)
Sets the selected Features and Weight for the binary class SVM specified by _class1 and _class2...
float SamplingRate() const
virtual void EncodingMethod(SVM_EncodingMethod _encodingMethod)
virtual void C_Param(double _CC)
KKStr SvmParamToString(const svm_parameter &_param) const
Convert a svm_parameter struct to a cmdline str.
SVM_MachineType MachineType() const
virtual bool UseProbabilityToBreakTies() const
virtual SVM_MachineType MachineType() const
virtual void C_Param(MLClassPtr class1, MLClassPtr class2, double cParam)
float AvgMumOfFeatures(FileDescPtr fileDesc) const
void Gamma(double _gamma)
virtual void A_Param(float _A)
void MachineType(SVM_MachineType _machineType)
SVM_EncodingMethod EncodingMethod() const
void SelectionMethod(SVM_SelectionMethod _selectionMethod)
void SetBinaryClassFields(MLClassPtr class1, MLClassPtr class2, const svm_parameter &_param, FeatureNumListConstPtr _features, float _weight)
virtual SVM_KernalType KernalType() const
virtual void ValidParam(bool _validParam)
SVMparam(KKStr &_cmdLineStr, FeatureNumListConstPtr _selectedFeatures, bool &_validFormat, RunLog &_log)
void KernalType(SVM_KernalType _kernalType)
virtual kkint32 NumOfFeaturesAfterEncoding(FileDescPtr fileDesc, RunLog &log) const
KKStr & operator=(KKStr &&src)
void EncodingMethod(SVM_EncodingMethod _encodingMethod)
kkuint32 Len() const
Returns the number of characters in the string.
KKStr ToString() const
Convert all parameters to a command line string.
FeatureNumListConstPtr GetFeatureNums(FileDescPtr fileDesc, MLClassPtr class1, MLClassPtr class2) const
void SamplingRate(float _samplingRate)
virtual void Gamma(double _gamma)
KKStr(const KKStr &str)
Copy Constructor.
XmlElement * XmlElementPtr
void AddAtribute(const KKStr &attributeName, const KKStr &attributeValue)
void AddBinaryClassParms(MLClassPtr class1, MLClassPtr class2, const svm_parameter &_param, FeatureNumListConstPtr _selectedFeatures, float _weight)
Add a Binary parameters using svm_parametr cmd line str. Typically used by TrainingConfiguration.
void SetFeatureNums(MLClassPtr class1, MLClassPtr class2, FeatureNumListConstPtr _features, float _weight=-1)
void TrimLeft(const char *whiteSpaceChars="\n\r\t ")
XmlTokenPtr ReadXMLModelParamToken(XmlTokenPtr t)
Will process any tokens that belong to 'ModelParam' and return NULL ones that are not will be passed ...
virtual SVM_SelectionMethod SelectionMethod() const
virtual FeatureNumListConstPtr SelectedFeatures() const
XmlTag const * XmlTagConstPtr
Manages the reading and writing of objects in a simple XML format. For a class to be supported by Xml...
ModelParamOldSVM(const ModelParamOldSVM &_param)
BinaryClassParmsPtr GetBinaryClassParms(MLClassPtr class1, MLClassPtr class2)
static KKStr Concat(const std::vector< std::string > &values)
Concatenates the list of 'std::string' strings.
void Upper()
Converts all characters in string to their Upper case equivalents via 'toupper'.
This class encapsulates are the information necessary to build a SVMModel class.
virtual void SamplingRate(float _samplingRate)
virtual void SelectedFeatures(FeatureNumListConst &_selectedFeatures)
KKStr ToCmdLineStr() const
Convert all parameters to a command line string.
virtual void SelectionMethod(SVM_SelectionMethod _selectionMethod)
void WriteXML(const KKStr &varName, std::ostream &o) const
virtual ModelParamOldSVMPtr Duplicate() const
virtual double Gamma() const
SVM_SelectionMethod SelectionMethod() const
virtual void MachineType(SVM_MachineType _machineType)
virtual void EncodingMethod(EncodingMethodType _encodingMethod)
virtual void SelectedFeatures(const FeatureNumList &_selectedFeatures)
bool UseProbabilityToBreakTies() const
ModelParam(const ModelParam &_param)
void AddBinaryClassParms(MLClassPtr _class1, MLClassPtr _class2, const svm_parameter &_param, FeatureNumListConstPtr _selectedFeatures, float _weight)
Adding parameters that are specific to a class pair; this is used when using the BFS version of SVM...
char operator[](kkint32 i) const
void WriteXML(std::ostream &o)
FeatureNumListConst * FeatureNumListConstPtr
virtual float A_Param() const
Used for logging messages.
void EncodeProblem(const struct svm_paramater ¶m, struct svm_problem &prob_in, struct svm_problem &prob_out)
virtual void WriteXML(const KKStr &varName, std::ostream &o) const
virtual double C_Param(MLClassPtr class1, MLClassPtr class2) const
EncodingMethodType SVM_EncodingMethodToModelParamEncodingMethodType(SVM_EncodingMethod _encodingMethod)
converts Encoding variables from "SVM_EncodingMethod" to "ModelParam::EncodingMethodType" ...
virtual XmlTokenPtr GetNextToken(VolConstBool &cancelFlag, RunLog &log)
void ParseCmdLine(KKStr _cmdLineStr, bool &_validFormat, RunLog &_log)
virtual void A_Param(float _prob)
FeatureNumListConstPtr GetFeatureNums(FileDescPtr fileDesc, MLClassPtr class1, MLClassPtr class2) const
virtual float SamplingRate() const
virtual void C_Param(double _cost)
const svm_parameter & Param() const
virtual FeatureNumListConstPtr SelectedFeatures() const
Abstract Base class for Machine Learning parameters.
virtual const KKStr & VarName() const
#define XmlFactoryMacro(NameOfClass)
virtual double C_Param() const
virtual ~ModelParamOldSVM()
void AddBinaryClassParms(BinaryClassParmsPtr binaryClassParms)
virtual SVMparamPtr SvmParameters() const
BinaryClassParmsPtr GetParamtersToUseFor2ClassCombo(MLClassPtr class1, MLClassPtr class2)
volatile const bool VolConstBool
virtual float AvgMumOfFeatures(FileDescPtr fileDesc)