var x=new Array();
var y=new Array();
var alphax=new Array();
var a=new Array();
var alpha=new Array();
var e_in=new Array();
var e_out=new Array();
function myFunction() {
for(s=1;s<4;s++){
alpha[s]=new Array();
}
for(s=1;s<101;s++){
x[s]=new Array();
}
for(s=1;s<3;s++){
e_in[s]=new Array();
}
for(s=1;s<101;s++){
x[s][1]=Math.random();
x[s][2]=Math.random();
y[s]=0;
if(3*x[s][2]+2*x[s][2]>2.5)y[s]=1;
}
for(n=1;n<3;n++){
for(s=1;s<101;s++){
e_in[1][s]=x[s][1];
e_in[2][s]=x[s][2];
e_out[s]=y[s];
}
step();
for(sx=0;sx<3;sx++){
alpha[n][sx]=alphax[sx];
}
}
}
function step(){
for(sx=0;sx<3;sx++){
alphax[sx]=0;
}
minz=9999;
for(tr=1;tr<301;tr++){
z=0;
for(sx=0;sx<3;sx++){
m1=20*Math.random()-10;
a[sx]=Math.floor(m1)+1;
}
for(s=1;s<101;s++){
a1=a[0];
for(sx=1;sx<3;sx++){
a1=a1+a[sx]*e_in[sx][s];
}
z1=1/(1+Math.exp(-a1));
z=z+(e_out[s]-z1)*(e_out[s]-z1);
}
if(z<minz){
for(sx=0;sx<3;sx++){
alphax[sx]=a[sx];
}
minz=z;
}
}
}
最終更新:2017年08月09日 14:22