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(). Например, для данныхabcиxобъектPackedSequenceбудет содержать данныеaxbcсbatch_sizes=[2,1,1].- Переменные:
-
- data (Tensor) – Тензор, содержащий упакованную последовательность
- batch_sizes (Tensor) – Тензор целых чисел, содержащий сведения о размере пакета на каждом шаге последовательности
-
sorted_indices (Tensor, optional) – Тензор целых чисел, содержащий сведения о том, как этот объект
PackedSequenceсформирован из последовательностей. - unsorted_indices (Tensor, optional) – Тензор целых чисел, содержащий сведения о том, как восстановить исходные последовательности в правильном порядке.
- Тип возвращаемого значения:
-
Self
Примечание
dataможет находиться на произвольном устройстве и иметь произвольный тип данных.sorted_indicesиunsorted_indicesдолжны быть тензорамиtorch.int64на том же устройстве, что иdata.Однако
batch_sizesвсегда должен быть тензоромtorch.int64на CPU.Этот инвариант соблюдается во всём классе
PackedSequence, а также во всех функциях PyTorch, создающих объектPackedSequence(то есть они передают только тензоры, соответствующие этому ограничению).-
batch_sizes: Tensor -
Псевдоним поля с номером 1
-
count(value, /) -
Возвращает количество вхождений значения.
-
data: Tensor -
Псевдоним поля с номером 0
-
index(value, start=0, stop=9223372036854775807, /) -
Возвращает первый индекс значения.
Вызывает ValueError, если значение отсутствует.
-
property is_cuda: bool -
Возвращает True, если
self.dataхранится на GPU.
-
is_pinned()[исходный код] -
Возвращает True, если
self.dataхранится в закреплённой памяти.- Тип возвращаемого значения:
-
sorted_indices: Tensor | None -
Псевдоним поля с номером 2
-
to(*args, **kwargs)[исходный код] -
Преобразует тип данных и/или устройство для
self.data.Сигнатура этого метода аналогична сигнатуре
torch.Tensor.to()Примечание
Если
self.dataтензор уже имеет нужныеtorch.dtypeиtorch.device, возвращаетсяself. В противном случае возвращается копия с нужной конфигурацией.- Тип возвращаемого значения:
-
Self
-
unsorted_indices: Tensor | None -
Псевдоним поля с номером 3
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nn.utils.rnn.PackedSequence.html