當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python PyTorch as_strided用法及代碼示例

本文簡要介紹python語言中 torch.as_strided 的用法。

用法:

torch.as_strided(input, size, stride, storage_offset=0) → Tensor

參數

  • input(Tensor) -輸入張量。

  • size(tuple或者整數) -輸出張量的形狀

  • stride(tuple或者整數) -輸出張量的步幅

  • storage_offset(int,可選的) -輸出張量的基礎存儲中的偏移量

使用指定的 sizestridestorage_offset 創建現有 torch.Tensor input 的視圖。

警告

創建的張量的多個元素可能引用單個內存位置。因此,就地操作(尤其是矢量化的操作)可能會導致不正確的行為。如果您需要寫入張量,請先克隆它們。

許多返回張量視圖的 PyTorch 函數都是使用此函數在內部實現的。這些函數(例如 torch.Tensor.expand() )更易於閱讀,因此更建議使用。

例子:

>>> x = torch.randn(3, 3)
>>> x
tensor([[ 0.9039,  0.6291,  1.0795],
        [ 0.1586,  2.1939, -0.4900],
        [-0.1909, -0.7503,  1.9355]])
>>> t = torch.as_strided(x, (2, 2), (1, 2))
>>> t
tensor([[0.9039, 1.0795],
        [0.6291, 0.1586]])
>>> t = torch.as_strided(x, (2, 2), (1, 2), 1)
tensor([[0.6291, 0.1586],
        [1.0795, 2.1939]])

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.as_strided。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。