package bs;
public class pro {
double[] beta=new double[11];
double alpha;
int datanumber;
int number;
double[] y=new double[500];
double[] ys=new double[500];
double[][] x=new double[500][4];
double[] betas=new double[11];
double[] d_beta=new double[11];
double d_alpha;
double[] vec_beta=new double[11];
double vec_alpha;
public static void main(String[] args) {
pro t=new pro();
}
pro(){
datanumber=100;
number=2;
int s;
for(s=1;s<datanumber+1;s++){
x[s][1]=5+Math.random();
x[s][2]=-6+Math.random();
y[s]=1;
}
for(s=51;s<datanumber+1;s++){
x[s][1]=-3+Math.random();
x[s][2]=7+Math.random();
y[s]=-1;
}
faststep sub2=new faststep();
sub2.x=x;
sub2.datanumber=datanumber;
sub2.number=number;
sub2.y=y;
sub2.makedata();
alpha=sub2.alpha;
beta=sub2.beta;
optimal sub=new optimal();
sub.x=x;
sub.y=y;
sub.alpha=alpha;
sub.beta=beta;
sub.number=number;
sub.datanumber=datanumber;
sub.makedata();
alpha=sub.alpha;
beta=sub.beta;
for(s=1;s<101;s++){
System.out.println(y[s]+"(*)"+(beta[2]*x[s][2]+beta[1]*x[s][1]+alpha));
}
}
}
package bs;
class faststep{
double[] beta=new double[11];
double alpha;
int datanumber;
int number;
double[] y=new double[500];
double[] ys=new double[500];
double[][] x=new double[500][4];
double[] betas=new double[11];
double[] d_beta=new double[11];
double d_alpha;
double[] vec_beta=new double[11];
double vec_alpha;
void makedata(){
double[] sol=new double[5];
double[][] xs=new double[500][10];
int s,sx;
for(s=1;s<datanumber+1;s++){
for(sx=1;sx<number+1;sx++){
xs[s][sx]=x[s][sx];
}
xs[s][number+1]=1;
}
ols sub2=new ols();
sub2.x=xs;
sub2.datanumber=datanumber;
sub2.number=number+1;
sub2.y=y;
sub2.makedata();
sol=sub2.sol;
alpha=sol[number+1];
for(sx=1;sx<number+1;sx++){
beta[sx]=sol[sx];
}
}
}
最終更新:2016年12月08日 01:21