Copy
tensorplay.nn.utils.rnn.pad_sequence
- tensorplay.nn.utils.rnn.pad_sequence(sequences, batch_first: bool = False, padding_value: float = 0.0, padding_side: str = 'right') TensorBase[source]
Pad a list of variable length Tensors with
padding_value.pad_sequencestacks a list of Tensors along a new dimension, and pads them to equal length.sequencescan be list of sequences with sizeL x *, where L is length of the sequence and*is any number of dimensions (including0). Ifbatch_firstisFalse, the output is of sizeT x B x *, andB x T x *otherwise, whereBis the batch size (the number of elements insequences`),Tis the length of the longest sequence.Example
>>> from tensorplay.nn.utils.rnn import pad_sequence >>> a = tp.ones(25, 300) >>> b = tp.ones(22, 300) >>> c = tp.ones(15, 300) >>> pad_sequence([a, b, c]).size() tensorplay.Size([25, 3, 300])
Note
This function returns a Tensor of size
T x B x *orB x T x *where T is the length of the longest sequence. This function assumes trailing dimensions and type of all the Tensors in sequences are same.- Parameters:
sequences (list[Tensor]) – list of variable length sequences.
batch_first (bool, optional) – if
True, the output will be inB x T x *format,T x B x *otherwise. Default:False.padding_value (float, optional) – value for padded elements. Default:
0.padding_side (str, optional) – the side to pad the sequences on. Default:
'right'.
- Returns:
Tensor of size
T x B x *ifbatch_firstisFalse. Tensor of sizeB x T x *otherwise
Help improve this page
Found an error, an unclear step, or a missing example?
