火炬文本将令牌按相同的顺序保存



我有一个seq2seq神经网络,用于翻译文本。我需要句子在批处理过程中保持不变,更准确地说,句子应该像一个不可分割的标记块。但是,看起来Torchtext提供的迭代器(BucketIterator和Iterator(不保留令牌的初始顺序。除了编写我自己的填充和批处理函数之外,有没有解决方案?

IteratorBucketIterator都应该保持标记的顺序,只打乱数据集中的句子。

您的输入张量很可能形状不正确。火炬文本中的默认形状为:length×batch_size×features。如果你先有批次,第二个序列长度,你的句子就会被打乱。

最新更新