亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python?reshape和transpose的區(qū)別小結(jié)

 更新時(shí)間:2024年02月26日 09:33:40   作者:Threetiff  
reshape()?和?transpose()?是用于改變數(shù)組或張量形狀的兩種不同方法,本文主要介紹了python?reshape和transpose的區(qū)別小結(jié),具有一定參考價(jià)值,感興趣的可以了解一下

reshape() 和 transpose() 是用于改變數(shù)組或張量形狀的兩種不同方法,它們的主要區(qū)別在于如何重新排列元素以及是否可以改變軸的順序。

1 reshape()

  • reshape() 函數(shù)用于改變數(shù)組或張量的形狀,但是不改變?cè)氐呐帕许樞?。它只是?jiǎn)單地將數(shù)組的維度重新排列,但不改變維度之間的關(guān)系。
  • reshape() 只是改變了張量的視圖,不會(huì)對(duì)數(shù)據(jù)進(jìn)行重排或轉(zhuǎn)置。
  • 例如,對(duì)于一個(gè)形狀為 (2, 3, 4) 的數(shù)組,通過 reshape(3, 2, 4) 可以將其形狀變?yōu)?(3, 2, 4),但是數(shù)組的元素排列順序不變。
  • reshape() 只需滿足新形狀的元素?cái)?shù)量與原始形狀相同即可。

2 transpose()

  • transpose() 函數(shù)用于交換數(shù)組或張量的軸的順序,從而改變?cè)氐呐帕许樞颉?/li>
  • 它可以靈活地重新排列數(shù)組的軸,以滿足不同的需求。
  • 例如,對(duì)于一個(gè)形狀為 (2, 3, 4) 的數(shù)組,通過 transpose(1, 0, 2) 可以將其形狀變?yōu)?(3, 2, 4),同時(shí)改變了軸的順序。
  • transpose() 可以用于任意地改變數(shù)組軸的順序,但需要明確指定新的軸順序。

3 我遇到的問題

問題:將shape為(1, 72, 1, 169, 253)的張量變?yōu)閟hape為(1, 169, 253, 72, 1)的張量 并且不改變數(shù)據(jù)

目的是:進(jìn)行維度順序的改變,但不改變他們的數(shù)據(jù)結(jié)構(gòu)

一開始我使用的是reshape()

preds = preds.reshape(-1, preds.shape[3], preds.shape[4], preds.shape[1], preds.shape[2])

這樣得到的結(jié)果是錯(cuò)誤的,直接按照【元素本身的排列順序】處理,破壞了數(shù)據(jù)的空間結(jié)構(gòu)

因此,我得到了錯(cuò)誤的結(jié)果

image-20240223101825872

進(jìn)行修改,

preds_new = np.transpose(preds, (0, 3, 4, 1, 2))

最終得到:

image-20240223102346850

到此這篇關(guān)于python reshape和transpose的區(qū)別小結(jié)的文章就介紹到這了,更多相關(guān)python reshape transpose內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

最新評(píng)論