評價此頁

torch.Tensor.resize_#

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

self 張量的大小調整為指定的尺寸。如果元素數量大於當前儲存大小,則會調整底層儲存以適應新的元素數量。如果元素數量較小,則不會更改底層儲存。現有元素會被保留,但任何新分配的記憶體都將是未初始化的。

警告

這是一個底層方法。儲存將被重新解釋為 C 連續的,忽略當前的 strides(除非目標尺寸等於當前尺寸,此時張量將保持不變)。在大多數情況下,您將需要使用 view()(它會檢查連續性),或者 reshape()(如果需要會複製資料)。要使用自定義 strides 就地更改大小,請參閱 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]])