评价此页

torch.Tensor.unfold#

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

返回一个原始张量的视图,该视图包含在 dimension 维度上从 self 张量展开的、大小为 size 的所有切片。

两个切片之间的步长由 step 指定。

如果 sizedimselfdimension 维度的大小,那么返回张量中 dimension 维度的尺寸将是 (sizedim - size) / step + 1

返回的张量中会追加一个大小为 size 的额外维度。

参数
  • dimension (int) – 展开操作发生的维度

  • size (int) – 被展开的每个切片的大小

  • step (int) – 每个切片之间的步长

示例

>>> 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.]])