Pytorch教程(十三):reshape、squeeze、flatten
生活随笔
收集整理的這篇文章主要介紹了
Pytorch教程(十三):reshape、squeeze、flatten
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
reshape
首先我們創建一個tensor,shape:3×43 \times 43×4,是一個兩個軸的二階張量。第一個軸的長度是3,第二個軸的長度是4,第一個軸的元素是數組,第二個軸的元素是數字
我們可以用torch.size()或者torch.shape來獲取形狀
張量形狀給出的另一個重要特征是張量中包含的元素的個數,也可以通過獲取shape中各分量的值乘積來推導出來:
因為我們的元素有12個,因此任何reshape操作都必須考慮這12個元素。
squeeze壓縮
squeeze()壓縮一個張量可以移除所有長度為1的軸axis,而解壓一個張量則會增加一個長度為1的維度。因此squeeze和unsqueeze可以擴大或縮小張量的秩。
flatten
通過構建一個flatten來壓縮一個張量,當我們把一個張量拉平時,意味著我們把張量變成了更低秩的張量。所以flatten,本質上就是壓縮張量,壓縮一個張量意味著除去所有的軸,只保留一個,他創造了一個單軸的張量,它包含了張量元素。
一個flatten操作,是當我們從一個卷積層過渡到一個全連接層時必須在神經網絡中發生的操作。傳遞給全連接層的卷積層輸出必須在進入全連接層之前進行flatten。
flatten是一種特殊的reshape,即將所有的軸都被積壓在一起。
cat拼接
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Pytorch教程(十三):reshape、squeeze、flatten的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑族有效防辐射电脑族如何防辐射
- 下一篇: Pytorch教程(十五):elemen