亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bsvm2_mex.c~

?? 一個工具包
?? C~
?? 第 1 頁 / 共 2 頁
字號:
/*---------------------------------------------------------------------------
 bsvm2_mex.c: MEX-file for multi-class B-SVM with L2-soft margin.

 Compile: 
  mex new_bsvm2_mex.c qpcsolver.c kernel_fun.c

 Synopsis:
  [Alpha,bias,exitflag,kercnt,access,trnerr,t,NA,UB,LB,History] = 
     new_bsvm2_mex(data,labels,ker,arg,C,solver,tmax,tolabs,tolrel,cache,verb)

 Input:
  data [dim x num_data] Training vectors.
  labels [1 x num_data] Labels.
  ker [string] Kernel identifier.
  arg [1 x nargs] Kernel argument.
  C [1x1] Regularization constant.
  solver [string] Solver; options are 'mdm','imdm','iimdm'
     'keerthi','kowalczyk'.
  tmax [1x1] Maximal number of iterations.
  tolabs [1x1] Absolute tolerance stopping condition.
  tolrel [1x1] Relaitve tolerance stopping condition.
  cache [1x1] Number of columns of kernel matrix to be cached.
    It takes cache*num_data*size(double) bytes of memory.
  verb [1x1] If 1 then some info about the training is printed.

 Output:
  Alpha [nclass x num_data] Weights.
  bias [1x1] Bias.
  exitflag [1x1] Indicates which stopping condition was used:
    UB-LB <= tolabs           ->  exit_flag = 1   Abs. tolerance.
    (UB-LB)/(LB+1) <= tolrel  ->  exit_flag = 2   Relative tolerance.
    t >= tmax                 ->  exit_flag = 0   Number of iterations.
  kercnt [1x1] Number of kernel evaluations.
  access [1x1] Access to the virtual kernel matrix.
  trnerr [1x1] Training error.
  t [1x1] Number of iterations.
  NA [1x1] Number of non-zero alphas returned by the QP solver.
  UB [1x1] Upper bound on the optimal solution.
  LB [1x1] Lower bound on the optimal solution.
  History [2x(t+1)] UB and LB with respect to number of iterations.

  About: Statistical Pattern Recognition Toolbox
  (C) 1999-2004, Written by Vojtech Franc and Vaclav Hlavac
  <a href="http://www.cvut.cz">Czech Technical University Prague</a>
  <a href="http://www.feld.cvut.cz">Faculty of Electrical Engineering</a>
  <a href="http://cmp.felk.cvut.cz">Center for Machine Perception</a>

 Modifications:
 28-nov-2004, VF
 26-nov-2004, VF
 24-nov-2004, VF
 20-nov-2004, VF
 31-may-2004, VF
 25-jan-2003, VF
 24-jan-2003, VF
 23-jan-2003, VF
-------------------------------------------------------------------- */

#include "mex.h"
#include "matrix.h"
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>

#include "kernel_fun.h"

#define INDEX(ROW,COL,DIM) ((COL*DIM)+ROW)

#define MINUS_INF INT_MIN
#define PLUS_INF  INT_MAX

#define KDELTA(A,B) (A==B)
#define KDELTA4(A1,A2,A3,A4) ((A1==A2)||(A1==A3)||(A1==A4)||(A2==A3)||(A2==A4)||(A3==A4))


/* Declaration of global variables */

unsigned long access_cnt;
long num_classes;      
long num_virt_data;  /* number of virtual "single-class" examples */
long num_data;       /* number of input training examples */
double kernel_diag;  /* regularization constant */
double *labels;      /* Pointer to labels */

long Cache_Size;     /* number of cached columns (min 1) */

/* cache (FIFO) for columns of the kernel matrix */
long *cache_index;                  /* indices cached of kernel columns */
long first_kernel_inx;              /* index of first inserted column */
double **kernel_columns;            /* pointers at cached columns */

/* cache for three columns of the virtual kernel matrix */
int first_virt_inx;                 /* index of first used column */
double *virt_columns[3];            /* cache for three columns*/

/* ------------------------------------------------------------
  Returns pointer at a-th column of the kernel matrix.
  This function maintains FIFO cache of kernel columns.
------------------------------------------------------------ */
void *get_kernel_col( long a ) 
{
  double *col_ptr;
  long i;
  long inx;

  inx = -1;
  for( i=0; i < Cache_Size; i++ ) {
    if( cache_index[i] == a ) { inx = i; break; }
  }
    
  if( inx != -1 ) {
    col_ptr = kernel_columns[inx];
    return( col_ptr );
  }
   
  col_ptr = kernel_columns[first_kernel_inx];
  cache_index[first_kernel_inx] = a;

  first_kernel_inx++;
  if( first_kernel_inx >= Cache_Size ) first_kernel_inx = 0;

  for( i=0; i < num_data; i++ ) {
    col_ptr[i] = kernel(i,a);
  }

  return( col_ptr );
}

/* ------------------------------------------------------------
  Computes index of input example and its class label from 
  index of virtual "single-class" example.
------------------------------------------------------------ */
void get_indices2( long *index, long *class, long i )
{
   *index = i / (num_classes-1);
 
   *class = (i % (num_classes-1))+1;
   if( *class >= labels[ *index ]) (*class)++;

   return;
}

/* ------------------------------------------------------------
  Retures (a,b)-th element of the virtual kernel matrix 
  of size [num_virt_data x num_virt_data]. 
------------------------------------------------------------ */
double kernel_fce( long a, long b )
{
  double value;
  long i1,c1,i2,c2;

  get_indices2( &i1, &c1, a );
  get_indices2( &i2, &c2, b );

  if( KDELTA4(labels[i1],labels[i2],c1,c2) ) {
    value = (+KDELTA(labels[i1],labels[i2]) 
             -KDELTA(labels[i1],c2)
             -KDELTA(labels[i2],c1)
             +KDELTA(c1,c2)
            )*(kernel( i1, i2 )+1);
  }
  else
  {
    value = 0;
  }

  if(a==b) value += kernel_diag; 

  return( value );
}

/* ------------------------------------------------------------
  Returns pointer at the a-th column of the virtual K matrix.

  (note: the b-th column must be preserved in the cache during 
   updating but b is from (a(t-2), a(t-1)) where a=a(t) and
   thus FIFO with three columns does not have to take care od b.)
------------------------------------------------------------ */
void *get_col( long a, long b )
{
  long i;
  long inx;
  long min_usage; 
  double *col_ptr;
  double *ker_ptr;
  double value;
  long i1,c1,i2,c2;

  access_cnt = access_cnt + num_virt_data;

  col_ptr = virt_columns[first_virt_inx++];
  if( first_virt_inx >= 3 ) first_virt_inx = 0;

  get_indices2( &i1, &c1, a );
  ker_ptr = (double*) get_kernel_col( i1 );

  for( i=0; i < num_virt_data; i++ ) {
    get_indices2( &i2, &c2, i );

    if( KDELTA4(labels[i1],labels[i2],c1,c2) ) {
      value = (+KDELTA(labels[i1],labels[i2]) 
               -KDELTA(labels[i1],c2)
               -KDELTA(labels[i2],c1)
               +KDELTA(c1,c2)
              )*(ker_ptr[i2]+1);
    }
    else
    {
      value = 0;
    }

    if(a==i) value += kernel_diag; 

    col_ptr[i] = value;
  }
  
  return( col_ptr );
}


/* -------------------------------------------------------------------
 Main MEX function - interface to Matlab.
-------------------------------------------------------------------- */
void mexFunction( int nlhs, mxArray *plhs[],int nrhs, const mxArray*prhs[] )
{
  char solver[20];   /* solver identifier */
  int exitflag;      /* output arg */
  int *err_bit;      /* axiliary cache for computation of trn errors*/
  int buf_len;       /* real length of the solver identifier */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
男人的天堂亚洲一区| 欧美日韩国产另类一区| 日韩精品色哟哟| 亚洲国产精品久久艾草纯爱| 中文字幕色av一区二区三区| 中文字幕欧美日韩一区| 欧美国产国产综合| 亚洲色欲色欲www| 亚洲自拍欧美精品| 午夜伊人狠狠久久| 麻豆91精品视频| 国产精品一二三四五| 丁香天五香天堂综合| 色婷婷精品久久二区二区蜜臀av | 老司机精品视频在线| 日韩精品久久理论片| 捆绑调教美女网站视频一区| 黄页视频在线91| 99久久久国产精品免费蜜臀| 欧美色偷偷大香| 日韩免费观看高清完整版在线观看| 欧美一区二视频| 欧美韩国日本不卡| 亚洲国产精品欧美一二99| 日本不卡的三区四区五区| 国内精品国产三级国产a久久| 成人av在线资源网站| 欧美日韩国产在线播放网站| 精品人伦一区二区色婷婷| 国产精品卡一卡二| 亚洲一区二区三区中文字幕 | 2023国产一二三区日本精品2022| 欧美国产精品一区二区| 亚洲蜜桃精久久久久久久| 午夜视频一区二区| 国产福利一区二区三区视频 | 国产一区二区主播在线| 91浏览器入口在线观看| 91精品国产综合久久福利软件| 精品理论电影在线| 亚洲精品乱码久久久久久黑人| 免费成人av资源网| 色综合久久综合中文综合网| 日韩精品一区二区三区蜜臀| 一区二区三区四区激情| 国产精品白丝jk黑袜喷水| 欧美二区三区91| 国产精品夫妻自拍| 精品在线免费视频| 欧美日韩日日骚| 日韩美女啊v在线免费观看| 激情久久五月天| 欧美日韩免费视频| 亚洲欧美另类在线| 国产成人免费高清| 精品人在线二区三区| 奇米四色…亚洲| 在线亚洲免费视频| 中文字幕一区二区三区四区| 国产精品一区在线| 欧美xxxx在线观看| 青青草原综合久久大伊人精品 | 国产69精品久久久久毛片| 9191成人精品久久| 亚洲高清久久久| 欧美性极品少妇| 一二三四区精品视频| 色94色欧美sute亚洲线路一久 | 国产女人18毛片水真多成人如厕 | 欧美成人乱码一区二区三区| 午夜欧美2019年伦理| 色婷婷久久久亚洲一区二区三区| 亚洲天堂免费看| 91蝌蚪国产九色| 中文字幕欧美一区| 黄色日韩网站视频| 精品国产乱码久久久久久蜜臀| 婷婷开心久久网| 717成人午夜免费福利电影| 无吗不卡中文字幕| 3751色影院一区二区三区| 亚洲超碰精品一区二区| 678五月天丁香亚洲综合网| 日本中文在线一区| 欧美一区二区成人6969| 黄一区二区三区| 欧美激情在线看| 99久久综合狠狠综合久久| 亚洲免费视频成人| 欧美精品丝袜久久久中文字幕| 日韩激情一区二区| 欧美大胆人体bbbb| 国产成人免费9x9x人网站视频| 综合分类小说区另类春色亚洲小说欧美| 99re66热这里只有精品3直播| 亚洲日本成人在线观看| 欧美在线观看视频在线| 日韩和的一区二区| 欧美va在线播放| www.66久久| 亚洲va韩国va欧美va精品| 精品日韩欧美在线| 国产福利一区二区三区视频| 亚洲精品亚洲人成人网在线播放| 欧美日韩亚洲综合一区| 国产成人精品一区二区三区四区 | 色婷婷激情久久| 日本欧美在线观看| 国产精品不卡在线观看| 欧美精品第一页| 国产成人自拍网| 亚洲综合小说图片| 一个色在线综合| 久久综合视频网| 欧美日韩国产大片| 99久久精品国产毛片| 麻豆国产精品官网| 一区二区三区四区在线播放| ww亚洲ww在线观看国产| 在线观看视频一区二区| 国产精品自拍毛片| 日韩专区一卡二卡| 中文字幕一区二区三区在线不卡| 欧美一区二区三区视频在线 | 蜜桃精品视频在线| 中文字幕中文字幕在线一区| 欧美mv日韩mv| 欧美日韩视频不卡| av不卡在线观看| 精品亚洲免费视频| 亚洲国产视频网站| 亚洲视频一区二区在线观看| 26uuu亚洲综合色欧美| 在线视频一区二区三| 不卡一二三区首页| 国产一区二区视频在线播放| 午夜一区二区三区在线观看| 一区二区久久久久久| 成人免费一区二区三区视频 | 亚洲日穴在线视频| 久久久久久夜精品精品免费| 91精品福利在线一区二区三区 | 亚洲黄色小视频| 亚洲国产成人在线| 国产日韩一级二级三级| 亚洲精品在线观看网站| 欧美sm极限捆绑bd| 日韩一区和二区| 欧美一级日韩不卡播放免费| 欧美日韩在线播放三区四区| 欧美性猛片aaaaaaa做受| 欧美伊人久久久久久久久影院 | 国产精品网站在线播放| 久久人人97超碰com| 久久久精品一品道一区| 精品国产91九色蝌蚪| 精品国产乱码久久久久久牛牛| 日韩一级片网站| 精品国产一区二区三区四区四| 日韩三级视频在线看| 欧美大片顶级少妇| 久久久久九九视频| 国产精品二区一区二区aⅴ污介绍| 中文字幕视频一区二区三区久| 亚洲欧洲三级电影| 亚洲女同一区二区| 亚洲成人av一区二区三区| 美女尤物国产一区| 激情综合网av| 不卡的电影网站| 在线视频一区二区免费| 日韩午夜在线播放| 久久精品视频网| 亚洲欧美二区三区| 日韩高清在线观看| 国产高清久久久| 91精品福利在线| 欧美成人免费网站| 日韩理论片在线| 日日夜夜免费精品| 国产iv一区二区三区| 欧美影院精品一区| 久久精品一级爱片| 亚洲欧美日韩一区二区| 日韩高清在线观看| 风间由美性色一区二区三区| 欧美三级一区二区| 国产日韩欧美综合在线| 伊人一区二区三区| 国产自产v一区二区三区c| 91色在线porny| 欧美va亚洲va| 亚洲综合在线电影| 国产精品一区二区果冻传媒| 欧美午夜精品久久久久久孕妇| 久久蜜桃av一区二区天堂| 亚洲成人一区在线| 高清不卡一区二区在线| 欧美绝品在线观看成人午夜影视| 国产精品丝袜久久久久久app|