MATLAB: Matlab trainNetwork mini-batch size

deep learninglstmMATLABminibatchneural networks

I am using a LSTM neural network(trainNetwork function) for a 2 time series input and a 30 time series output. When i change the minibatch size, in the output window during training the iteration number is constant and equal to the epoch number, whatever the minibatch size. Is the minibatch size really changing or just being equaly to the number of timesteps? I input my data as matrices, with rows corresponding to different outputs/inputs and columns corresponding to timesteps. Thank you in advance

Best Answer

If I understand correctly, you expect the 'miniBatchSize' to create the batches along the time dimension. But this is not what 'miniBatchSize' does. 'MiniBatchSize' creates batches in the observation dimension, not the time dimension. To create batches in the time dimension, you can use the 'SequenceLength' parameter.The default 'SequenceLength' parameter is ‘longest’, which means that the batch sequence length is determined by the longest sequence in the batch.