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

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

?? svm_c.cpp

?? mySvm的最新源程序
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
  if(parameters->loo_estim){    r_delta = 0;    SVMFLOAT r_current;    for(SVMINT j=0;j<examples_total;j++){      norm_x = kernel->calculate_K(j,j);      for(i=0;i<examples_total;i++){	r_current = norm_x-kernel->calculate_K(i,j);	if(r_current > r_delta){	  r_delta = r_current;	};      };    };  };  for(i=0;i<examples_total;i++){    alpha=all_alphas[i];    if(alpha<min_alpha) min_alpha = alpha;    if(alpha>max_alpha) max_alpha = alpha;    prediction = predict(i);    y = examples->unscale_y(all_ys[i]);    actloss=loss(prediction,y);    theloss+=actloss;    MAE += abs(prediction-y);    MSE += (prediction-y)*(prediction-y);    if(y < prediction-parameters->epsilon_pos){      theloss_pos += actloss;      countpos++;    }    else if(y > prediction+parameters->epsilon_neg){      theloss_neg += actloss;      countneg++;    };    if(parameters->loo_estim){      if(abs(alpha)>is_zero){ 	if(is_alpha_neg(i)>=0){	  loo_loss_estim += loss(prediction-(abs(alpha)*(2*kernel->calculate_K(i,i)+r_delta)+2*epsilon_neg),y);	}	else{	  loo_loss_estim += loss(prediction+(abs(alpha)*(2*kernel->calculate_K(i,i)+r_delta)+2*epsilon_pos),y);	};      };    }    else{      // loss doesn't change if non-SV is omitted      loo_loss_estim += actloss;    };    if(abs(alpha)>is_zero){      // a support vector      svs++;       if((alpha-Cneg >= -is_zero) || (alpha+Cpos <= is_zero)){ 	bsv++;       };    };    if(is_pattern){      if(y>0){	if(prediction>0){	  correct_pos++;	};	if(prediction>1){	  xi=0;	}	else{	  xi=1-prediction;	};	if(2*alpha*r_delta+xi >= 1){	  estim_pos++;	};	total_pos++;      }      else{	if(prediction<=0){	  correct_neg++;	};	if(prediction<-1){	  xi=0;	}	else{	  xi=1+prediction;	};	if(2*(-alpha)*r_delta+xi >= 1){	  estim_neg++;	};	total_neg++;      };    };      };  if(countpos != 0){    theloss_pos /= (SVMFLOAT)countpos;  };  if(countneg != 0){    theloss_neg /= (SVMFLOAT)countneg;  };  the_result.MAE = MAE / (SVMFLOAT)examples_total;  the_result.MSE = MSE / (SVMFLOAT)examples_total;  the_result.VCdim = 1+norm_w*max_norm_x;  the_result.loss = theloss/((SVMFLOAT)examples_total);  if(parameters->loo_estim){    the_result.pred_loss = loo_loss_estim/((SVMFLOAT)examples_total);  }  else{    the_result.pred_loss = the_result.loss;  };  the_result.loss_pos = theloss_pos;  the_result.loss_neg = theloss_neg;  the_result.number_svs = svs;  the_result.number_bsv = bsv;  if(is_pattern){    the_result.accuracy = ((SVMFLOAT)(correct_pos+correct_neg))/((SVMFLOAT)(total_pos+total_neg));    the_result.precision = ((SVMFLOAT)correct_pos/((SVMFLOAT)(correct_pos+total_neg-correct_neg)));    the_result.recall = ((SVMFLOAT)correct_pos/(SVMFLOAT)total_pos);    if(parameters->loo_estim){      the_result.pred_accuracy = (1-((SVMFLOAT)(estim_pos+estim_neg))/((SVMFLOAT)(total_pos+total_neg)));      the_result.pred_precision = ((SVMFLOAT)(total_pos-estim_pos))/((SVMFLOAT)(total_pos-estim_pos+estim_neg));      the_result.pred_recall = (1-(SVMFLOAT)estim_pos/((SVMFLOAT)total_pos));    }    else{      the_result.pred_accuracy = the_result.accuracy;      the_result.pred_precision = the_result.precision;      the_result.pred_recall = the_result.recall;    };  }  else{    the_result.accuracy = -1;    the_result.precision = -1;    the_result.recall = -1;    the_result.pred_accuracy = -1;    the_result.pred_precision = -1;    the_result.pred_recall = -1;  };  if(convergence_epsilon > parameters->convergence_epsilon){    cout<<"WARNING: The results were obtained using a relaxed epsilon of "<<convergence_epsilon<<" on the KKT conditions!"<<endl;  }  else if(parameters->verbosity>=2){    cout<<"The results are valid with an epsilon of "<<convergence_epsilon<<" on the KKT conditions."<<endl;  };  if(parameters->verbosity >= 2){    cout << "Average loss  : "<<the_result.loss<<" (loo-estim: "<< the_result.pred_loss<<")"<<endl;    cout << "Avg. loss pos : "<<theloss_pos<<"\t ("<<countpos<<" occurences)"<<endl;    cout << "Avg. loss neg : "<<theloss_neg<<"\t ("<<countneg<<" occurences)"<<endl;    cout << "Mean absolute error : "<<the_result.MAE<<endl;    cout << "Mean squared error  : "<<the_result.MSE<<endl;    cout << "Support Vectors : "<<svs<<endl;    cout << "Bounded SVs     : "<<bsv<<endl;    cout<<"min SV: "<<min_alpha<<endl	<<"max SV: "<<max_alpha<<endl;    cout<<"|w| = "<<sqrt(norm_w)<<endl;    cout<<"max |x| = "<<sqrt(max_norm_x)<<endl;    cout<<"VCdim <= "<<the_result.VCdim<<endl;    print_special_statistics();    if((is_pattern) && (! parameters->is_distribution)){      // output precision, recall and accuracy      if(parameters->loo_estim){	cout<<"performance (+estimators):"<<endl;	cout<<"Accuracy  : "<<the_result.accuracy<<" ("<<the_result.pred_accuracy<<")"<<endl;	cout<<"Precision : "<<the_result.precision<<" ("<<the_result.pred_precision<<")"<<endl;	cout<<"Recall    : "<<the_result.recall<<" ("<<the_result.pred_recall<<")"<<endl;      }      else{	cout<<"performance :"<<endl;	cout<<"Accuracy  : "<<the_result.accuracy<<endl;	cout<<"Precision : "<<the_result.precision<<endl;	cout<<"Recall    : "<<the_result.recall<<endl;      };      if(parameters->verbosity>= 2){	// nice printout ;-)	int rows = (int)(1+log10((SVMFLOAT)(total_pos+total_neg)));	int now_digits = rows+2;	int i,j;	cout<<endl;	cout<<"Predicted values:"<<endl;	cout<<"   |";	for(i=0;i<rows;i++){ cout<<" "; };	cout<<"+  |";	for(j=0;j<rows;j++){ cout<<" "; };	cout<<"-"<<endl;	cout<<"---+";	for(i=0;i<now_digits;i++){ cout<<"-"; };	cout<<"-+-";	for(i=0;i<now_digits;i++){ cout<<"-"; };	cout<<endl;	cout<<" + |  ";	now_digits=rows-(int)(1+log10((SVMFLOAT)correct_pos))-1;	for(i=0;i<now_digits;i++){ cout<<" "; };	cout<<correct_pos<<"  |  ";	now_digits=rows-(int)(1+log10((SVMFLOAT)(total_pos-correct_pos)))-1;	for(i=0;i<now_digits;i++){ cout<<" "; };	cout<<total_pos-correct_pos<<"    (true pos)"<<endl;	cout<<" - |  ";	now_digits=rows-(int)(1+log10((SVMFLOAT)(total_neg-correct_neg)))-1;	for(i=0;i<now_digits;i++){ cout<<" "; };	cout<<(total_neg-correct_neg)<<"  |  ";	now_digits=rows-(int)(1+log10((SVMFLOAT)correct_neg))-1;	for(i=0;i<now_digits;i++){ cout<<" "; };	cout<<correct_neg<<"    (true neg)"<<endl;	cout<<endl;      };    };  };  SVMINT dim = examples->get_dim();  if(((parameters->print_w == 1) && (parameters->is_linear != 0)) ||     ((dim<100) &&       (parameters->verbosity>= 2) &&       (parameters->is_linear != 0))     ){    // print hyperplane    SVMINT j;    svm_example example;    SVMFLOAT* w = new SVMFLOAT[dim];    SVMFLOAT b = examples->get_b();    for(j=0;j<dim;j++) w[j] = 0;    for(i=0;i<examples_total;i++){      example = examples->get_example(i);      alpha = examples->get_alpha(i);      for(j=0;j<example.length;j++){	w[((example.example)[j]).index] += alpha*((example.example)[j]).att;      };    };    if(examples->initialised_scale()){      SVMFLOAT* exp = examples->get_exp();      SVMFLOAT* var = examples->get_var();      for(j=0;j<dim;j++){	if(var[j] != 0){	  w[j] /= var[j];	};	if(0 != var[dim]){	  w[j] *= var[dim];	};	b -= w[j]*exp[j];      };      b += exp[dim];    };    for(j=0;j<dim;j++){      cout << "w["<<j<<"] = " << w[j] << endl;    };    cout << "b = "<<b<<endl;    if(dim==1){      cout<<"y = "<<w[0]<<"*x+"<<b<<endl;    };    if((dim==2) && (is_pattern)){      cout<<"x1 = "<<-w[0]/w[1]<<"*x0+"<<-b/w[1]<<endl;    };    delete []w;  };  if(parameters->verbosity>= 2){    cout<<"Time for learning:"<<endl	<<"init        : "<<(time_init/100)<<"s"<<endl	<<"optimizer   : "<<(time_optimize/100)<<"s"<<endl	<<"convergence : "<<(time_convergence/100)<<"s"<<endl	<<"update ws   : "<<(time_update/100)<<"s"<<endl	<<"calc ws     : "<<(time_calc/100)<<"s"<<endl	<<"============="<<endl	<<"all         : "<<(time_all/100)<<"s"<<endl;  }  else if(parameters->verbosity>=2){    cout<<"Time for learning: "<<(time_all/100)<<"s"<<endl;  };  return the_result;};/** * * Pattern SVM * */int svm_pattern_c::is_alpha_neg(const SVMINT i){  // variable i is alpha*  int result;  if(all_ys[i] > 0){    result = 1;  }  else{    result = -1;  };  return result;};SVMFLOAT svm_pattern_c::nabla(const SVMINT i){  // = is_alpha_neg(i) * sum[i] - 1  if(all_ys[i]>0){    return(sum[i]-1);  }  else{    return(-sum[i]-1);  };};SVMFLOAT svm_pattern_c::lambda(const SVMINT i){  // size lagrangian multiplier of the active constraint  SVMFLOAT alpha;  SVMFLOAT result=0;  alpha=all_alphas[i];  if(alpha == Cneg){ //-Cneg >= - is_zero){    // upper bound active    result = -lambda_eq - sum[i] + 1;  }  else if(alpha == 0){ //(alpha <= is_zero) && (alpha >= -is_zero)){    // lower bound active    if(all_ys[i]>0){      result = (sum[i]+lambda_eq) - 1;    }    else{      result = -(sum[i]+lambda_eq) - 1;    };  }  else if(alpha == -Cpos){ //+Cpos <= is_zero){    // upper bound active    result = lambda_eq + sum[i] + 1;  }  else{    if(all_ys[i]>0){      result = -abs(sum[i]+lambda_eq - 1);    }    else{      result = -abs(-sum[i]-lambda_eq - 1);    };  };  return result;};int svm_pattern_c::feasible(const SVMINT i, SVMFLOAT* the_nabla, SVMFLOAT* the_lambda, int* atbound){  // is direction i feasible to minimize the target function  // (includes which_alpha==0)  int is_feasible=1;  if(at_bound[i] >= shrink_const){ is_feasible = 0; };  SVMFLOAT alpha;  alpha=all_alphas[i];  if(alpha == Cneg){ //alpha-Cneg >= - is_zero){    // alpha* at upper bound    *atbound = 1;    *the_nabla = sum[i] - 1;    *the_lambda = -lambda_eq - *the_nabla; //sum[i] + 1;    if(*the_lambda >= 0){      at_bound[i]++;      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else if(alpha == 0){    // lower bound active    *atbound = -1;    if(all_ys[i]>0){      *the_nabla = sum[i] - 1;      *the_lambda = lambda_eq + *the_nabla; //sum[i]+lambda_eq - 1;    }    else{      *the_nabla = -sum[i] - 1;      *the_lambda = -lambda_eq + *the_nabla; //-sum[i]-lambda_eq - 1;    };    if(*the_lambda >= 0){      at_bound[i]++;      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else if(alpha == -Cpos){ //alpha+Cpos <= is_zero){    *atbound = 1;    *the_nabla = -sum[i] - 1;    *the_lambda = lambda_eq - *the_nabla; //sum[i] - 1;    if(*the_lambda >= 0){      at_bound[i]++;      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else{    // not at bound    *atbound = 0;    if(all_ys[i]>0){      *the_nabla = sum[i] - 1;      *the_lambda = -abs(*the_nabla+lambda_eq);    }    else{      *the_nabla = -sum[i] - 1;      *the_lambda = -abs(lambda_eq - *the_nabla);    };    at_bound[i] = 0;  };  if(*the_lambda >= feasible_epsilon){      is_feasible = 0;   };  return is_feasible;};void svm_pattern_c::init_optimizer(){  // Cs are dived by examples_total in init_optimizer  svm_c::init_optimizer();  SVMINT i;  for(i=0;i<working_set_size;i++){    qp.l[i] = 0;  };};/** * * Regression SVM * */int svm_regression_c::is_alpha_neg(const SVMINT i){  // variable i is alpha*  int result;  if(all_alphas[i] > 0){    result = 1;  }  else if(all_alphas[i] == 0){    if(sum[i] - all_ys[i] + lambda_eq>0){      result = -1;    }    else{      result = 1;    };    //    result = 2*((i+at_bound[i])%2)-1;  }  else{    result = -1;  };  return result;};SVMFLOAT svm_regression_c::nabla(const SVMINT i){  if(all_alphas[i] > 0){    return( sum[i] - all_ys[i] + epsilon_neg);  }  else if(all_alphas[i] == 0){    if(is_alpha_neg(i)>0){      return( sum[i] - all_ys[i] + epsilon_neg);    }    else{      return(-sum[i] + all_ys[i] + epsilon_pos);    };  }  else{    return(-sum[i] + all_ys[i] + epsilon_pos);  };};SVMFLOAT svm_regression_c::lambda(const SVMINT i){  // size lagrangian multiplier of the active constraint  SVMFLOAT alpha;  SVMFLOAT result = -abs(nabla(i)+is_alpha_neg(i)*lambda_eq);    //= -infinity; // default = not at bound  alpha=all_alphas[i];  if(alpha>is_zero){    // alpha*    if(alpha-Cneg >= - is_zero){      // upper bound active      result = -lambda_eq-sum[i] + all_ys[i] - epsilon_neg;    };  }  else if(alpha >= -is_zero){    // lower bound active    if(all_alphas[i] > 0){      result = sum[i] - all_ys[i] + epsilon_neg + lambda_eq;    }    else if(all_alphas[i] == 0){      if(is_alpha_neg(i)>0){	result = sum[i] - all_ys[i] + epsilon_neg + lambda_eq;      }      else{	result = -sum[i] + all_ys[i] + epsilon_pos-lambda_eq;      };    }    else{      result = -sum[i] + all_ys[i] + epsilon_pos-lambda_eq;    };  }  else if(alpha+Cpos <= is_zero){    // upper bound active    result = lambda_eq + sum[i] - all_ys[i] - epsilon_pos;  };  return result;};int svm_regression_c::feasible(const SVMINT i, SVMFLOAT* the_nabla, SVMFLOAT* the_lambda, int* atbound){  // is direction i feasible to minimize the target function  // (includes which_alpha==0)  int is_feasible = 1; // <=> at_bound < shrink and lambda < -feas_eps  if(at_bound[i] >= shrink_const){ is_feasible = 0; };  SVMFLOAT alpha;  alpha=all_alphas[i];  if(alpha-Cneg >= -is_zero){    // alpha* at upper bound    *atbound = 1;    *the_nabla = sum[i] - all_ys[i] + epsilon_neg;    *the_lambda = -lambda_eq- *the_nabla;    if(*the_lambda >= 0){      at_bound[i]++;      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else if((alpha<=is_zero) && (alpha >= -is_zero)){    // lower bound active    *atbound = 1;    if(all_alphas[i] > 0){      *the_nabla = sum[i] - all_ys[i] + epsilon_neg;      *the_lambda = *the_nabla + lambda_eq;    }    else if(all_alphas[i]==0){      if(is_alpha_neg(i)>0){	*the_nabla = sum[i] - all_ys[i] + epsilon_neg;	*the_lambda = *the_nabla + lambda_eq;      }      else{	*the_nabla = -sum[i] + all_ys[i] + epsilon_pos;	*the_lambda = *the_nabla - lambda_eq;      };    }    else{      *the_nabla = -sum[i] + all_ys[i] + epsilon_pos;      *the_lambda = *the_nabla - lambda_eq;    };    if(*the_lambda >= 0){      if(all_alphas[i] != 0){	// check both constraints!	all_alphas[i]=0;	if(is_alpha_neg(i)>0){	  *the_lambda = *the_nabla + lambda_eq;	}	else{	  *the_lambda = *the_nabla - lambda_eq;	};	if(*the_lambda >= 0){	  at_bound[i]++;	};      }      else{	at_bound[i]++;      };      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else if(alpha+Cpos <= is_zero){    // alpha at upper bound    *atbound = 1;    *the_nabla = -sum[i] + all_ys[i] + epsilon_pos;    *the_lambda = lambda_eq - *the_nabla;    if(*the_lambda >= 0){      at_bound[i]++;      if(at_bound[i] == shrink_const) to_shrink++;    }    else{      at_bound[i] = 0;    };  }  else{    // not at bound    *atbound = 0;    if(is_alpha_neg(i)>0){      *the_nabla = sum[i] - all_ys[i] + epsilon_neg;      *the_lambda = -abs(*the_nabla + lambda_eq);    }    else{      *the_nabla = -sum[i] + all_ys[i] + epsilon_pos;      *the_lambda = -abs(lambda_eq - *the_nabla);    };  };  if(*the_lambda>=feasible_epsilon){    is_feasible = 0;   };  return is_feasible;};

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩激情| 捆绑变态av一区二区三区| 成人在线视频一区二区| 亚洲自拍偷拍图区| 中文字幕国产一区| 日韩午夜电影av| 色妹子一区二区| 国产自产2019最新不卡| 丝袜美腿亚洲色图| 亚洲欧美另类综合偷拍| 精品成人免费观看| 欧美哺乳videos| 欧美一区国产二区| 欧美一区二区三区播放老司机| 精彩视频一区二区| 日韩欧美专区在线| 亚洲第一精品在线| 国产欧美日韩不卡| 国产欧美日韩另类视频免费观看| 国产精品国产三级国产aⅴ原创 | 尤物视频一区二区| 日韩毛片视频在线看| 亚洲欧美另类久久久精品| 亚洲愉拍自拍另类高清精品| 日精品一区二区三区| 韩日欧美一区二区三区| 国产91丝袜在线播放| 一区视频在线播放| 国产精品视频yy9299一区| 日本一区二区三区国色天香| 中文字幕av一区 二区| 国产午夜精品一区二区三区嫩草 | 久久激情五月婷婷| 日日骚欧美日韩| 亚洲国产精品一区二区久久| 麻豆91精品视频| 亚洲影视在线播放| 婷婷六月综合亚洲| 久久99蜜桃精品| 成人午夜在线视频| 91视频国产观看| 69久久99精品久久久久婷婷 | 久久国产综合精品| 国产一区二区精品久久91| av一区二区久久| 欧美videofree性高清杂交| 欧美国产精品久久| 蜜芽一区二区三区| 蜜臀av亚洲一区中文字幕| 亚洲精品福利视频网站| 26uuuu精品一区二区| 狠狠色狠狠色综合系列| 国产精品一区免费视频| 国产福利一区在线| 国产亚洲精品免费| 欧美日韩国产一级片| 国产欧美精品区一区二区三区 | 国产欧美精品一区二区色综合| 国产精品一线二线三线精华| thepron国产精品| 欧美一卡二卡三卡| 亚洲乱码中文字幕综合| 国产一区二区在线视频| 欧美理论片在线| ...中文天堂在线一区| 美女精品一区二区| 91久久精品一区二区| 国产三级一区二区三区| 琪琪久久久久日韩精品| 色屁屁一区二区| 国产亚洲精品7777| 人人爽香蕉精品| 欧美日韩久久不卡| 日韩一区在线免费观看| 国产一区二区不卡| 日韩欧美综合在线| 丝袜a∨在线一区二区三区不卡| 99久久精品一区二区| 久久精品亚洲国产奇米99| 人人爽香蕉精品| 欧美高清性hdvideosex| 亚洲精品成人悠悠色影视| 国v精品久久久网| 久久免费美女视频| 老司机午夜精品99久久| 欧美日韩一区二区三区视频| 一区二区三区中文字幕精品精品| 岛国av在线一区| 国产亚洲一二三区| 国内精品自线一区二区三区视频| 56国语精品自产拍在线观看| 一个色在线综合| 日本高清不卡视频| 亚洲综合色成人| 色94色欧美sute亚洲线路二| 日韩毛片高清在线播放| 成人sese在线| 亚洲色图欧美偷拍| 91在线视频18| 亚洲欧美经典视频| 色婷婷精品久久二区二区蜜臂av| 18成人在线视频| av欧美精品.com| 日韩美女啊v在线免费观看| av在线播放不卡| 亚洲色大成网站www久久九九| 成人毛片视频在线观看| 日韩毛片在线免费观看| 色综合夜色一区| 亚洲精品videosex极品| 日本电影欧美片| 五月婷婷久久综合| 91精品国产色综合久久ai换脸| 日本午夜一本久久久综合| 日韩免费成人网| 免费在线欧美视频| 精品伦理精品一区| 国产一区激情在线| 中文字幕精品在线不卡| 99re这里都是精品| 亚洲制服丝袜av| 欧美电影影音先锋| 韩国视频一区二区| 久久久久久97三级| 99re亚洲国产精品| 亚洲成年人网站在线观看| 日韩视频中午一区| 韩国av一区二区三区| 国产精品久久二区二区| 在线视频国内一区二区| 亚洲成人久久影院| 午夜精品一区二区三区电影天堂| 欧美日本韩国一区| 国产一区二区三区在线观看精品| 中文字幕精品三区| 在线观看精品一区| 九九视频精品免费| 国产精品欧美精品| 欧美日本一区二区三区四区| 九一九一国产精品| 亚洲色图视频网| 日韩午夜在线观看视频| 成人va在线观看| 婷婷丁香久久五月婷婷| 国产日韩欧美高清| 欧美日韩一区国产| 国产一区不卡视频| 亚洲一区二区精品视频| 精品国产乱码久久久久久闺蜜 | 国产亚洲精久久久久久| 欧美综合欧美视频| 国产精品91xxx| 一个色在线综合| 国产亚洲欧美一区在线观看| 色综合天天综合色综合av | 欧美一级高清片| 成人免费毛片嘿嘿连载视频| 亚洲.国产.中文慕字在线| 久久久亚洲精品石原莉奈| 色播五月激情综合网| 激情图片小说一区| 亚洲va欧美va天堂v国产综合| 中文字幕乱码日本亚洲一区二区| 欧美精品乱码久久久久久| 99精品久久只有精品| 久久精品国产99| 亚洲一卡二卡三卡四卡五卡| 久久精品亚洲精品国产欧美| 7777精品久久久大香线蕉| 成人精品电影在线观看| 免费国产亚洲视频| 亚洲丰满少妇videoshd| 18欧美亚洲精品| 国产肉丝袜一区二区| 日韩一级高清毛片| 欧美午夜一区二区| 成人激情动漫在线观看| 国产尤物一区二区| 同产精品九九九| 亚洲精品欧美激情| 国产精品国产自产拍高清av| 精品久久久久久久久久久久包黑料| 在线精品亚洲一区二区不卡| eeuss鲁一区二区三区| 国产成人免费视频| 寂寞少妇一区二区三区| 丝袜国产日韩另类美女| 亚洲一区二区精品3399| 一区二区三区高清不卡| 自拍偷拍亚洲欧美日韩| 亚洲欧洲www| 国产精品免费视频网站| 国产情人综合久久777777| 久久久久久日产精品| 欧美成人精品二区三区99精品| 911精品国产一区二区在线| 欧美群妇大交群中文字幕| 欧美影视一区在线| 欧美日韩在线不卡| 欧美日韩国产高清一区二区 |