I am trying to workout some inputs and outputs for an LSTM model and I want to make sure I am understanding a few things, because I am having a hard time troubleshooting.
Is “batch_size” as it pertains to the LSTM model, the same “batch_size” we talk about with DataLoader?
Example:
I have a set of data that is 2000 rows and 30495 columns. I have a Dataset that hands these out as 28 rows x 30495 columns at a time (2 weeks data, each row is a day). Basically my dataset is just “rolling” forward to give out the next 28 days each time. But the end result is the Dataloader is receiving data of 28x30495. I have the Dataloader set to “batch_size” of 20.
So with LSTM there is some terminology I am trying to make sure is straight. The actual data being passed into the model is data torch.Size([20, 28, 30495])
. I set “batch_first=True”, since I am assuming that my batch_size from my Dataloader of 20, is the same “batch_size” LSTM is referring to and since that is first in my object, I set it.
Now in my example, input_size is 30495 correct? What about seq_length, would that be 28 (28 rows in each object)?
I appreciate any help on this, I think once I can get some of these things straight I can make progress.