I created neural network for binary classification , i have 2 classes and 9 features using an input matrix with a size of [9 981] and target matrix [1 981] . This is my code : rng(0); inputs = patientInputs; targets = patientTargets; [x,ps] = mapminmax(inputs); t=targets; trainFcn = 'trainbr'; % Create a Pattern Recognition Network hiddenLayerSize =8; net = patternnet(hiddenLayerSize,trainFcn); net.divideFcn = 'dividerand'; % Divide data randomly net.divideMode = 'sample'; % Divide up every sample net.divideParam.trainRatio = 70/100; net.divideParam.valRatio = 15/100; net.divideParam.testRatio = 15/100; net.performFcn = 'mse'; net.trainParam.max_fail=6; % Choose Plot Functions % For a list of all plot functions type: help nnplot net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ... 'plotconfusion', 'plotroc'}; % Train the Network net= configure(net,x,t); [net,tr] = train(net,x,t); y = net(x); e = gsubtract(t,y); performance = perform(net,t,y) tind = vec2ind(t); yind = vec2ind(y); percentErrors = sum(tind ~= yind)/numel(tind); % Recalculate Training, Validation and Test Performance trainTargets = t .* tr.trainMask{1}; valTargets = t .* tr.valMask{1}; testTargets = t .* tr.testMask{1}; trainPerformance = perform(net,trainTargets,y) valPerformance = perform(net,valTargets,y) testPerformance = perform(net,testTargets,y) % View the Network view(net) and when i tried to test the neural network with new data using ptst2 = mapminmax('apply',tst2,ps); bnewn = sim(net,ptst2); I don't get the same values like the target i mean 0 or 1 however if i put test data with target 0 i have as a result of bnewn= 0.1835 and with data test having target 1 i got cnewn= 0.816. How can i read this results ? as i understand if it is >0.5 so target=1 else target=0
Prashant Kumar answered .
2025-11-20
To read and interpret the results of a neural network simulation using `patternnet` in MATLAB, follow these steps:
1. Train the Patternnet:
First, you need to train your `patternnet` with your input data and target data.
% Example data
x = rand(10, 100); % 10 features, 100 samples
t = rand(1, 100); % 1 target, 100 samples
% Create the network
net = patternnet(10); % 10 hidden neurons
% Train the network
net = train(net, x, t);
2. *Simulate the Network:
Use the trained network to simulate and obtain outputs for new input data.
% New input data for simulation
new_x = rand(10, 50); % 10 features, 50 samples
% Simulate the network
y = net(new_x);
3. Interpret the Results:
The result `y` is the output of the network. Depending on your problem, you may need to interpret these results accordingly.
matlab
% Display the results
disp(y);
4. Analyze the Performance:
Optionally, you can evaluate the performance of your network using appropriate metrics.
% Performance evaluation
performance = perform(net, t, y);
disp(['Performance: ', num2str(performance)]);
This process involves training the `patternnet` with your data, simulating it with new inputs, and then interpreting the output results.