torch.chunk

torch.chunk(input, chunks, dim=0) Tensors 列表

尝试将张量分割成指定数量的部分。每一部分都是输入张量的一个视图。

注意

此函数返回的块数量可能少于预期的数量!

参见

torch.tensor_split() 是一个始终返回指定数量块的函数

如果张量在给定维度 dim 上的大小可以被 chunks 整除,则所有返回的块将会是相同的大小。如果不能整除,则除了最后一个块之外,其他所有的块都会是相同的大小。如果这样的划分无法实现,此函数可能会返回少于指定数量的块。

参数
  • input (Tensor) – 需要进行拆分的张量

  • chunks (int) – 指定要返回的块的数量

  • dim (int) - 拆分张量的维度

示例

>>> torch.arange(11).chunk(6)
(tensor([0, 1]),
 tensor([2, 3]),
 tensor([4, 5]),
 tensor([6, 7]),
 tensor([8, 9]),
 tensor([10]))
>>> torch.arange(12).chunk(6)
(tensor([0, 1]),
 tensor([2, 3]),
 tensor([4, 5]),
 tensor([6, 7]),
 tensor([8, 9]),
 tensor([10, 11]))
>>> torch.arange(13).chunk(6)
(tensor([0, 1, 2]),
 tensor([3, 4, 5]),
 tensor([6, 7, 8]),
 tensor([ 9, 10, 11]),
 tensor([12]))
本页目录