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.Size 或 int...) – 所需的大小
-
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]])