torch.Tensor.unfold — PyTorch 2.7 documentation (original) (raw)

Tensor.unfold(dimension, size, step) → Tensor

Returns a view of the original tensor which contains all slices of size size fromself tensor in the dimension dimension.

Step between two slices is given by step.

If sizedim is the size of dimension dimension for self, the size of dimension dimension in the returned tensor will be(sizedim - size) / step + 1.

An additional dimension of size size is appended in the returned tensor.

Parameters

Example:

x = torch.arange(1., 8) x tensor([ 1., 2., 3., 4., 5., 6., 7.]) x.unfold(0, 2, 1) tensor([[ 1., 2.], [ 2., 3.], [ 3., 4.], [ 4., 5.], [ 5., 6.], [ 6., 7.]]) x.unfold(0, 2, 2) tensor([[ 1., 2.], [ 3., 4.], [ 5., 6.]])