• 大小: 811KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-14
  • 语言: 其他
  • 标签: SVM工具  

资源简介

这个是faruto写的一个基于libSVM的加强版工具箱,要是使用他写的一个GUI-SVM工具包,必须先安装这个

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 

#include “mex.h“

#if MX_API_VER < 0x07030000
typedef int mwIndex;
#endif 
#define max(xy) (((x)>(y))?(x):(y))
#define min(xy) (((x)<(y))?(x):(y))

void exit_with_help()
{
mexPrintf(
“Usage: [label_vector instance_matrix] = libsvmread(‘filename‘);\n“
);
}

static void fake_answer(mxArray *plhs[])
{
plhs[0] = mxCreateDoubleMatrix(0 0 mxREAL);
plhs[1] = mxCreateDoubleMatrix(0 0 mxREAL);
}

static char *line;
static int max_line_len;

static char* readline(FILE *input)
{
int len;

if(fgets(linemax_line_leninput) == NULL)
return NULL;

while(strrchr(line‘\n‘) == NULL)
{
max_line_len *= 2;
line = (char *) realloc(line max_line_len);
len = (int) strlen(line);
if(fgets(line+lenmax_line_len-leninput) == NULL)
break;
}
return line;
}

// read in a problem (in libsvm format)
void read_problem(const char *filename mxArray *plhs[])
{
int max_index min_index inst_max_index i;
long elements k;
FILE *fp = fopen(filename“r“);
int l = 0;
char *endptr;
mwIndex *ir *jc;
double *labels *samples;

if(fp == NULL)
{
mexPrintf(“can‘t open input file %s\n“filename);
fake_answer(plhs);
return;
}

max_line_len = 1024;
line = (char *) malloc(max_line_len*sizeof(char));

max_index = 0;
min_index = 1; // our index starts from 1
elements = 0;
while(readline(fp) != NULL)
{
char *idx *val;
// features
int index = 0;

inst_max_index = -1; // strtol gives 0 if wrong format and precomputed kernel has  start from 0
strtok(line“ \t“); // label
while (1)
{
idx = strtok(NULL“:“); // index:value
val = strtok(NULL“ \t“);
if(val == NULL)
break;

errno = 0;
index = (int) strtol(idx&endptr10);
if(endptr == idx || errno != 0 || *endptr != ‘\0‘ || index <= inst_max_index)
{
mexPrintf(“Wrong input format at line %d\n“l+1);
fake_answer(plhs);
return;
}
else
inst_max_index = index;

min_index = min(min_index index);
elements++;
}
max_index = max(max_index inst_max_index);
l++;
}
rewind(fp);

// y
plhs[0] = mxCreateDoubleMatrix(l 1 mxREAL);
// x^T
if (min_index <= 0)
plhs[1] = mxCreateSparse(max_index-min_index+1 l elements mxREAL);
else
plhs[1] = mxCreateSparse(max_index l elements mxREAL);

labels = mxGetPr(plhs[0]);
samples = mxGetPr(plhs[1]);
ir = mxGetIr(plhs[1]);
jc = mxGetJc(plhs[1]);

k=0;
for(i=0;i {
char *idx *val *label;
jc[i] = k;

readline(fp);

label = strtok(line“ \t“);
labels[i] = strtod(label&endptr);
if(endptr == label)
{
mexPrintf(“Wrong input format at line %d\n“i+1);
fake_answer(plhs);
return;
}

// features
while(1)
{
idx = strtok(NULL“:“);
val = strtok(NULL“ \t“);
if(val == NULL)
break;

ir[k] = (mwIndex) (strtol(idx&endptr10) - min_index); // precomputed kernel has  start from 0

errno = 0;
samples[k] = strtod(val&end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     222041  2010-01-17 16:23  TutorialForFarutoUltimate3.0.pdf

     文件       3823  2009-04-15 13:04  libsvmread.c

     文件       2123  2009-05-01 13:34  libsvmwrite.c

     文件       7684  2009-04-15 14:36  svm_model_matlab.c

     文件       9050  2009-04-15 14:36  svmpredict.c

     文件      11377  2009-09-06 18:47  svmtrain.c

     文件       2968  2009-04-07 23:28  svm.h

     文件        201  2007-11-23 21:06  svm_model_matlab.h

     文件      62422  2009-04-06 13:39  svm.cpp

     文件        229  2009-04-15 10:37  make.m

     文件      28904  2005-03-22 20:37  heart_scale.mat

     文件      20480  2010-01-16 01:16  libsvmread.mexw32

     文件      20480  2010-01-16 01:16  libsvmwrite.mexw32

     文件      24576  2010-01-16 01:16  svmpredict.mexw32

     文件      45056  2010-01-16 01:16  svmtrain.mexw32

     文件      65048  2010-01-16 01:15  svm.obj

     文件       6294  2010-01-16 01:16  svm_model_matlab.obj

     文件       2600  2009-08-18 22:27  libsvm 参数说明.txt

     文件       1602  2009-11-21 00:11  readme[by faruto].txt

     文件       1497  2009-02-17 18:07  COPYRIGHT

     文件       1462  2009-04-15 14:36  Makefile

     文件       9181  2009-04-24 22:35  README

     文件       2835  2010-01-24 15:14  implement[by faruto]\a_template_flow_usingSVM_class.m

     文件       2159  2010-01-17 09:36  implement[by faruto]\a_template_flow_usingSVM_regress.m

     文件        871  2010-01-17 14:51  implement[by faruto]\fasticaForSVM.m

     文件       3778  2010-01-21 21:40  implement[by faruto]\gaSVMcgForClass.m

     文件       3510  2010-01-21 21:42  implement[by faruto]\gaSVMcgForRegress.m

     文件       3788  2010-01-17 10:20  implement[by faruto]\gaSVMcgpForRegress.m

     文件       3217  1998-04-22 10:44  implement[by faruto]\myprivate\gatbx[Sheffield]\bs2rv.m

     文件       1835  1998-04-22 10:44  implement[by faruto]\myprivate\gatbx[Sheffield]\contents.m

............此处省略58个文件信息

评论

共有 条评论