Predicting Acute Hypotensive Episodes: The PhysioNet/Computing in Cardiology Challenge 2009 1.0.0

File: <base>/sources/Henriques/codeMatlab/mmOutputPrediction.m (2,159 bytes)
% _________________________________________________________________________
% иииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииии
% PREDICTION OF ACUTE HYPOTENSIVE EPISODES USING NEURAL NETWORK MULTIMODELS
% _________________________________________________________________________
% иииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииии
%        Copyright (C) 2009
%          : Jorge Henriques ...  <jh@dei.uc.pt>,
%          : Teresa Rocha    ...  <teresa@sun.isec.pt>
%        This software is released under the terms of the GNU
%        General Public License (http://www.gnu.org/copyleft/gpl.html)
% иииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииии
% mmOutputPrediction.m
%__________________________________________________________________________
% иииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииии
%  Given :  a  model template (dataSet, numSet,numSinal)
%           an ABP signal (Ybef)
%  Predicts ABP evolution over the forecast window (YP)
%__________________________________________________________________________
% иииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииииии


 function YP=mmoutputPrediction( Ybef, YAFT, Dbef, dataSet, numSet, numSinal, ...
    BEFORE, ORD, NUMNET);
  
    YF =YAFT;

    [Ybef, bmin, bmax, bbia]=mmNormalize(Ybef, -1, 1, 0, length(Ybef) ); 
    [YAFT, amin, amax, abia]=mmNormalize(YAFT, -1, 1, 0, 1 );     
    XX = mmInputXX([Ybef;YAFT], BEFORE, ORD);

    %::::::::::::::::::::::::::::::::: PREDICTION PREdiction Outputs
    YP= [];
    for REDE=1:NUMNET 
        %...............................
        command=[' load ..\NNmodels\NET' char(dataSet) char(numSet) num2str(numSinal) '_' num2str(REDE); ];
        eval(command);
        YN= sim(net, XX);        
        yn= YN(:,end);
        XX= [XX; YN];
        YP= [YP; yn ];
    end
    YP = mmNormalize(YP, bmin, bmax, bbia, 0 );
    YP = YP-YP(1)+YF(1);                   %.. continuity of signal
    

    %................................. show
    if 0
        plot(YP)
        pause
    end