快捷方式

PackedSequence

class torch.nn.utils.rnn.PackedSequence(data, batch_sizes=None, sorted_indices=None, unsorted_indices=None)[源代码][源代码]

保存打包序列的数据和 batch_sizes 列表。

所有 RNN 模块都接受打包序列作为输入。

注意

不应手动创建此类的实例。它们旨在由诸如 pack_padded_sequence() 之类的函数实例化。

批次大小表示批次中每个序列步骤的元素数量,而不是传递给 pack_padded_sequence() 的不同序列长度。例如,给定数据 abcxPackedSequence 将包含数据 axbc,其中 batch_sizes=[2,1,1]

变量
  • data (Tensor) – 包含打包序列的张量

  • batch_sizes (Tensor) – 整数张量,包含有关每个序列步骤的批次大小的信息

  • sorted_indices (Tensor, 可选) – 整数张量,包含有关如何从序列构造此 PackedSequence 的信息。

  • unsorted_indices (Tensor, 可选) – 整数张量,包含有关如何恢复具有正确顺序的原始序列的信息。

返回类型

Self

注意

data 可以在任意设备上并且具有任意 dtype。sorted_indicesunsorted_indices 必须是 torch.int64 张量,并且与 data 在同一设备上。

但是,batch_sizes 应该始终是 CPU torch.int64 张量。

此不变性贯穿 PackedSequence 类,以及 PyTorch 中构造 PackedSequence 的所有函数(即,它们仅传入符合此约束的张量)。

batch_sizes: Tensor

字段编号 1 的别名

count(value, /)

返回值的出现次数。

data: Tensor

字段编号 0 的别名

index(value, start=0, stop=9223372036854775807, /)

返回值的第一个索引。

如果值不存在,则引发 ValueError。

property is_cuda: bool

如果 self.data 存储在 gpu 上,则返回 true。

is_pinned()[源代码][源代码]

如果 self.data 存储在固定内存中,则返回 true。

返回类型

bool

sorted_indices: Optional[Tensor]

字段编号 2 的别名

to(dtype: dtype, non_blocking: bool = ..., copy: bool = ...) Self[源代码][源代码]
to(device: Optional[Union[str, device, int]] = ..., dtype: Optional[dtype] = ..., non_blocking: bool = ..., copy: bool = ...) Self
to(other: Tensor, non_blocking: bool = ..., copy: bool = ...) Self

self.data 执行 dtype 和/或设备转换。

它具有与 torch.Tensor.to() 类似的签名,只是像 non_blockingcopy 这样的可选参数应作为 kwargs 传递,而不是 args,否则它们将不适用于索引张量。

注意

如果 self.data 张量已经具有正确的 torch.dtypetorch.device,则返回 self。否则,返回具有所需配置的副本。

unsorted_indices: Optional[Tensor]

字段编号 3 的别名

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得您的问题解答

查看资源