评价此页

torch.Tensor.resize_#

Tensor.resize_(*sizes, memory_format=torch.contiguous_format) Tensor#

self 张量的大小调整为指定大小。如果元素数量大于当前存储大小,则底层存储将调整到适合新的元素数量。如果元素数量较小,则底层存储不会改变。现有元素将被保留,但任何新内存都将是未初始化的。

警告

这是一个低级方法。存储将被重新解释为 C 连续的,忽略当前的跨度(除非目标大小与当前大小匹配,在这种情况下,张量将保持不变)。对于大多数用途,您将改用 view(),它会检查连续性,或者 reshape(),它会在需要时复制数据。要使用自定义跨度原地更改大小,请参见 set_()

注意

如果同时设置了 torch.use_deterministic_algorithms()torch.utils.deterministic.fill_uninitialized_memoryTrue,则新元素将被初始化以防止使用结果作为操作的输入时出现非确定性行为。浮点数和复数值将设置为 NaN,整数值将设置为最大值。

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

  • memory_format (torch.memory_format, optional) – 张量的所需内存格式。默认为 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]])