how to get best test error/accuracy with neural networks pattern recognition ?
Show older comments
This is Neural Network Pattern Recognition.I used a vec dataset 1*54149 and 1*54149 target and I'm trying to train my neural network to do binary classification (1 and 0).i want get best ? So please someone can help me ?. thank you in advance
clear all;
clc;
load vec; load target;
inputs = double(vec);
targets = double(target);
% Create a Pattern Recognition Network
hiddenLayerSize = 1;
%net = patternnet(hiddenLayerSize);
net = patternnet(hiddenLayerSize);
% Choose Input and Output Pre/Post-Processing Functions
% For a list of all processing functions type: help nnprocess
net.inputs{1}.processFcns = {'removeconstantrows','mapstd'};
net.outputs{2}.processFcns = {'removeconstantrows','mapstd'};
% Setup Division of Data for Training, Validation, Testing
% For a list of all data division functions type: help nndivide
net.divideFcn = 'dividerand';
net.divideMode = 'sample'; % Divide up every sample
net.divideParam.trainRatio = 50/100;
net.divideParam.valRatio = 25/100;
net.divideParam.testRatio = 25/100;
% For a list of all training functions type: help nntrain
net.trainFcn = 'trainrp';
% Choose a Performance Function
% For a list of all performance functions type: help nnperformance
net.performFcn = 'mse';
% Choose Plot Functions
% For a list of all plot functions type: help nnplot
net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ...
'plotregression', 'plotfit'};
% Train the Network
[net,tr] = train(net,inputs,targets);
% Test the Network
outputs = net(inputs);
errors = gsubtract(targets,outputs);
performance = perform(net,targets,outputs);
[tpr,fpr,thresholds] = roc(targets,outputs);
% Recalculate Training, Validation and Test Performance
trainTargets = targets .* tr.trainMask{1};
valTargets = targets .* tr.valMask{1};
testTargets = targets .* tr.testMask{1};
trainPerformance = perform(net,trainTargets,outputs);
valPerformance = perform(net,valTargets,outputs);
testPerformance = perform(net,testTargets,outputs);
% View the Network
view(net)
%Plots
% Uncomment these lines to enable various plots.
figure, plotperform(tr)
figure, plottrainstate(tr)
figure, plotconfusion(targets,outputs)
figure, ploterrhist(errors)
figure, plotregression(targets,outputs)
figure, plotroc(targets,outputs)



Accepted Answer
More Answers (1)
Vrushabh Bhangod
on 21 Oct 2018
0 votes
SIR, I Want a Neural Network with Logsig as the activation function and validation 0, Training % 70%, testing % 30%, learning rate 0.1, momentum coefficient and I am unable to find the accuracy. Kindly answer the earliset
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!