
%   vstupy - input data.
x = vstupy';
t = vystupy';

% volba trénovací funkce
trainFcn = 'trainbr';

% počet neuronů ve skryté vrstvě
hiddenLayerSize = 2;

% vytvoření sítě
net = fitnet(hiddenLayerSize,trainFcn);

% předzpracování dat
net.input.processFcns = {'removeconstantrows','mapminmax'};
net.output.processFcns = {'removeconstantrows','mapminmax'};

% náhodné rozdělení dat
net.divideFcn = 'dividerand';
net.divideMode = 'sample';

% poměr trénovací množiny
net.divideParam.trainRatio = 70/100;

% poměr testovací množiny
net.divideParam.valRatio = 15/100;

% poměr validační množiny
net.divideParam.testRatio = 15/100;

% výkonnostní funkce
net.performFcn = 'mse';

% vykreslované grafy
net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ...
    'plotregression', 'plotfit'};

% naučení sítě
tic
[net,tr] = train(net,x,t);

% testování sítě
y = net(x);
e = gsubtract(t,y);
performance = perform(net,t,y)
toc
