Spec-Zone.ru › PyTorch 2

torch.nn.utils.rnn.pack_sequence

torch.nn.utils.rnn.pack_sequence(sequences, enforce_sorted=True) [source]

Упаковывает список тензоров переменной длины

Последовательное выполнение следующих функций: pad_sequence, pack_padded_sequence.

sequences должен быть списком тензоров размера L x *, где L — длина последовательности, а * — любое количество последующих измерений, включая ноль.

Для неупорядоченных последовательностей используйте enforce_sorted = False. Если enforce_sorted равно True, последовательности должны быть отсортированы в порядке убывания длины. enforce_sorted = True необходимо только для экспорта в ONNX.

Пример

>>> from torch.nn.utils.rnn import pack_sequence
>>> a = torch.tensor([1, 2, 3])
>>> b = torch.tensor([4, 5])
>>> c = torch.tensor([6])
>>> pack_sequence([a, b, c])
PackedSequence(data=tensor([1, 4, 6, 2, 5, 3]), batch_sizes=tensor([3, 2, 1]), sorted_indices=None, unsorted_indices=None)
Параметры
  • sequences (список[Тензор]) – Список последовательностей убывающей длины.
  • enforce_sorted (bool, необязательно) – если True, проверяет, что вход содержит последовательности, отсортированные по длине в порядке убывания. Если False, это условие не проверяется. По умолчанию: True.
Возвращает

объект PackedSequence

Тип возвращаемого значения

PackedSequence

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.utils.rnn.pack_sequence.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API