Привет, я нашел этот код где-то с небольшим количеством информации с ним. это должно быть код нейронной сети backpropagation. , но, похоже, ему не хватает чего-то вроде веса и предвзятости. - правильный код? это тест-в-поезде backpropagation нейронной сети? спасибоВопрос о нейронной сети matlab code
% --- Executes on button press in pushbutton6.
%~~~~~~~~~~~[L1 L2 1];first hidden layer,second & output layer~~~~~
layer = [11 15 1];
myepochs = 30;
attemption = 1; %i;
mytfn = {'tansig' 'tansig' 'purelin'};
%~~~~~~load data~~~~~~~~~~~~~~~~~~~~~~~
m = xlsread('D:\MATLAB\datatrain.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 'net7' net;
% --- Executes on button press in pushbutton4.
%~~~~~~load data~~~~~~~~~~~~~~~~~~~~~~~
mt = xlsread('D:\MATLAB\datatest.csv');
%~~~~~~convert the data in Matrix form~~~~
[row1,col1] = size(mt);
Pt= mt(1:row1,1:10)';
Tt = mt(1:row1, col1)';
load 'net7' -mat;
Yt= sim(net,Pt);
%~~~~~~~final result of the neural network~~~~~~~~
[r,c]=size(Yt);
result=Yt(c);
if result>0.7
error=1-result;
set(handles.edit39,'String','yes')
set(handles.edit40,'String',num2str(error))
set(handles.edit41,'String','Completed')
data1=[num2str(result) ];
fid = fopen('D:\MATLAB\record.csv','a+');
fprintf(fid,[data1,'\n']);
fclose(fid);
else
set(handles.edit39,'String','no')
set(handles.edit40,'String',num2str(result))
set(handles.edit41,'String','Completed')
data1=[num2str(result) ];
fid = fopen('D:\MATLAB\record.csv','a+');
fprintf(fid,[data1,'\n']);
fclose(fid);
end
Я понимаю о тренировке, затем тестировании. Я использую систему распознавания образов с помощью gui. скажем, у меня уже есть 300 параметров изображения для учебного магазина в traindata.csv. то я хочу протестировать 100 изображений. что я сделал, я загружаю 1 изображение, затем выполняю этот код и повторяю его до 100 изображений. Я могу это сделать? это правильно? я сомневаюсь в этом, потому что он похож на нейронную сеть с тестированием во время обучения. Является ли это возможным? – user562873
Я не уверен, что понял правильно. Ну, если у вас есть что-то вроде traindata.csv, вы можете иметь аналогичный файл, например testdata.csv, не так ли? Затем вы можете использовать функцию sim для тестирования вашей обученной сети на новые данные тестирования ... –
Я использую gui для реализации этой системы распознавания. после того, как все данные поезда сохранены в файле данных, я использую этот код для проверки изображения. когда я тестирую одно изображение, ответ да. но когда я снова тестирую одно и то же изображение, ответ будет отрицательным. почему он продолжает меняться, когда одно и то же изображение снова тестируется? – user562873