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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pr_loqo.c

?? 這是關(guān)于支持向量機(jī)SVM的例子,實(shí)用多多,大家可以看一下
?? C
?? 第 1 頁 / 共 2 頁
字號(hào):
/* * File:        pr_loqo.c * Purpose:     solves quadratic programming problem for pattern recognition *              for support vectors * * Author:      Alex J. Smola * Created:     10/14/97 * Updated:     11/08/97 * *  * Copyright (c) 1997  GMD Berlin - All rights reserved * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE of GMD Berlin * The copyright notice above does not evidence any * actual or intended publication of this work. * * Unauthorized commercial use of this software is not allowed */#include <math.h>#include <time.h>#include <stdlib.h>#include <stdio.h>#include "pr_loqo.h"#define	max(A, B)	((A) > (B) ? (A) : (B))#define	min(A, B)	((A) < (B) ? (A) : (B))#define sqr(A)          ((A) * (A))#define	ABS(A)  	((A) > 0 ? (A) : (-(A)))#define PREDICTOR 1#define CORRECTOR 2/*****************************************************************  replace this by any other function that will exit gracefully  in a larger system  ***************************************************************/void nrerror(char error_text[]){  printf("ERROR: terminating program - %s\n", error_text);  exit(1);}/*****************************************************************   taken from numerical recipes and modified to accept pointers   moreover numerical recipes code seems to be buggy (at least the   ones on the web)   cholesky solver and backsubstitution   leaves upper right triangle intact (rows first order)   ***************************************************************/void choldc(double a[], int n, double p[]){  void nrerror(char error_text[]);  int i, j, k;  double sum;  for (i = 0; i < n; i++){    for (j = i; j < n; j++) {      sum=a[n*i + j];      for (k=i-1; k>=0; k--) sum -= a[n*i + k]*a[n*j + k];      if (i == j) {	if (sum <= 0.0)	  nrerror("choldc failed, matrix not positive definite");	p[i]=sqrt(sum);      } else a[n*j + i] = sum/p[i];    }  }}void cholsb(double a[], int n, double p[], double b[], double x[]){  int i, k;  double sum;  for (i=0; i<n; i++) {    sum=b[i];    for (k=i-1; k>=0; k--) sum -= a[n*i + k]*x[k];    x[i]=sum/p[i];  }  for (i=n-1; i>=0; i--) {    sum=x[i];    for (k=i+1; k<n; k++) sum -= a[n*k + i]*x[k];    x[i]=sum/p[i];  }}/*****************************************************************  sometimes we only need the forward or backward pass of the  backsubstitution, hence we provide these two routines separately   ***************************************************************/void chol_forward(double a[], int n, double p[], double b[], double x[]){  int i, k;  double sum;  for (i=0; i<n; i++) {    sum=b[i];    for (k=i-1; k>=0; k--) sum -= a[n*i + k]*x[k];    x[i]=sum/p[i];  }}void chol_backward(double a[], int n, double p[], double b[], double x[]){  int i, k;  double sum;  for (i=n-1; i>=0; i--) {    sum=b[i];    for (k=i+1; k<n; k++) sum -= a[n*k + i]*x[k];    x[i]=sum/p[i];  }}/*****************************************************************  solves the system | -H_x A' | |x_x| = |c_x|                    |  A   H_y| |x_y|   |c_y|  with H_x (and H_y) positive (semidefinite) matrices  and n, m the respective sizes of H_x and H_y  for variables see pg. 48 of notebook or do the calculations on a  sheet of paper again  predictor solves the whole thing, corrector assues that H_x didn't  change and relies on the results of the predictor. therefore do  _not_ modify workspace  if you want to speed tune anything in the code here's the right  place to do so: about 95% of the time is being spent in  here. something like an iterative refinement would be nice,  especially when switching from double to single precision. if you  have a fast parallel cholesky use it instead of the numrec  implementations.  side effects: changes H_y (but this is just the unit matrix or zero anyway  in our case)  ***************************************************************/void solve_reduced(int n, int m, double h_x[], double h_y[], 		   double a[], double x_x[], double x_y[],		   double c_x[], double c_y[],		   double workspace[], int step){  int i,j,k;  double *p_x;  double *p_y;  double *t_a;  double *t_c;  double *t_y;  p_x = workspace;		/* together n + m + n*m + n + m = n*(m+2)+2*m */  p_y = p_x + n;  t_a = p_y + m;  t_c = t_a + n*m;  t_y = t_c + n;  if (step == PREDICTOR) {    choldc(h_x, n, p_x);	/* do cholesky decomposition */    for (i=0; i<m; i++)         /* forward pass for A' */      chol_forward(h_x, n, p_x, a+i*n, t_a+i*n);				    for (i=0; i<m; i++)         /* compute (h_y + a h_x^-1A') */      for (j=i; j<m; j++)	for (k=0; k<n; k++) 	  h_y[m*i + j] += t_a[n*j + k] * t_a[n*i + k];				    choldc(h_y, m, p_y);	/* and cholesky decomposition */  }    chol_forward(h_x, n, p_x, c_x, t_c);				/* forward pass for c */  for (i=0; i<m; i++) {		/* and solve for x_y */    t_y[i] = c_y[i];    for (j=0; j<n; j++)      t_y[i] += t_a[i*n + j] * t_c[j];  }  cholsb(h_y, m, p_y, t_y, x_y);  for (i=0; i<n; i++) {		/* finally solve for x_x */    t_c[i] = -t_c[i];    for (j=0; j<m; j++)      t_c[i] += t_a[j*n + i] * x_y[j];  }  chol_backward(h_x, n, p_x, t_c, x_x);}/*****************************************************************  matrix vector multiplication (symmetric matrix but only one triangle  given). computes m*x = y  no need to tune it as it's only of O(n^2) but cholesky is of  O(n^3). so don't waste your time _here_ although it isn't very  elegant.   ***************************************************************/void matrix_vector(int n, double m[], double x[], double y[]){  int i, j;  for (i=0; i<n; i++) {    y[i] = m[(n+1) * i] * x[i];    for (j=0; j<i; j++)      y[i] += m[i + n*j] * x[j];    for (j=i+1; j<n; j++)       y[i] += m[n*i + j] * x[j];   }}/*****************************************************************  call only this routine; this is the only one you're interested in  for doing quadratical optimization  the restart feature exists but it may not be of much use due to the  fact that an initial setting, although close but not very close the  the actual solution will result in very good starting diagnostics  (primal and dual feasibility and small infeasibility gap) but incur  later stalling of the optimizer afterwards as we have to enforce  positivity of the slacks.  ***************************************************************/int pr_loqo(int n, int m, double c[], double h_x[], double a[], double b[],	    double l[], double u[], double primal[], double dual[], 	    int verb, double sigfig_max, int counter_max, 	    double margin, double bound, int restart) {  /* the knobs to be tuned ... */  /* double margin = -0.95;	   we will go up to 95% of the				   distance between old variables and zero */  /* double bound = 10;		   preset value for the start. small				   values give good initial				   feasibility but may result in slow				   convergence afterwards: we're too				   close to zero */  /* to be allocated */  double *workspace;  double *diag_h_x;  double *h_y;  double *c_x;  double *c_y;  double *h_dot_x;  double *rho;  double *nu;  double *tau;  double *sigma;  double *gamma_z;  double *gamma_s;    double *hat_nu;  double *hat_tau;  double *delta_x;  double *delta_y;  double *delta_s;  double *delta_z;  double *delta_g;  double *delta_t;  double *d;  /* from the header - pointers into primal and dual */  double *x;  double *y;  double *g;  double *z;  double *s;  double *t;    /* auxiliary variables */  double b_plus_1;  double c_plus_1;  double x_h_x;  double primal_inf;  double dual_inf;  double sigfig;  double primal_obj, dual_obj;  double mu;  double alfa, step;  int counter = 0;  int status = STILL_RUNNING;  int i,j,k;  /* memory allocation */  workspace = malloc((n*(m+2)+2*m)*sizeof(double));  diag_h_x  = malloc(n*sizeof(double));  h_y       = malloc(m*m*sizeof(double));  c_x       = malloc(n*sizeof(double));  c_y       = malloc(m*sizeof(double));  h_dot_x   = malloc(n*sizeof(double));  rho       = malloc(m*sizeof(double));  nu        = malloc(n*sizeof(double));  tau       = malloc(n*sizeof(double));  sigma     = malloc(n*sizeof(double));

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91免费版pro下载短视频| 在线观看亚洲成人| 亚洲免费在线看| 欧美tk—视频vk| 日本高清成人免费播放| 紧缚奴在线一区二区三区| 亚洲欧美日韩综合aⅴ视频| 日韩精品一区二区三区蜜臀| 91猫先生在线| 国产91清纯白嫩初高中在线观看| 亚洲一区在线看| 国产精品色一区二区三区| 91精品国产综合久久久久久| 色综合久久综合网97色综合| 成人性生交大合| 狠狠久久亚洲欧美| 免费观看在线综合| 五月婷婷综合网| 亚洲精品中文字幕在线观看| 国产精品你懂的在线欣赏| 欧美不卡一二三| 欧美男女性生活在线直播观看| 91蜜桃在线观看| 成人av高清在线| 国产高清无密码一区二区三区| 麻豆91在线播放免费| 天天影视色香欲综合网老头| 亚洲精选视频在线| 亚洲人成网站色在线观看| 国产精品无码永久免费888| 欧美精品一区二区三区一线天视频 | 久久精品理论片| 亚洲成av人片观看| 亚洲高清在线精品| 亚洲va国产天堂va久久en| 亚洲午夜三级在线| 亚洲成人免费看| 日韩激情一区二区| 日本不卡一区二区| 喷水一区二区三区| av在线不卡电影| 国产成人精品三级麻豆| 国产黄色成人av| 成人午夜av电影| av中文一区二区三区| 色诱亚洲精品久久久久久| 一本大道久久精品懂色aⅴ| 91黄色激情网站| 欧美日韩第一区日日骚| 欧美一区二区黄色| 精品国产一区a| 久久精品一区四区| 国产精品久久久久久久裸模| 亚洲欧洲成人自拍| 一区二区三区不卡视频在线观看| 一区二区三区在线免费视频| 天堂一区二区在线免费观看| 免费在线欧美视频| 国产毛片一区二区| 成人福利视频在线看| 色综合久久综合中文综合网| 欧美日韩综合一区| 777色狠狠一区二区三区| 精品国产乱码久久久久久1区2区| 亚洲国产激情av| 亚洲精品免费在线播放| 日韩av网站在线观看| 国产久卡久卡久卡久卡视频精品| 成人激情免费电影网址| 欧美性感一区二区三区| 精品国产乱码久久久久久久久| 中文字幕一区不卡| 日韩精品一区第一页| 国产激情视频一区二区三区欧美| 91美女在线观看| 精品美女在线播放| 国产精品国产三级国产aⅴ入口 | 国产精品综合久久| 在线看国产一区| 欧美不卡一区二区三区| 亚洲欧美另类小说视频| 麻豆国产精品777777在线| 成人av网站在线观看| 91精品国产黑色紧身裤美女| 国产精品美女www爽爽爽| 亚洲va天堂va国产va久| 丁香天五香天堂综合| 欧美亚洲高清一区| 久久久国产综合精品女国产盗摄| 亚洲午夜免费视频| 成人性视频免费网站| 欧美一二三区在线观看| 亚洲婷婷国产精品电影人久久| 久久99热这里只有精品| 色婷婷综合久久久久中文| 久久亚洲影视婷婷| 亚洲第一av色| 99精品欧美一区二区三区小说 | jlzzjlzz亚洲日本少妇| 91精品国产欧美一区二区成人| ...xxx性欧美| 久久国产精品99精品国产 | 91精品国产综合久久精品| 日韩毛片高清在线播放| 麻豆91免费观看| 在线日韩一区二区| 欧美国产乱子伦| 日韩和欧美的一区| 在线观看亚洲精品视频| 中文字幕亚洲区| 国产91在线|亚洲| 欧美tickling网站挠脚心| 亚洲不卡在线观看| 色综合天天做天天爱| 国产精品视频第一区| 国产精品亚洲成人| 日韩美女一区二区三区四区| 水野朝阳av一区二区三区| 日本黄色一区二区| 亚洲视频狠狠干| 欧美久久免费观看| 日韩美女视频一区二区| 粉嫩一区二区三区性色av| 26uuu亚洲| 激情深爱一区二区| 精品奇米国产一区二区三区| 天堂一区二区在线| 欧美日韩精品一区二区在线播放 | 狠狠色狠狠色综合系列| 日韩你懂的在线观看| 美女视频网站黄色亚洲| 777久久久精品| 青青国产91久久久久久| 日韩欧美二区三区| 麻豆成人av在线| 日韩欧美中文字幕公布| 日本在线不卡视频一二三区| 日韩一区二区三区视频在线 | 92精品国产成人观看免费| 国产精品色呦呦| 99久久精品久久久久久清纯| 国产精品成人一区二区艾草 | 欧美美女直播网站| 日本欧美在线观看| 精品久久人人做人人爽| 国产一区二区调教| 国产精品视频免费看| 色综合亚洲欧洲| 午夜精品一区二区三区免费视频| 欧美久久久久久久久| 欧美a级理论片| 久久精品夜色噜噜亚洲a∨| youjizz久久| 亚洲综合激情小说| 91精品国产一区二区三区| 久久国产日韩欧美精品| 国产日本欧洲亚洲| 91麻豆精品视频| 亚洲v日本v欧美v久久精品| 日韩欧美国产三级| 国产91对白在线观看九色| 亚洲男人都懂的| 337p亚洲精品色噜噜| 国产一区二区三区| 国产精品久久夜| 在线看国产一区二区| 日本最新不卡在线| 国产欧美日韩三区| 91传媒视频在线播放| 麻豆久久久久久| 国产精品欧美一区喷水| 欧美三级日韩三级国产三级| 久久精品国产精品亚洲红杏| 国产欧美一区二区精品性色超碰 | 亚洲成av人片| 久久青草国产手机看片福利盒子 | 天堂一区二区在线免费观看| 精品欧美久久久| 成人高清免费在线播放| 日韩高清一区二区| 欧美国产精品久久| 欧美视频在线一区| 国产成人精品免费| 婷婷激情综合网| 国产精品久久久久久久久图文区| 制服丝袜亚洲网站| 91视频在线观看免费| 精品一区二区三区蜜桃| 亚洲欧美日韩成人高清在线一区| 欧美一区二区三区喷汁尤物| 91小视频在线免费看| 久久国产精品免费| 一个色妞综合视频在线观看| 国产婷婷一区二区| 欧美精品日韩一本| 91久久精品一区二区三| 国产麻豆一精品一av一免费| 天天综合色天天综合| 亚洲激情欧美激情| 欧美国产乱子伦|