分類

展開全部 | 收合全部

分類

展開全部 | 收合全部

【Pytorch】tensor.unsqueeze() – tensor 增加維度的方法

前言

在機器學習的領域中,我們經常用的資料格式就是 tensor,
有時為了格式對齊,我們需要增加維度。

  • 常見使用地方:讀取時因為一層一層拆開後,要拼回去原來的資料型態 (shape)

範例程式碼

我們能使用 「.unsqueeze()」 來增加 tensor 維度,下面範例程式碼。

import torch
a = torch.tensor([1, 2])

print(a)
print(a.shape)
print(a.unsqueeze(0))
print(a.unsqueeze(0).shape)
print(a.unsqueeze(0)[0][0])
print(a.unsqueeze(0)[0][1])
print(a.unsqueeze(1))
print(a.unsqueeze(1).shape)
print(a.unsqueeze(1)[0][0])
print(a.unsqueeze(1)[1][0])
  • 結果與說明

原先 a 的維度是一維兩個值 [2]

  • 後來經過 a.unsqueeze(0),多了「第 0 維」變成二維
    • a[0][0] = 1
    • a[0][1] = 2
    • a[1][0] = error
  • 經過 a.unsqueeze(1),多了「第 1 維」變成二維
    • a[0][0] = 1
    • a[1][0] = 2
    • a[0][1] = error

Howard Weng
Howard Weng

我是 Howard Weng,很多人叫我嗡嗡。這個網站放了我的各種筆記。希望這些筆記也能順便幫助到有需要的人們!如果文章有幫助到你的話,歡迎幫我點讚哦!
另外,因為定位是「個人的隨手筆記」,有些文章內容「⚠️可能我理解有誤⚠️」或「?只寫到一半?」,如果有發現這樣的情況,歡迎在該文章的最下面留言提醒我!我會儘快修正或補上!感謝大家的建議與幫忙,讓網站能變得更好?

文章: 883