快捷方式

torch.empty_strided

torch.empty_strided(size, stride, *, dtype=None, layout=None, device=None, requires_grad=False, pin_memory=False) Tensor

建立一個具有指定 sizestride 的張量,並以未定義的資料填充。

警告

如果建構的張量是「重疊的」(多個索引指向記憶體中的同一個元素),則其行為是未定義的。

注意

如果 torch.use_deterministic_algorithms()torch.utils.deterministic.fill_uninitialized_memory 皆設定為 True,則會初始化輸出張量,以防止因使用該資料作為運算的輸入而產生的任何可能的非決定性行為。浮點數和複數張量會以 NaN 填充,而整數張量會以最大值填充。

參數
  • size (tuple of int) – 輸出張量的形狀。

  • stride (tuple of int) – 輸出張量的步幅。

關鍵字參數
  • dtype (torch.dtype, optional) – 欲返回張量的資料型態。預設值:如果 None,則使用全域預設值(請參閱 torch.set_default_dtype())。

  • layout (torch.layout, optional) – 欲返回張量的佈局。預設值:torch.strided

  • device (torch.device, optional) – 欲返回張量的裝置。預設值:如果 None,則使用預設張量類型的當前裝置(請參閱 torch.set_default_device())。對於 CPU 張量類型,device 將為 CPU,對於 CUDA 張量類型,則為當前的 CUDA 裝置。

  • requires_grad (bool, optional) – 如果 autograd 應該記錄在返回的張量上的操作。預設值:False

  • pin_memory (bool, optional) – 如果設定,返回的張量將被分配在鎖頁記憶體中。僅適用於 CPU 張量。預設值:False

範例

>>> a = torch.empty_strided((2, 3), (1, 2))
>>> a
tensor([[8.9683e-44, 4.4842e-44, 5.1239e+07],
        [0.0000e+00, 0.0000e+00, 3.0705e-41]])
>>> a.stride()
(1, 2)
>>> a.size()
torch.Size([2, 3])

文件

存取 PyTorch 的完整開發人員文件

檢視文件

教學

取得針對初學者和進階開發人員的深入教學

檢視教學

資源

尋找開發資源並獲得您的問題解答

檢視資源