網站首頁 編程語言 正文
這篇博客主要寫flatten()作用,及其參數的含義
- flatten()是對多維數據的降維函數。
- flatten(),默認缺省參數為0,也就是說flatten()和flatte(0)效果一樣。
- python里的flatten(dim)表示,從第dim個維度開始展開,將后面的維度轉化為一維.也就是說,只保留dim之前的維度,其他維度的數據全都擠在dim這一維。
- 比如一個數據的維度是( S 0 , S 1 , S 2......... , S n ) , flatten(m)后的數據為( S 0 , S 1 , S 2 , . . . , S m ? 2 , S m ? 1 , S m ? S m + 1 ? S m + 2 ? . . . ? S n )?
- 下面我們舉個例子來理解一下flatten
比如我們隨機定義一個維度為(2,3,4)的數據a
import torch a = torch.rand(2,3,4)
a輸出結果為:
a此時的維度為(2,3,4)
flatten()和flatten(0)效果一樣,a這個數據從0維展開,就是( 2 ? 3 ? 4 2*3*4 2?3?4),維度就是(24)
b = a.flatten() c = a.flatten(0)
b,c的結果如圖:
b,c相等,維度均為 ( 2 ? 3 ? 4 ) (2*3*4) (2?3?4)也就是(24)
a從1維展開flatten(1),就是 ( 2 , 3 ? 4 ) (2,3*4) (2,3?4),也就是(2,12).
d = a.flatten(1)
d的結果如圖所示:
a從一維展開后的數據d的維度為 ( 2 , 3 ? 4 ) (2,3*4) (2,3?4)也就是(2,12)
a若是從2維展開flatten(2),那就是(2,3,4)和之前沒有變化
e = a.flatten(2)
e的結果如圖所示:
e從二維展開后的數據d的維度為 ( 2 , 3 , 4 ) (2,3,4) (2,3,4)
總結
- python里的flatten(dim)表示,從第dim個維度開始展開,將后面的維度轉化為一維.也就是說,只保留dim之前的維度,其他維度的數據全都擠在dim這一維。
- 比如一個數據的維度是( S 0 , S 1 , S 2 , S 3......... , S n ) (S0,S1,S2,S3.........,Sn)(S0,S1,S2,S3.........,Sn), flatten(m)后的數據為( S 0 , S 1 , S 2 , S 3 , . . . , S m ? 2 , S m ? 1 , S m ? S m + 1 ? S m + 2 ? . . . ? S n ) (S0, S1,S2,S3,...,Sm-2,Sm-1,Sm*Sm+1*Sm+2*...*Sn)(S0,S1,S2,S3,...,Sm?2,Sm?1,Sm?Sm+1?Sm+2?...?Sn)
原文鏈接:https://blog.csdn.net/kuan__/article/details/116987162
相關推薦
- 2022-03-27 Android自定義模擬時鐘控件_Android
- 2022-06-08 FreeRTOS實時操作系統多任務管理基礎知識_操作系統
- 2022-11-19 Kotlin協程之Flow異常示例處理_Android
- 2022-06-14 GO語言協程創建使用并通過channel解決資源競爭_Golang
- 2022-10-04 在shell腳本中激活conda虛擬環境的方法總結_linux shell
- 2022-04-17 iOS喚起記住密碼的數字鍵盤,輸入的時候發生閃爍的問題
- 2022-05-10 spring jdbctample方式訪問數據庫
- 2022-06-06 python?利用?PrettyTable?美化表格_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支