假设RNN中的输入为2528,2是batchsize可以理解为有几句话,5是timestep可以理解为有几个词,28是vocab_size。如下就是两个句子,每个句子由5个单词组成。28则为每个单词的词向量,在此略去。
在输入的时候,首先需进行 X = F.one_hot(X.T, self.vocab_size).type(torch.float32)
,其中X.T将输入为2528的转变为5228,将时间步转变为第一个维度。因为我们只要在时间的维度上,才能观察到以前的信息。我们可以每次竖着观察,就是以时间步为第一维度。