neural net toolbox: divideFcn = ''

17 views (last 30 days)
Fabio Muratore
Fabio Muratore on 8 Dec 2015
Commented: bear96 on 1 Jan 2020
Hello,
I read a lot of Q&A about neural nets on MATALB Answers lately. Someone (sadly I wasn't able to find the post again) mentioned to set the dividing funcion of the input data to ''. i.e.
NN = narxnet(0:5, 1:5, [10 10]); % creation of a narxnet
NN.divideFcn = ''; % usually I use 'divideblock' here
I get different results for NN.divideFcn = '' or NN.divideFcn = 'divideblock'.
My question is: How does this divideFcn behave. Or does this line of code lead to some default value for the divideFcn?
Thank you in advance for your answers.

Accepted Answer

Greg Heath
Greg Heath on 9 Dec 2015
In general you can specify
1. The type of data division
2. The trn/val/test ratios
If you don't specify anything, you will get the default of random data division with trn/val/test ratios 0.7/0.15/0.15.
If you specify ' ' or 'dividetrain', you will get no division i.e., 100/0/0.
If you only specify 'divideblock' the data will be divided into 3 solid blocks of trn/val/test with the default 0.7/0.15/0.15 ratios. However, you can also specify another set of block ratios. This is the datadivision I typically recommend for timeseries prediction.
The disappointing part of this thread is that you should have figured this out by
1. Reading the help and doc documentations for the
different datadivision options.
2. Demonstrating the options on a small data example.
For example,
input = 1:10; target = input.^2;
Hope this helps.
Thank you for formally accepting my answer
  4 Comments
Greg Heath
Greg Heath on 10 Dec 2015
Edited: Greg Heath on 4 Jan 2016
If you look at the figures in the help and doc documentation, you will see that
timedelaynet is trained with targets and external inputs; and
deployed with external inputs that generate outputs.
narnet is trained in the open-loop (OL) configuration with
targets replacing external inputs. It is deployed in the
closed-loop (CL) configuration with output feedback replacing
the open-loop target inputs.
narxnet is trained in the OL configuration with both external
inputs and target inputs. It is deployed with external inputs
and output feedback replacing OL target inputs.
Hope this helps.
Greg
bear96
bear96 on 1 Jan 2020
Hello, I was wondering if there is any way to obtain the testing/validation/training samples that have been specified by 'dividerand'?

Sign in to comment.

More Answers (0)

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!