PyTorch中permute的基本用法示例
permute(dims)
將tensor的維度換位。
參數(shù):參數(shù)是一系列的整數(shù),代表原來張量的維度。比如三維就有0,1,2這些dimension。
例:
import torch import numpy ? ?as np a=np.array([[[1,2,3],[4,5,6]]]) unpermuted=torch.tensor(a) print(unpermuted.size()) ?# ?——> ?torch.Size([1, 2, 3]) permuted=unpermuted.permute(2,0,1) print(permuted.size()) ? ? # ?——> ?torch.Size([3, 1, 2])
再比如圖片img的size比如是(28,28,3)就可以利用img.permute(2,0,1)得到一個size為(3,28,28)的tensor。
利用這個函數(shù)permute(0,2,1)可以把Tensor([[[1,2,3],[4,5,6]]]) 轉換成
tensor([[[1., 4.], [2., 5.], [3., 6.]]])
如果使用view,可以得到
tensor([[[1., 2.], [3., 4.], [5., 6.]]])
關于view的用法:參見PyTorch中view的用法
附:permute(多維數(shù)組,[維數(shù)的組合])
比如:
a=rand(2,3,4); %這是一個三維數(shù)組,各維的長度分別為:2,3,4
%現(xiàn)在交換第一維和第二維:
permute(A,[2,1,3]) %變成3*2*4的矩陣
import torch import numpy as np a=np.array([[[1,2,3],[4,5,6]]]) unpermuted=torch.tensor(a) print(unpermuted.size()) # ——> torch.Size([1, 2, 3]) tensor([[[1., 4.], [2., 5.], [3., 6.]]]) permuted=unpermuted.permute(2,0,1) print(permuted.size()) # ——> torch.Size([3, 1, 2]) tensor([[[1., 2.], [3., 4.], [5., 6.]]])
總結
到此這篇關于PyTorch中permute的基本用法的文章就介紹到這了,更多相關PyTorch permute的用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python?enumerate()計數(shù)器簡化循環(huán)
這篇文章主要介紹了Python?enumerate()計數(shù)器簡化循環(huán),enumerate()最大的優(yōu)點就是它返回一個帶有計數(shù)器和值的元組,因此我們不必自己增加計數(shù)器,下面就來看看文章具體對它的詳細介紹吧,需要的朋友可以參考一下2021-12-12pytorch 在sequential中使用view來reshape的例子
今天小編就為大家分享一篇pytorch 在sequential中使用view來reshape的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08Python環(huán)境配置實現(xiàn)pip加速過程解析
這篇文章主要介紹了Python環(huán)境配置實現(xiàn)pip加速過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-11-11es+flask搜索小項目實現(xiàn)分頁+高亮的示例代碼
本文主要介紹了es+flask搜索小項目實現(xiàn)分頁+高亮的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01