Mini batch size for SeriesNetwork
3 次查看(过去 30 天)
显示 更早的评论
Hi!
I have got some issue, it seems that miniBatchSize does not divide my training data into batches, whole matrix of 2e6x15 goes though training per one iteration. I can see in options function that miniBatchSize gets a value, tried everything from 2 to 1M. Thank you for your answers :)
2 个评论
Maria Duarte Rosa
2019-8-5
Hi Maxim, can you provide more details on what made you conclude that the whole matrix 2e6x15 goes through training per one iteration?
采纳的回答
Maria Duarte Rosa
2019-8-6
Hi Maxim,
Thanks for providing more details.
If your data is in a D x S matrix format (D being 2e6 and S being 15) MATLAB assumes that this is a single observation problem with 15 time-series each being 2e6 points long. For each epoch, we have only 1 iteration and so the mini-batch size option is ignored because it doesn't apply to just 1 observation.
If you'd like to break the time-series into smaller chuncks of data that are treated as different observations, you can do that using the sequenceLength parameter in trainingOptions, by providing a positive integer with the desired sequence length:
Depending on how many smaller sequences this generates then the mini-batch size parameter can be used to control de size of the mini-batches as you would expect.
If you'd like to input more than one observation (each observation being D x S, i.e. D data points and S time-series) then it's better to use N x 1 cell arrays (each cell containing a D x S matrix), where N is the number of observations. Please see here for more information:
I hope this helps.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!