日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

squeeze()和unsqueeze()

發布時間:2024/1/18 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 squeeze()和unsqueeze() 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • torch.squeeze()
    兩種用法:一種直接a.squeeze();另一種torch.squeeze(a)
    • 這個函數主要對數據的維度進行壓縮,去掉維數為1的的維度,比如是一行或者一列這種,一個一行三列(1,3)的數去掉只有一個元素的維度之后就變成(3)行。squeeze(a)就是將a中所有為1的維度刪掉。不為1的維度沒有影響。a.squeeze(N) 就是去掉a中指定的維數為一的維度。還有一種形式就是b=torch.squeeze(a,N) a中去掉指定的定的維數為一的維度。
a = torch.ones(2,3) a Out[3]: tensor([[1., 1., 1.],[1., 1., 1.]]) a.dim() Out[5]: 2 torch.squeeze(a) # 沒有元素數量為1的維度,所以不變 Out[6]: tensor([[1., 1., 1.],[1., 1., 1.]]) torch.squeeze(a).size() Out[8]: torch.Size([2, 3]) a = torch.ones(1,3) a Out[10]: tensor([[1., 1., 1.]]) a = torch.squeeze(a) # 第0維度只有一個元素, a Out[14]: tensor([1., 1., 1.]) a.size() Out[16]: torch.Size([3]) # a.size()和a.shape效果一樣 a.shape Out[17]: torch.Size([3])
  • torch.squeeze(input, dim = None, out = None) 返回一個tensor,當dim不設值時,去掉輸入的tensor的所有維度為1的維度; 當dim為某一整數(0<=dim<input.dim())時,判斷dim維的維度是否為1,若是則去掉,否則不變。
    另外,當input是一維的時候,squeeze不變
>>> x = torch.zeros(1,1,2,1,3) >>> x.dim() 5 >>> torch.squeeze(x).size()#去掉dim=1的維度 torch.Size([2, 3]) >>> torch.squeeze(x,0).size() # dim=0表示第一維,且第一維的維度為1,所以去掉 torch.Size([1, 2, 1, 3]) >>> torch.squeeze(x,3).size() torch.Size([1, 1, 2, 3]) >>> torch.squeeze(x,2).size() # dim=2,第三維的維度為2!=1,所以不變 torch.Size([1, 1, 2, 1, 3])
  • torch.unsqueeze()
    • torch.unqueeze(input, dim, out=None): 和squeeze作用相反,unsqueeze()在dim維插入一個維度為1的維,例如原來x是n×m維的,torch.unqueeze(x,0)這返回1×n×m的tensor
    • 這個函數主要是對數據維度進行擴充。給指定位置加上維數為一的維度,比如原本有個三行的數據(3),在0的位置加了一維就變成一行三列(1,3)。a.unsqueeze(N) 就是在a中N維處加上一個維數為1的維度。還有一種形式就是b=torch.unsqueeze(a,N) a就是在a中指定位置N加上一個維數為1的維度
# 輸入的shape為 [3,224,224] img_tensor.unsqueeze_(0) img_tensor.shape # torch.Size([1, 3, 224, 224]) a Out[15]: tensor([1., 1., 1.]) a.unsqueeze_(0) Out[18]: tensor([[1., 1., 1.]])

總結

以上是生活随笔為你收集整理的squeeze()和unsqueeze()的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。