首先,view( ) 是對(duì) PyTorch 中的 Tensor 操作的,若非 Tensor 類型,可使用 data = torch.tensor(data)來進(jìn)行轉(zhuǎn)換。
(1) 作用:該函數(shù)返回一個(gè)有相同數(shù)據(jù)但不同維度大小的 Tensor。也就是說該函數(shù)的功能是改變矩陣維度,相當(dāng)于 Numpy 中的 resize() 或者 Tensorflow 中的 reshape() 。
(2) 參數(shù):view( *args )
import torch
x = torch.randn(6, 6)
print(x.size())
y = x.view(36)
print(y.size())
z = x.view(-1, 9) # -1表示該維度取決于其它維度大小,即(6*6)/ 9
print(z.size())
m = x.view(3, 3, 4) # 也可以變?yōu)楦嗑S度
print(m.size())
輸出:
torch.Size([6, 6])
torch.Size([36])
torch.Size([4, 9])
torch.Size([3, 3, 4])
特殊用法view(-1)文章來源:http://www.zghlxwxcb.cn/news/detail-845880.html
若需要轉(zhuǎn)換維度為一維,有一種簡(jiǎn)單的方式,即將參數(shù)設(shè)置為 -1文章來源地址http://www.zghlxwxcb.cn/news/detail-845880.html
import torch
a = torch.Tensor([[1, 2, 3], [4, 5, 6],[7,8,9]]) # 定義一個(gè) 2*3 的 Tensor
a = a.view(-1)
print(a)
輸出:
tensor([1., 2., 3., 4., 5., 6., 7., 8., 9.])
到了這里,關(guān)于PyTorch中view()函數(shù)用法說明的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!