image = transform(image).unsqueeze(0)
這個unsqueeze(0),感覺就僅僅在在最外層增加了一個維度,有什么意義嗎?
unsqueeze()這個函數主要是對數據維度進行擴充。給指定位置加上維數為一的維度,比如原本有個三行的數據(3),unsqueeze(0)后就會在0的位置加了一維就變成一行三列(1,3)。
torch.squeeze(input, dim=None, out=None)
:去除那些維度大小為1的維度
torch.unbind(tensor, dim=0)
:去除某個維度
torch.unsqueeze(input, dim, out=None)
:在指定位置添加維度。
unsqueeze主要起到升維的作用,后續圖像處理可以更好地進行批操作
這是應該是因為網絡的接收輸入是一個mini-batch,image unsqueeze后第一個維度是留給batch size的