快捷方式

PackedSequence

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

保存 packed sequence 的 data 和 batch_sizes 列表。

所有 RNN 模块都接受 packed sequences 作为输入。

注意

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

Batch sizes 表示 batch 中每个序列步骤的元素数量,而不是传递给 pack_padded_sequence() 的变化序列长度。例如,给定数据 abcxPackedSequence 将包含数据 axbcbatch_sizes=[2,1,1]

变量
  • data (Tensor) – 包含 packed sequence 的 Tensor

  • batch_sizes (Tensor) – 包含每个序列步骤 batch 大小信息的整数 Tensor

  • sorted_indices (Tensor, 可选) – 包含此 PackedSequence 如何由序列构建而来的整数 Tensor。

  • unsorted_indices (Tensor, 可选) – 包含如何以正确顺序恢复原始序列的整数 Tensor。

返回类型

Self

注意

data 可以位于任意设备上并具有任意 dtype。sorted_indicesunsorted_indices 必须是与 data 相同设备上的 torch.int64 张量。

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

此不变量在整个 PackedSequence 类中保持,并且在 PyTorch 中构建 PackedSequence 的所有函数(即,它们仅传递符合此约束的张量)中也保持。

batch_sizes: Tensor

字段编号 1 的别名

count(value, /)

返回 value 出现的次数。

data: Tensor

字段编号 0 的别名

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

返回 value 第一次出现的索引。

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

property is_cuda: bool

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

is_pinned()[source][source]

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

返回类型

bool

sorted_indices: Optional[Tensor]

字段编号 2 的别名

to(dtype: dtype, non_blocking: bool = ..., copy: bool = ...) Self[source][source]
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 的全面开发者文档

查看文档

教程

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

查看教程

资源

查找开发资源并获取问题解答

查看资源