捷徑

torch.nn.utils.rnn.pack_sequence

torch.nn.utils.rnn.pack_sequence(sequences, enforce_sorted=True)[原始碼][原始碼]

將變長 Tensor 的列表打包。

連續呼叫以下函式:pad_sequence, pack_padded_sequence

sequences 應該是一個 Tensor 列表,其大小為 L x *,其中 L 是一個序列的長度,而 * 是任何數量的尾隨維度,包括零。

對於未排序的序列,請使用 enforce_sorted = False。 如果 enforce_sortedTrue,則序列應按長度遞減的順序排序。 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 (list[Tensor]) – 長度遞減的序列的列表。

  • enforce_sorted (bool, optional) – 如果 True,則檢查輸入是否包含按長度降序排序的序列。 如果 False,則不檢查此條件。 預設值:True

返回

一個 PackedSequence 物件

返回類型

PackedSequence

文件

取得 PyTorch 的完整開發者文件

檢視文件

教學

取得針對初學者和進階開發人員的深入教學

檢視教學

資源

尋找開發資源並獲得您的問題解答

檢視資源