亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

view和view_as怎么在Pytorch中使用

發布時間:2021-03-22 16:58:07 來源:億速云 閱讀:237 作者:Leah 欄目:開發技術

view和view_as怎么在Pytorch中使用?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

view()函數是在torch.Tensor.view()下的一個函數,可以有tensor調用,也可以有variable調用。

其作用在于返回和原tensor數據個數相同,但size不同的tensor

【Numpy中的size是元素個數,但是在Pytorch中size等價為Numpy中的shape】

view函數的-1參數的作用在于基于另一參數,自動計算該維度的大小

很重要的一點

view函數只能由于contiguous的張量上,具體而言,就是在內存中連續存儲的張量。

具體而言,可以參看 https://www.jb51.net/article/177564.htm

所以,當tensor之前調用了transpose, permute函數就會是tensor內存中變得不再連續,就不能調用view函數。

所以,應該提前做tensor.contiguous()的操作

view函數與Pytorch0.4中新增的reshape的區別

reshape函數調用是不依賴于tensor在內存中是不是連續的。

reshape ≈ tensor.contiguous().view

代碼

import numpy as np
import torch
from torch.autograd import Variable
 
x = torch.Tensor(2,2,2)
print(x)
 
y = x.view(1,8)
print(y)
 
z = x.view(-1,4) # the size -1 is inferred from other dimensions
print(z)
 
t = x.view(8)
print(t)

輸出

tensor([[[1.3712e-14, 6.4069e+02],
   [4.3066e+21, 1.1824e+22]],

  [[4.3066e+21, 6.3828e+28],
   [3.8016e-39, 0.0000e+00]]])

#x.view(1,8)生成的是[1,8]的張量
tensor([[1.3712e-14, 6.4069e+02, 4.3066e+21, 1.1824e+22, 4.3066e+21, 6.3828e+28,
   3.8016e-39, 0.0000e+00]])

#x.view(-1,4)其中-1是在4下的另一個維度的大小,也就是8/4=2,所以生成的是[2,4]的張量
tensor([[1.3712e-14, 6.4069e+02, 4.3066e+21, 1.1824e+22],
  [4.3066e+21, 6.3828e+28, 3.8016e-39, 0.0000e+00]])

x.view(8)生成的是[8,]的張量,是個數組
tensor([1.3712e-14, 6.4069e+02, 4.3066e+21, 1.1824e+22, 4.3066e+21, 6.3828e+28,
  3.8016e-39, 0.0000e+00])

view_as

返回被視作與給定的tensor相同大小的原tensor。 等效于:

self.view(tensor.size())

具體用法為:

代碼

a = torch.Tensor(2, 4)
b = a.view_as(torch.Tensor(4, 2))
print (b)

輸出

tensor([[1.3712e-14, 6.4069e+02],
  [4.3066e+21, 1.1824e+22],
  [4.3066e+21, 6.3828e+28],
  [3.8016e-39, 0.0000e+00]])

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

荥经县| 凤翔县| 温宿县| 河津市| 铜山县| 翁牛特旗| 乡宁县| 都昌县| 任丘市| 陇川县| 尉氏县| 南投市| 乐平市| 荣成市| 晴隆县| 华亭县| 绍兴市| 南召县| 隆昌县| 德阳市| 南丹县| 桂东县| 于都县| 汶上县| 舒兰市| 手游| 扶风县| 天峨县| 黑河市| 内丘县| 和硕县| 嘉黎县| 桐城市| 双江| 咸宁市| 乌海市| 阆中市| 长岭县| 南投市| 巴彦淖尔市| 正镶白旗|