找不到 PyTorch 存储桶迭代器

问题描述

BucketIterator 在 torchtext 0.9 中的 torchtext.data 下不再可用。是否已删除或更改其位置?

解决方法

随着 torchtext 0.9 的发布,引入了一些向后不兼容的更改(请参阅更改日志 here)。其中,您会看到:

[...] 遗留组件放置在 torchtext.legacy.data 文件夹中,如下所示:

  • torchtext.data.Pipeline -> torchtext.legacy.data.Pipeline
  • torchtext.data.Batch -> torchtext.legacy.data.Batch
  • torchtext.data.Example -> torchtext.legacy.data.Example
  • torchtext.data.Field -> torchtext.legacy.data.Field
  • torchtext.data.Iterator -> torchtext.legacy.data.Iterator
  • torchtext.data.Dataset -> torchtext.legacy.data.Dataset

这意味着,所有功能仍然可用,但在 torchtext.legacy 内而不是 torchtext。

因此,要访问 BucketIterator,您现在需要像这样导入它:

from torchtext.legacy.data import BucketIterator