package nn3;
public class drive {
int number_step;
int number;
int[][] link=new int[70][11];
int number_link;
int number_point;
int[] y=new int[700];
double[][] x=new double[700][11];
double[][] e=new double[20][700];
int datanumber;
int[][] alpha=new int[20][11];
void makedata(){
int eq,s,sx;
int[] alphax=new int[40];
int[] a=new int[40];
for(eq=1;eq<number_link+1;eq++){
double minz=9999;
for(sx=0;sx<number+1;sx++){
alphax[sx]=0;
}
int trial;
for(trial=1;trial<1001;trial++){
for(sx=0;sx<number+1;sx++){
a[sx]=(int)(20*Math.random())-10;
}
double z=0;
for(s=1;s<datanumber+1;s++){
double x1=a[0];
int m0=link[eq][0];
for(sx=1;sx<number+1;sx++){
int m1=link[eq][1];
x1=x1+a[sx]*e[m1][sx];
}
double z1=1/(1+Math.exp(-x1));
z=z+(e[m0][s]-z1)*(e[m0][s]-z1);
}
if(z<minz){
minz=z;
for(sx=0;sx<number+1;sx++){
alphax[sx]=a[sx];
}
}
}
for(sx=0;sx<number+1;sx++){
alpha[eq][sx]=alphax[sx];
}
}
}
}
最終更新:2017年08月12日 01:17