torch.as_strided¶
- torch.as_strided(input, size, stride, storage_offset=None) Tensor ¶
使用指定的 torch.Tensor
input
建立視圖size
、stride
和storage_offset
。警告
建議使用其他檢視函式,例如
torch.Tensor.expand()
,來設定檢視的步幅,而不是手動使用 as_strided。因為此函式的行為取決於 tensor 儲存的實作方式。建構的儲存檢視必須僅參考儲存內的元素,否則會拋出 runtime 錯誤。如果檢視是「重疊的」(多個索引指向記憶體中的同一個元素),其行為是未定義的。- 參數
範例
>>> 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]])