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

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

?? pr_loqo.c

?? 支持向量機(jī)的程序
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(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 * Updated:     13/08/98 (removed exit(1) as it crashes svm lite when the margin *                        in a not sufficiently conservative manner) * *  * 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 optimizer - %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");	  sum = 0.0;	}	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));

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区高清| 亚洲男人天堂av网| 亚洲成av人片www| 国产成人精品综合在线观看| 777久久久精品| 亚洲人成网站精品片在线观看| 麻豆91在线播放免费| 欧洲av一区二区嗯嗯嗯啊| 国产亚洲一区二区三区四区| 日本sm残虐另类| 欧美视频在线播放| 综合久久久久综合| 国内成人精品2018免费看| 欧美年轻男男videosbes| 亚洲另类色综合网站| 国产精品亚洲第一区在线暖暖韩国| 9191久久久久久久久久久| 亚洲精品成人在线| www.亚洲人| 国产精品毛片大码女人| 玖玖九九国产精品| 91精品国产综合久久久久久| 亚洲黄色免费电影| 色综合久久久久综合99| 国产精品网站在线观看| 丁香激情综合五月| 国产欧美综合在线观看第十页| 蓝色福利精品导航| 日韩一级免费一区| 日本欧洲一区二区| 欧美精品久久久久久久多人混战| 亚洲精品免费一二三区| 91视频精品在这里| 亚洲女同ⅹxx女同tv| 91看片淫黄大片一级在线观看| 中文字幕一区二区三区四区 | 亚洲国产一区二区三区青草影视| 99久久精品国产网站| 国产精品色哟哟| 成人av资源网站| 国产精品妹子av| 成人午夜大片免费观看| 国产精品伦一区| 99视频一区二区| 亚洲免费观看高清完整版在线观看熊| a4yy欧美一区二区三区| 亚洲免费观看高清完整版在线观看熊| 91在线码无精品| 亚洲一区二区偷拍精品| 欧美色视频在线观看| 婷婷亚洲久悠悠色悠在线播放| 欧美日韩国产经典色站一区二区三区 | 99亚偷拍自图区亚洲| 中文字幕一区二区日韩精品绯色| jlzzjlzz亚洲女人18| 亚洲精品v日韩精品| 欧美色爱综合网| 日本不卡高清视频| 久久夜色精品国产欧美乱极品| 国产美女精品在线| 中文字幕中文字幕中文字幕亚洲无线| 94-欧美-setu| 亚洲午夜免费电影| 日韩色在线观看| 国产美女久久久久| 中文字幕日本不卡| 在线亚洲人成电影网站色www| 天天爽夜夜爽夜夜爽精品视频| 日韩视频中午一区| 国产一区二区三区在线观看免费| 欧美国产日韩在线观看| 99久久精品免费| 婷婷中文字幕综合| 日韩一区二区三区高清免费看看| 久久精品免费看| 中文字幕二三区不卡| 在线视频综合导航| 免费观看在线色综合| 亚洲国产成人在线| 欧美日韩一本到| 国产在线播放一区| 亚洲猫色日本管| 欧美一区二区福利在线| 成人污污视频在线观看| 一区二区国产视频| 欧美本精品男人aⅴ天堂| 成人av网站大全| 日韩电影在线观看电影| 国产欧美一区二区精品忘忧草 | 国产suv一区二区三区88区| 麻豆一区二区在线| 日本一区二区三区视频视频| 91黄色免费版| 激情成人综合网| 一区二区三区四区亚洲| 精品久久久久久最新网址| 色综合久久六月婷婷中文字幕| 美女国产一区二区| 亚洲欧美一区二区三区国产精品| 欧美一区二区三区免费观看视频| 成人精品鲁一区一区二区| 丝瓜av网站精品一区二区| 国产精品国产精品国产专区不片| 欧美日韩亚洲综合一区二区三区 | 亚洲综合激情另类小说区| 精品久久久影院| 欧美视频日韩视频在线观看| 国产精品影视网| 日韩激情av在线| 亚洲女厕所小便bbb| 久久久www免费人成精品| 欧美日韩国产不卡| 91在线一区二区三区| 国产一区二区视频在线| 视频一区二区不卡| 亚洲色欲色欲www| 26uuu久久综合| 91精品国产综合久久蜜臀| 91久久一区二区| 成人免费视频视频| 久久国内精品视频| 亚洲成av人片| 亚洲精品免费一二三区| 国产精品欧美一区喷水| 日韩美女在线视频| 精品视频1区2区| 91浏览器打开| 成人免费精品视频| 国产一区二区福利| 日本aⅴ亚洲精品中文乱码| 亚洲福利一二三区| 一区二区三区欧美久久| 国产精品久久久久久久久久久免费看| 精品99999| 欧美一区二区三区在线电影| 精品视频在线免费观看| 91视频免费观看| 99久久精品一区| av在线播放不卡| 成人丝袜高跟foot| 国产成人精品影视| 国产福利电影一区二区三区| 精品一区二区三区视频在线观看 | 亚洲第一会所有码转帖| 亚洲精品菠萝久久久久久久| 自拍视频在线观看一区二区| 中文一区二区完整视频在线观看| 久久先锋影音av| www国产精品av| 久久女同性恋中文字幕| 精品国精品国产| 精品不卡在线视频| 久久久久亚洲蜜桃| 久久久久久久久久久久电影| 久久免费看少妇高潮| 精品电影一区二区| 久久久亚洲高清| 国产欧美精品在线观看| 久久精品一区二区| 日本一区二区免费在线 | 在线综合亚洲欧美在线视频| 欧美日本精品一区二区三区| 欧美三级三级三级| 欧美日韩高清一区| 日韩一区二区在线观看视频| 日韩欧美一二区| 久久久午夜精品| 国产精品伦一区| 亚洲精品久久久久久国产精华液| 一区二区高清视频在线观看| 亚洲伊人伊色伊影伊综合网| 天天亚洲美女在线视频| 免费成人你懂的| 国产精品一级在线| 国产成人8x视频一区二区| 成人黄色综合网站| 日本高清免费不卡视频| 欧美精品vⅰdeose4hd| 日韩一级片网址| 欧美激情综合在线| 亚洲女子a中天字幕| 午夜av一区二区| 激情综合亚洲精品| 懂色中文一区二区在线播放| 91在线观看高清| 欧美日韩精品一区二区三区四区 | 欧美男生操女生| 精品区一区二区| 中日韩av电影| 亚洲第一成人在线| 国产在线观看一区二区| 99免费精品视频| 8v天堂国产在线一区二区| 国产午夜精品美女毛片视频| 亚洲蜜臀av乱码久久精品| 男女男精品视频| 成人做爰69片免费看网站| 在线视频国产一区| 精品国产麻豆免费人成网站| 国产精品乱码一区二三区小蝌蚪|