• 大小: 2.09MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-12
  • 语言: 其他
  • 标签: svm  

资源简介

svm源码,可用于多分类,svm源码,可用于多分类,svm源码,可用于多分类svm源码,可用于多分类

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include “svm.h“
int libsvm_version = LIBSVM_VERSION;
typedef float Qfloat;
typedef signed char schar;
#ifndef min
template  static inline T min(T xT y) { return (x#endif
#ifndef max
template  static inline T max(T xT y) { return (x>y)?x:y; }
#endif
template  static inline void swap(T& x T& y) { T t=x; x=y; y=t; }
template  static inline void clone(T*& dst S* src int n)
{
dst = new T[n];
memcpy((void *)dst(void *)srcsizeof(T)*n);
}
static inline double powi(double base int times)
{
double tmp = base ret = 1.0;

for(int t=times; t>0; t/=2)
{
if(t%2==1) ret*=tmp;
tmp = tmp * tmp;
}
return ret;
}
#define INF HUGE_VAL
#define TAU 1e-12
#define Malloc(typen) (type *)malloc((n)*sizeof(type))

static void print_string_stdout(const char *s)
{
fputs(sstdout);
fflush(stdout);
}
static void (*svm_print_string) (const char *) = &print_string_stdout;
#if 1
static void info(const char *fmt...)
{
char buf[BUFSIZ];
va_list ap;
va_start(apfmt);
vsprintf(buffmtap);
va_end(ap);
(*svm_print_string)(buf);
}
#else
static void info(const char *fmt...) {}
#endif

//
// Kernel Cache
//
// l is the number of total data items
// size is the cache size limit in bytes
//
class Cache
{
public:
Cache(int llong int size);
~Cache();

// request data [0len)
// return some position p where [plen) need to be filled
// (p >= len if nothing needs to be filled)
int get_data(const int index Qfloat **data int len);
void swap_index(int i int j);
private:
int l;
long int size;
struct head_t
{
head_t *prev *next; // a circular list
Qfloat *data;
int len; // data[0len) is cached in this entry
};

head_t *head;
head_t lru_head;
void lru_delete(head_t *h);
void lru_insert(head_t *h);
};

Cache::Cache(int l_long int size_):l(l_)size(size_)
{
head = (head_t *)calloc(lsizeof(head_t)); // initialized to 0
size /= sizeof(Qfloat);
size -= l * sizeof(head_t) / sizeof(Qfloat);
size = max(size 2 * (long int) l); // cache must be large enough for two columns
lru_head.next = lru_head.prev = &lru_head;
}

Cache::~Cache()
{
for(head_t *h = lru_head.next; h != &lru_head; h=h->next)
free(h->data);
free(head);
}

void Cache::lru_delete(head_t *h)
{
// delete from current location
h->prev->next = h->next;
h->next->prev = h->prev;
}

void Cache::lru_insert(head_t *h)
{
// insert to last position
h->next = &lru_head;
h->prev = lru_head.prev;
h->prev->next = h;
h->next->prev = h;
}

int Cache::get_data(const int index Qfloat **data int len)
{
head_t *h = &head[index];
if(h->len) lru_delete(h);
int more = len - h->len;

if(more > 0)
{
// free old space
while(size < more)
{
head_t *old = lru_head.next;
lru_delete(old);
free(old->data);
size += old->len;
old->data = 0;
old->len = 0;
}

/

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

     文件          0  2018-01-02 20:37  SVM\Debug\filePath

     文件     161433  2011-12-07 11:19  SVM\Debug\svm.obj

     文件          0  2011-12-07 11:19  SVM\Debug\svm.sbr

     文件     250811  2011-12-07 19:50  SVM\Debug\Test.obj

     文件          0  2011-12-07 19:50  SVM\Debug\Test.sbr

     文件     205824  2011-12-07 19:50  SVM\Debug\vc60.idb

     文件     176128  2011-12-07 19:50  SVM\Debug\vc60.pdb

     文件    3736576  2011-12-07 19:50  SVM\Debug\wenben.bsc

     文件     692275  2011-12-07 19:50  SVM\Debug\wenben.exe

     文件     892752  2011-12-07 19:50  SVM\Debug\wenben.ilk

     文件    2805060  2011-12-07 11:21  SVM\Debug\wenben.pch

     文件    1270784  2011-12-07 19:50  SVM\Debug\wenben.pdb

     文件       8006  2011-12-07 19:50  SVM\filePath

     文件     682934  2011-12-07 19:50  SVM\model.txt

     文件       4811  2011-12-06 19:19  SVM\preditdata.txt

     文件      12009  2011-12-07 11:18  SVM\result.txt

     文件      62947  2011-05-27 11:32  SVM\svm.cpp

     文件       3160  2011-11-25 21:14  SVM\svm.h

     文件       4105  2011-12-07 19:50  SVM\Test.cpp

     文件    1011971  2011-12-05 11:11  SVM\ticdata2000.txt

     文件     687817  2011-12-06 22:35  SVM\ticeval2000.txt

     文件      12007  2011-12-06 22:35  SVM\tictgts2000.txt

     文件      29899  2011-12-06 19:00  SVM\traindata.txt

     文件       4398  2011-12-07 12:01  SVM\wenben.dsp

     文件        537  2011-12-06 16:18  SVM\wenben.dsw

     文件      74752  2011-12-07 20:21  SVM\wenben.ncb

     文件      48640  2011-12-07 20:21  SVM\wenben.opt

     文件       1447  2011-12-07 19:50  SVM\wenben.plg

     目录          0  2014-05-11 14:49  SVM\Debug

     目录          0  2014-05-11 14:49  SVM

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

评论

共有 条评论