MATLAB: Prune hidden neurons in neural network

feedforwardhidden neuronsneural networkprune

I am trying to use 'prune' to prune the hidden layers in the following neural network. To start of with I define 1000 hidden neurons.
load('x1Ay1Ax2Fy2A.mat')
%For the Neural Network model:
BDataARtraining=[x1A y1A];%create a 3rd order data set by staggering observations
BDataARpredictor=[x2F]; %hold out to test forcast
dim=size(BDataARtraining,2); %number of variables of multivariate
model = newfit(BDataARtraining(1:end,1:dim-1)',BDataARtraining(1:end,dim)',100);%create a Feedforward Neural Network with 3 inputs, 1 output and 100 hidden neurons
view(model)
model2=prune(model);
view(model2)
Please could you explain why model2 still has 100 hidden nodes after pruning (see view(model2) ) as I was expecting some to have been removed by pruning? I have tried starting with different numbers of hidden neurons and also get the same number after pruning as what I started with.

Best Answer

  • Search NEWSREADER and ANSWERS using
    Ntrials Hmin Hmax
    for an easier approach to find the smallest successful number of hidden nodes in the range [Hmin Hmax] using Ntrials sets of random initial weights.
    Hope this helps.
    Thank you for formally accepting my answer
    Greg