Lo studio di fattibilità è stato condotto inizialmente con “dati artificiali” creati mediante il seguente script in linguaggio Matlab:
%% M-file used to create the FKR data file. %% Columns of DATA: [x1,x2,x3,x4,x5,x6,x7,x8,x9,x10;... %% y,y50,y25,y10,y05; count; date; times]. % Number of Records nrec=15000; % Number of Candidate Predictors ncp=10; % Creates an n*(ncp+8) zero filled matrix DATA=zeros(nrec,ncp+8); % Fills columns 1 thru ncp with Gaussian(0,1)random noise DATA(:,1:ncp)=random('Normal',0,1,nrec,ncp); % The pure signal y is a 3D non-linear function y1=exp(-((DATA(:,2)+0.5).^2))-exp(-((DATA(:,2)-0.5).^2)); y2=exp(-((DATA(:,5)+0.5).^2))-exp(-((DATA(:,5)-0.5).^2)); y3=exp(-((DATA(:,9)+0.5).^2))-exp(-((DATA(:,9)-0.5).^2)); y=y1+y2+y3; DATA(:,ncp+1)=y; % Increase all x2's values by 10 DATA(:,2)=DATA(:,2)+10; % Scale values of x5 up by a factor of 1000 DATA(:,5)=1000*DATA(:,5); % Scale values of x9 down by a factor of 1000 DATA(:,9)=DATA(:,9)/1000; % Generates a vector with nrec random numbers from the... % continuous uniform distribution [-1,1] noise=random('Uniform',-1,1,nrec,1); % Noise Standard Deviation sdnoise=std(noise); % Standard Deviation of the pure signal y sdy=std(y); % MAX_VR=50% (Signal=50%,Noise=50%)
y50=y+(sdy/sdnoise)*sqrt(0.50/0.50)*noise; DATA(:,ncp+2)=y50; % MAX_VR=25% (Signal=25%,Noise=75%) y25=y+(sdy/sdnoise)*sqrt(0.75/0.25)*noise; DATA(:,ncp+3)=y25; % MAX_VR=10% (Signal=10%,Noise=90%) y10=y+(sdy/sdnoise)*sqrt(0.90/0.10)*noise; DATA(:,ncp+4)=y10; % MAX_VR= 5% (Signal=5%,Noise=95%) y05=y+(sdy/sdnoise)*sqrt(0.95/0.05)*noise; DATA(:,ncp+5)=y05; % Counter count=(1:nrec)'; DATA(:,ncp+6)=count; % Dates: DATA(:,ncp+7)=date; % Times: DATA(:,ncp+8)=times;
Lo script esposto genera una matrice (15.000 x 17): le prime 10 colonne contengono i candidate predictors ( ) x , costruiti con un generatore di numeri casuali di distribuzione gaussiana, in particolare x2, x5, x9, sono il risultato anche di ulteriori trasformazioni eseguite per dimostrare la capacità della kernel regression di individuare i best predictors indipendentemente dalla loro grandezza e quindi senza il bisogno di alcuna standardizzazione dei dati. Le colonne dalla 11° alla 15° contengono la variabile dipendente y con differenti frazioni di segnale e rumore:
− la 11° è una serie storica non lineare a tre dimensioni costruita utilizzando i predictors x2, x5, x9 in modo da contenere il segnale puro (100% segnale, 0% rumore);
− la 12° ha il 50% di segnale e il 50% di rumore;
− la 13° ha il 25% di segnale e il 75% di rumore;
− la 14° ha il 10% di segnale e il 90% di rumore;
− ed infine la 15° colonna contiene la y con il 5% di segnale e il 95% di rumore.
Successivo: 4.2 Presentazione dei Parametri Principali
Sommario: Index