Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //20.12.2016
- //Najswieższe na początku - odwrocic
- load('dane_wejsc');
- //odwroc
- [wie,ko]=size(USA);
- for i=1:wie
- zl(wie+1-i)=USA(i)
- end
- //nie odwrócone
- //zl=USA;
- //Normalizacja
- Dmax=max(zl);
- Dmin=min(zl);
- zl=(zl-Dmin)/(Dmax-Dmin);
- //zl=zl/1000;
- //[wie,ko]=size(zl);
- // normalizacja elementow ciagu uczacego
- //for i=1:ko
- // zl(:,i)=zl(:,i)/sqrt(zl(:,i)'*zl(:,i));
- //end;
- //liczbaokresówwprzód
- n=30; //zasięg prognozy
- k=50; //rząd predykcji
- //Wypełnianiemacierzy
- [wie,ko]=size(zl);
- ko
- U=[];
- Z=[];
- for i=1:wie-k-n+1
- U=[U zl(i:i+k-1)];
- Z=[Z zl(i+k:i+k+n-1)];
- end;
- C=[];
- C=[C zl(wie-n:wie)];
- exec("ann_FF_init.sci");
- exec("ann_FF_Mom_online.sci");
- exec("ann_d_sum_of_sqr.sci");
- exec("ann_d_log_activ.sci");
- exec("ann_FF_run.sci");
- exec("ann_log_activ.sci");
- exec("ann_tan_activ.sci");
- exec("ann_d_tan_activ.sci");
- [liczba_wejsc, liczba_wzorcow]=size(U);
- [liczba_wyjsc, liczba_wzorcow]=size(Z);
- N=[liczba_wejsc 20 10 liczba_wyjsc];
- r=[0,1];
- rb=[0,0];
- W=ann_FF_init(N,r,rb);
- //load('dax-rzad-50-pred-20-duza-siec');
- sW=W;
- //parametry uczenia - uczenie
- lp=[0.05 0.05 0.5 0.1];
- af = ['ann_log_activ','ann_d_log_activ'];
- //af = ['ann_tan_activ','ann_d_tan_activ'];
- for i=1:30
- T=100;
- //[W,sW]=ann_FF_Mom_online(U,Z,N,W,lp,T,sW,af);
- [W,sW]=ann_FF_Mom_online(U,Z,N,W,lp,T);
- //testowanie
- l = [2,size(N,'c')];
- //Y=ann_FF_run(U,N,W,l,'ann_tan_activ');
- Y=ann_FF_run(U,N,W);
- // Wyznaczzenie SSE
- delta=Y-Z
- [wie,ko]=size(delta);
- //disp(delta)
- suma=0
- sse=0
- for l=1:wie
- for i= 1:ko
- suma=suma+ delta(l,i)*delta(l,i)
- end
- end
- sse=suma/(ko*wie)
- disp('SSE: ' + string(sse))
- end;
- //save('test_dax-rzad-50-pred-20-duza-siec', 'W');
- //figure;
- plot(Z(n,:), 'k');
- plot(Y(n,:), 'r');
- [wie,ko]=size(zl);
- utest=zl(wie-k+1:wie);
- Q=ann_FF_run(utest,N,W);//symulacja
- //prog=[zl(wie) Q'];
- prog=[utest(k) Q'];
- prog1= prog*(Dmax-Dmin)+Dmin;
- progC1= C*(Dmax-Dmin)+Dmin;
- figure
- plot(prog1,'r');
- plot(progC1','b');
- //prog1= prog*(Dmax-Dmin)+Dmin
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement