📄 initmod1.m
字号:
function [indsld, wsld] = initmod1(pmat, nbwavelon, y, nbvar);%Initmod1: WaveNet initialization mode 1%% [indsld, wsld] = initmod1(pmat, nbwavelon, y, nbvar)%%Algorithm: residual based regressor selection.%By Qinghua Zhang. March, 1994.if nbwavelon < 0 %% automatic network order determination nbwavelon=min(fix((size(pmat,1)-nbvar-2) / (nbvar+2)), size(pmat,2)-nbvar-1); AD = 1;else AD = 0; %% network order is givenend%initialization by SELECTING the LINEAR TERMSbc = pmat(:,1:(nbvar+1)) \ y';resid = y' - pmat(:,1:(nbvar+1))*bc; Ij = (nbvar+2):size(pmat,2); indsld = [1:nbvar+1]; wsld = [bc'];STDY = sqrt(mean((y-mean(y)).^2));NSRMSE = sqrt(mean(resid.^2)) / STDY;% initialize plotclf; plot([0 nbwavelon], [0 NSRMSE],'.');title('Residual Based Selection');xlabel('Nb of selected wavelets'); ylabel('NSRMSE');drawnowresidhd=line('color','k','linestyle','o','erase','none', ... 'xdata',[0],'ydata',[NSRMSE]);drawnow;if AD==1, AIC=[]; endfor i=(nbvar+2):(nbwavelon+nbvar+1) V = pmat(:,Ij); [tmpbuf, litmp] = max((V'*resid).^2); li = Ij(litmp); indsld = [indsld li]; Ij = Ij([1:(litmp-1) (litmp+1):length(Ij)]); uli = pmat(:,li)'*resid; wsld = [wsld uli]; resid = resid - uli*pmat(:,li); NSRMSE = sqrt(mean(resid.^2)) / STDY; % update plot set(residhd, 'linestyle','*', 'xdata',[i-(nbvar+1)], 'ydata',[NSRMSE]); drawnow if AD==1 vary=cov(resid); N=length(y); dim=(nbvar+2)*(i-nbvar-1)+nbvar+1; tamb=((1+dim/N)/(1-dim/N))*0.5*vary; AIC=[AIC tamb]; endendglobal Pause_Time; Pause_Time=0; if AD==1 time_on = clock; clf; plot(AIC); title('Akaike''s Final Prediction Error Criterion') xlabel('number of wavelets'); ylabel('FPEC'); [tmp, nbwavelon] = min(AIC); nbw=input([' Enter the number of wavelets [Default=' ... int2str(nbwavelon) ']: ']); Pause_Time = etime(clock, time_on); if ~isempty(nbw) if(nbw<1 | nbw>length(AIC)) disp([7 ' Invalid value. Default value is used.']); else nbwavelon = nbw; end end indsld = indsld(1:(nbwavelon+nbvar+1)); wsld = wsld(1:(nbwavelon+nbvar+1));end %end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -