torch.Tensor.unfold

Tensor.unfold(dimension, size, step) Tensor

返回原始张量的一个视图,包含从 self 张量在维度 dimension 上所有大小为 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.]])
本页目录