NARX neural network - how to use different time series for train, validation and testing the network?

2 次查看(过去 30 天)
Dear Matlab experts, actually I'm using Deep Learning Toolbox to create a Narx network to predict the dynamic response of a part of an internal combustion engine. I'm using 'catsamples' to use different data acquisition for train the network whith a complete DoE, but I have a problem:
I would like to use all these acquisitions to train the network, and take a separate acquisition for validation and testing without using 'divideblock'. It's possible to do that?
Furthermore, I'm using 'trainlm' and 'divideblock' (80/10/10) to divide the dataset into train/validation/test data, but I have not understood how this division works with multiple acquisition (catsasamples).
I'd really appreciate anyone who can help me.
Federico

回答(1 个)

Vimal Rathod
Vimal Rathod 2020-2-28
Firstly, You can train the model without using divideblock and supply your own testing and validation data(It is not a compulsion). To answer your second question, "divideblock" divides the data into set of blocks of indices (which is serial not random). To generate take samples randomly you could use dividerand. You could use divideint to use interleaved indices for training,testing and validation.
  2 个评论
Cianetti Federico
Cianetti Federico 2020-2-28
Thanks Vimal for the answer,
I understand what you're saying but my question is just how to train the network without using divideblocks (or dividerand/ind), I would like to choose which time series are for training and which are for testing and validation.
To improve the performance of the NN i'm doing 2 steps of training, the first one in openloop and the second one in closed loop form, do you think it's a correct approach?
Thanks
Torsten K
Torsten K 2020-10-15
Hello Matlab-Experts,
I have the exact same problem. It is not clear to me how to split a collection of 100 different time series into a training set, a validation set and a test set without tearing the time series apart. That is, I want to use 70 out of 100 time series for training and another 15 out of 100 time series each for validation and testing. How can I program this in Matlab?
I would be very grateful if you could give me a hint!
Best regards
Torsten

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by