Pytroch中的view()&viewas()函數

view()

參數及返回值
view(*shape) → Tensor

功能
返回一個與原Tensor內容,元素數量也相同但是形狀不同的Tensor。

舉例

# 將(1, 6)尺寸的Tensor轉換爲尺寸爲(3, 2)
>>> import torch
>>> tt1=torch.tensor([-0.3623, -0.6115,  0.7283,  0.4699,  2.3261,  0.1599])
>>> tt2=tt1.view(3,2)
>>> tt2
tensor([[-0.3623, -0.6115],
        [ 0.7283,  0.4699],
        [ 2.3261,  0.1599]])
        
# 將(3, 2)尺寸的Tensor轉換爲尺寸爲(2, x), -1 表示做自適應性調整,
# 如果參數只有一個-1,則表示Tensor的第一維的維度默認爲1
>>> tt3=tt2.view(2,-1)
>>> tt3
tensor([[-0.3623, -0.6115,  0.7283],
        [ 0.4699,  2.3261,  0.1599]])

viewas(ExampleTensor)

功能
將原Tensor的Siz轉換成ExampleTensor的Size。
舉例

# 接上面
>>> tt4=tt2.viewas(tt1)
>>> tt4
tensor([-0.3623, -0.6115,  0.7283,  0.4699,  2.3261,  0.1599])

參考資料
官網解讀
Pytorch-view的用法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章