Как я могу изменить свой код, чтобы показывать графики обучения и тестирования в MATLAB?

#matlab #neural-network

#matlab #нейронная сеть

Вопрос:

У меня есть этот код о нейронных сетях. Как я могу изменить этот код, чтобы он мог показывать графики обучения и тестирования?

 %~~~~~~~~~~~[L1 L2 1];first hidden layer,second amp; output layer~~~~~
layer = [11 15 1];
myepochs = 30;
attemption = 1; %i;
mytfn = {'tansig' 'tansig' 'purelin'};

%~~~~~~load data~~~~~~~~~~~~~~~~~~~~~~~
m = xlsread('C:Documents and SettingswinxpMy DocumentsMATLABMATLAB_DATAdatatrain.csv');   

%~~~~~~convert the data in Matrix form~~~~
[row,col] = size(m);          

P = m(1:row,1:10)';

T1 = m(1:row, col)';   % target data for training...last column

net = newff([minmax(P)],layer,mytfn,'trainlm');  %nnet 
net.trainParam.epochs = myepochs;   % how many time newff will repeat the training
net.trainParam.showWindow = true;
net.trainParam.showCommandLine = true;
net = train(net,P,T1);  % start training newff with input P and target T1

Y = sim(net,P);   % training

save 'net114' net;
  

Кроме того, правильный ли этот код? Я хочу вычислить площадь и периметр изображения. Но вычисленные значения показывают, что периметр больше площади, что не имеет смысла, верно? Или, может быть, этому есть объяснение?

 BW =~c;
area= bwarea(BW);
area
imshow(BW);

bw2=~c;

pm=bwperim(bw2);
perimeter=bwarea(pm);
  

Ответ №1:

Возможно, вы захотите попробовать что-то вроде net.trainParam.show = 30 , чтобы показывать прогресс обучения каждые 30 эпох.