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

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

?? pr_loqo.c

?? 利用PSO優(yōu)化SVM
?? 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 * 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));

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩另类一区| 97久久久精品综合88久久| 91精品一区二区三区在线观看| 亚洲三级小视频| 9人人澡人人爽人人精品| 久久精品欧美一区二区三区不卡| 中文字幕五月欧美| 91麻豆国产自产在线观看| 一区二区三区中文字幕精品精品| 日本欧美大码aⅴ在线播放| 欧美日韩国产乱码电影| 久久国产精品99久久久久久老狼 | 日韩三级免费观看| 日韩国产欧美在线观看| 欧美精品一区二区久久久| av一区二区三区| 亚洲国产精品一区二区www在线| 国产一区二区三区在线看麻豆| 一本在线高清不卡dvd| 偷拍自拍另类欧美| 国产欧美视频在线观看| 欧美午夜理伦三级在线观看| 青青草成人在线观看| 中文字幕精品三区| 欧美日韩中文字幕精品| 韩国精品一区二区| 亚洲欧美另类久久久精品2019| 国产精品一区二区视频| 亚洲综合视频在线观看| 欧美大肚乱孕交hd孕妇| 99在线精品一区二区三区| 亚洲成a人v欧美综合天堂| 欧美精品一区二区蜜臀亚洲| 在线精品视频免费观看| 国产精品白丝av| 蜜桃视频免费观看一区| 自拍偷拍亚洲激情| 亚洲精品在线观看网站| 欧洲一区二区av| 成人免费视频免费观看| 日本一不卡视频| 亚洲自拍偷拍网站| 中文字幕免费观看一区| 日韩免费观看高清完整版在线观看| 日日夜夜免费精品| 国产精品萝li| 日韩三级视频在线看| 在线观看欧美黄色| 91在线高清观看| 国产精品996| 国产美女娇喘av呻吟久久| 日本不卡在线视频| 亚洲18女电影在线观看| 亚洲视频 欧洲视频| 久久亚洲综合色| 欧美电视剧免费全集观看| 欧美三级三级三级爽爽爽| 99国产精品国产精品久久| 国产精品亚洲视频| 黄网站免费久久| 免费成人美女在线观看.| 一区二区在线观看免费视频播放| 欧美亚洲愉拍一区二区| 岛国精品一区二区| 国产在线国偷精品免费看| 日本午夜精品视频在线观看| 亚洲福利视频一区二区| 亚洲国产精品自拍| 亚洲国产精品久久人人爱蜜臀| 欧美一级在线免费| 欧美裸体一区二区三区| 欧美日韩国产一级| 在线免费不卡视频| 欧美体内she精高潮| 91国产成人在线| 在线一区二区三区四区| 欧美在线不卡一区| 欧美日韩一区小说| 欧美日产在线观看| 在线不卡一区二区| 日韩欧美色电影| 久久午夜国产精品| 国产日产精品1区| 中文字幕中文字幕一区二区| 成人欧美一区二区三区黑人麻豆| 91精品视频网| 欧美一区二区国产| 精品国产青草久久久久福利| 久久久噜噜噜久久人人看 | 一区二区三区欧美激情| 一区二区三区四区不卡在线| 亚洲永久免费av| 美脚の诱脚舐め脚责91| 国产一区二区美女诱惑| 波多野结衣中文字幕一区二区三区| 五月综合激情网| 日韩激情av在线| 国产黄人亚洲片| 色哟哟国产精品免费观看| 欧美日韩另类一区| 精品福利av导航| 亚洲免费在线视频一区 二区| 久久久久9999亚洲精品| 国产精品免费看片| 亚洲成人精品一区二区| 黑人精品欧美一区二区蜜桃 | 免费精品99久久国产综合精品| 综合久久久久综合| 不卡的av网站| 51精品秘密在线观看| 久久久久久日产精品| 精品国产3级a| 久久久久久久网| 亚洲福利视频一区二区| 国产一区二区三区四区五区美女| 五月婷婷色综合| 国产高清精品网站| 欧美影视一区二区三区| 日本一区二区视频在线观看| 亚洲伦理在线精品| 国产精品久久福利| 国产一区二区三区av电影| 欧美大尺度电影在线| 日本sm残虐另类| 日韩一区二区免费在线观看| 日韩中文字幕亚洲一区二区va在线 | 国产福利精品一区| 久久午夜色播影院免费高清 | 国产综合色精品一区二区三区| 成人国产在线观看| 欧美国产成人精品| 国产自产v一区二区三区c| 精品对白一区国产伦| 精品在线你懂的| 久久久不卡影院| 国产成人精品免费一区二区| 国产女主播一区| 99久久精品国产一区二区三区| 91超碰这里只有精品国产| 午夜激情一区二区| 91精品国产色综合久久| 青椒成人免费视频| 日韩一卡二卡三卡国产欧美| 美女视频黄 久久| 欧美草草影院在线视频| 国产精品18久久久| 中文久久乱码一区二区| 色综合一区二区三区| 亚洲老妇xxxxxx| 欧美日韩在线不卡| 麻豆成人在线观看| 久久婷婷成人综合色| 成人爽a毛片一区二区免费| 最近日韩中文字幕| 欧美日韩国产天堂| 久久91精品久久久久久秒播| 国产亚洲精品超碰| 91麻豆产精品久久久久久| 亚洲综合在线五月| 欧美一区二区三区在线观看| 国产在线麻豆精品观看| 成人免费小视频| 欧美日韩不卡一区二区| 精品在线你懂的| 亚洲三级在线播放| 91精品国产综合久久精品| 国产乱码精品一区二区三区忘忧草| 欧美色综合影院| 国产精品白丝jk黑袜喷水| 国产精品久久久久婷婷二区次| 狠狠色丁香婷婷综合久久片| 国产精品久久午夜| 欧美高清你懂得| 国产成人午夜高潮毛片| 亚洲日本在线天堂| 精品国产乱码久久久久久夜甘婷婷 | 亚洲欧美视频在线观看| 91精品国产综合久久精品麻豆| 亚洲乱码中文字幕综合| 欧美高清性hdvideosex| 国产精品一区久久久久| 亚洲曰韩产成在线| 国产欧美精品一区二区色综合| 国产乱人伦精品一区二区在线观看| 91精品国产综合久久福利| 处破女av一区二区| 天堂蜜桃91精品| 亚洲色欲色欲www| 欧美成人午夜电影| 色噜噜狠狠成人中文综合| 青娱乐精品视频| 亚洲天堂中文字幕| 2021国产精品久久精品| 欧美日韩久久久一区| 粉嫩在线一区二区三区视频| 奇米综合一区二区三区精品视频| 日韩一级黄色片| 一道本成人在线| 成人av片在线观看| 国产资源在线一区|