torch.Tensor.resize_

resize_(*sizes, memory_format=torch.contiguous_format) 张量

self 张量调整为指定的大小。如果元素数量大于当前存储容量,则会调整底层存储以适应新元素的数量。如果元素数量较少,则不会改变底层存储。现有的元素会被保留,但新增加的内存是未初始化的。

警告

这是一个低级别的方法。存储会被重新解释为C连续格式,忽略当前的步长(除非目标大小与当前大小相同,在这种情况下张量将保持不变)。对于大多数情况,你可能希望使用view()方法来检查是否是连续的,或者使用reshape()方法在需要时复制数据。要以自定义步长的方式就地更改大小,请参见set_()

注意

如果torch.use_deterministic_algorithms()torch.utils.deterministic.fill_uninitialized_memory 都被设置为 True,新的元素会被初始化以避免非确定性行为。浮点数和复数值将被设置为 NaN,整数值将被设置为最大值。

参数
  • sizes (torch.Sizeint...) – 所需的大小

  • memory_format (torch.memory_format, 可选) – 张量的所需内存格式,默认为 torch.contiguous_format。需要注意的是,如果 self.size()sizes 匹配,则不会改变 self 的内存格式。

示例:

>>> x = torch.tensor([[1, 2], [3, 4], [5, 6]])
>>> x.resize_(2, 2)
tensor([[ 1,  2],
        [ 3,  4]])
本页目录