Torchtext хранит токены в том же порядке - PullRequest
0 голосов
/ 08 февраля 2020

У меня есть нейронная сеть seq2seq, которую я использую для перевода текста. Мне нужно, чтобы предложения оставались неизменными во время партий, точнее, предложение должно быть как неразделимый блок токенов. Однако, похоже, что итераторы, предоставляемые Torchtext (BucketIterator и Iterator), не сохраняют начальный порядок токенов. Есть ли решение для этого, кроме написания моих собственных функций заполнения и пакетирования?

1 Ответ

0 голосов
/ 10 февраля 2020

И Iterator, и BucketIterator должны сохранять порядок токенов и только перетасовывать предложения в наборе данных.

Скорее всего, ваши входные тензоры имеют неправильную форму. Фигуры по умолчанию в TorchText: length × batch_size × features. Если у вас первая партия, а вторая - вторая, ваши предложения перетасовываются.

...