快捷方式

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) – 如果設定,返回的張量將分配在 pinned memory 中。僅適用於 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 全面的開發者文件

檢視文件

教程

獲取針對初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源