You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
851 B
C

12 years ago
#pragma once
struct svm_problem;
struct svm_node;
struct svm_parameter;
struct svm_model;
class CParameterSearch;
#include <string>
#define Malloc(type,n) (type *)malloc((n)*sizeof(type))
class SVMUtil
{
public:
SVMUtil();
~SVMUtil();
svm_problem* ParseTrainingFile(std::string strFilename);
bool ParameterSearch( svm_parameter* pSvmParam, std::string strFilename);
bool ScaleNode(svm_node*);
bool CrossValidate(int nFolds, svm_parameter*);
bool Load(std::string);
bool Save(std::string);
svm_model* m_pModel;
private:
bool ScaleTrainingData();
bool DetermineScaleFactors();
bool SaveSearch(const CParameterSearch* p_Search);
void SaveScaleFactors(std::string);
bool LoadScaleFactors(std::string);
svm_problem* m_pProblem;
double* m_pScaleFactors;
int m_nParams;
};