如何計算卷積層輸出圖像的大小以及池化大小輸出

如何計算卷積層輸出圖像的大小&以及池化大小輸出

卷積

在卷積神經網絡(CNN)中,計算卷積層輸出圖像的大小是一個常見的操作。以下是卷積計算的基本公式和步驟:

  1. 卷積層輸出尺寸計算公式
    Output_size = ? Input_size ? Filter_size + 2 × Padding Stride ? + 1 \text{Output\_size} = \left\lfloor \frac{\text{Input\_size} - \text{Filter\_size} + 2 \times \text{Padding}}{\text{Stride}} \right\rfloor + 1 Output_size=?StrideInput_size?Filter_size+2×Padding??+1

    其中:

    • Input_size \text{Input\_size} Input_size 是輸入圖像的尺寸(高度或寬度)。
    • Filter_size \text{Filter\_size} Filter_size 是卷積核的尺寸(通常是正方形,如 3 × 3 3 \times 3 3×3)。
    • Padding \text{Padding} Padding 是填充的像素數。
    • Stride \text{Stride} Stride 是卷積核移動的步長。
    • ? ? ? \left\lfloor \cdot \right\rfloor ??? 表示向下取整。
  2. 實例
    假設輸入圖像尺寸為 32 × 32 32 \times 32 32×32,卷積核尺寸為 5 × 5 5 \times 5 5×5,填充為 0 0 0(即沒有填充),步長為 1 1 1
    Output_size = ? 32 ? 5 + 2 × 0 1 ? + 1 = ? 27 ? + 1 = 28 \text{Output\_size} = \left\lfloor \frac{32 - 5 + 2 \times 0}{1} \right\rfloor + 1 = \left\lfloor 27 \right\rfloor + 1 = 28 Output_size=?132?5+2×0??+1=?27?+1=28
    因此,輸出圖像的尺寸為 28 × 28 28 \times 28 28×28

  3. 帶填充和步長的實例
    如果輸入圖像尺寸為 32 × 32 32 \times 32 32×32,卷積核尺寸為 3 × 3 3 \times 3 3×3,填充為 1 1 1(即每邊填充一圈像素),步長為 2 2 2
    Output_size = ? 32 ? 3 + 2 × 1 2 ? + 1 = ? 32 2 ? + 1 = 16 + 1 = 17 \text{Output\_size} = \left\lfloor \frac{32 - 3 + 2 \times 1}{2} \right\rfloor + 1 = \left\lfloor \frac{32}{2} \right\rfloor + 1 = 16 + 1 = 17 Output_size=?232?3+2×1??+1=?232??+1=16+1=17
    因此,輸出圖像的尺寸為 17 × 17 17 \times 17 17×17

  4. 卷積層的參數個數
    計算卷積層的參數個數的公式為:
    Params = ( Filter_height × Filter_width × Input_channels + 1 ) × Number_of_filters \text{Params} = (\text{Filter\_height} \times \text{Filter\_width} \times \text{Input\_channels} + 1) \times \text{Number\_of\_filters} Params=(Filter_height×Filter_width×Input_channels+1)×Number_of_filters

    例如,對于一個具有 3 個輸入通道、32 個過濾器和 5 × 5 5 \times 5 5×5 卷積核的卷積層:
    Params = ( 5 × 5 × 3 + 1 ) × 32 = ( 75 + 1 ) × 32 = 2432 \text{Params} = (5 \times 5 \times 3 + 1) \times 32 = (75 + 1) \times 32 = 2432 Params=(5×5×3+1)×32=(75+1)×32=2432

通過這些公式和實例,你可以計算任何卷積層的輸出尺寸和參數個數。

池化

池化(Pooling)操作通常用于減小特征圖的尺寸,同時保留重要的特征。計算池化層輸出圖像的大小的方法類似于卷積層,但公式略有不同。

池化層輸出尺寸計算公式

Output_size = ? Input_size ? Pool_size Stride ? + 1 \text{Output\_size} = \left\lfloor \frac{\text{Input\_size} - \text{Pool\_size}}{\text{Stride}} \right\rfloor + 1 Output_size=?StrideInput_size?Pool_size??+1

其中:

  • Input_size \text{Input\_size} Input_size 是輸入圖像的尺寸(高度或寬度)。
  • Pool_size \text{Pool\_size} Pool_size 是池化窗口的尺寸(通常是正方形,如 2 × 2 2 \times 2 2×2)。
  • Stride \text{Stride} Stride 是池化窗口移動的步長。
  • ? ? ? \left\lfloor \cdot \right\rfloor ??? 表示向下取整。

實例計算

假設我們有一個池化層,輸入圖像的尺寸為 54 × 54 × 96 54 \times 54 \times 96 54×54×96,池化窗口的尺寸為 2 × 2 2 \times 2 2×2,步長為 2(即常見的最大池化操作)。

  1. 計算高度和寬度
    Output_height = ? 54 ? 2 2 ? + 1 = ? 26 ? + 1 = 27 \text{Output\_height} = \left\lfloor \frac{54 - 2}{2} \right\rfloor + 1 = \left\lfloor 26 \right\rfloor + 1 = 27 Output_height=?254?2??+1=?26?+1=27

    Output_width = ? 54 ? 2 2 ? + 1 = ? 26 ? + 1 = 27 \text{Output\_width} = \left\lfloor \frac{54 - 2}{2} \right\rfloor + 1 = \left\lfloor 26 \right\rfloor + 1 = 27 Output_width=?254?2??+1=?26?+1=27

因此,輸出圖像的高度和寬度均為 27。

  1. 輸出通道數
    池化操作不改變通道數。因此,輸出圖像的通道數仍然是 96。

最終輸出尺寸

結合上面的計算,池化后的輸出圖像的尺寸為 27 × 27 × 96 27 \times 27 \times 96 27×27×96

解釋

  • 輸入圖像尺寸 54 × 54 × 96 54 \times 54 \times 96 54×54×96
  • 池化窗口尺寸 2 × 2 2 \times 2 2×2
  • 步長: 2

池化操作通過應用 2 × 2 2 \times 2 2×2 的池化窗口,以步長 2 在 54 × 54 54 \times 54 54×54 的輸入圖像上滑動,從而得到一個高度和寬度均為 27,通道數為 96 的輸出特征圖。

總結

通過上述步驟,我們解釋了如何計算池化層輸出圖像的尺寸。池化后的輸出尺寸為 27 × 27 × 96 27 \times 27 \times 96 27×27×96

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/45028.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/45028.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/45028.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

區塊鏈項目全球成功指南:全面覆蓋的媒體宣發策略與實踐

隨著區塊鏈技術的迅速普及和發展,全球范圍內對區塊鏈項目的關注度不斷提升。為了在國際市場上取得成功,區塊鏈項目需要通過有效的媒體宣傳策略來提高知名度,吸引投資,并建立強大的社區支持。本文將詳細介紹區塊鏈項目在海外媒體宣…

為企業提升銷售工作效率的工作手機管理系統

在競爭日益激烈的市場環境中,企業的銷售團隊如同前線戰士,其作戰效率直接關乎企業的生存與發展。然而,傳統銷售管理模式下的信息孤島、溝通不暢、數據混亂等問題,正悄然成為制約銷售效率提升的瓶頸。今天,我們為您揭秘…

在 Windows 平臺搭建 MQTT 服務

引言 MQTT 是一種輕量級、基于發布/訂閱模式的消息傳輸協議,旨在用極小的代碼空間和網絡帶寬為物聯網設備提供簡單、可靠的消息傳遞服務。MQTT 經過多年的發展,如今已被廣泛應用于資源開采、工業制造、移動通信、智能汽車等各行各業,使得 MQ…

匯聚榮做拼多多電商怎么樣?

匯聚榮做拼多多電商怎么樣?在當前電商平臺競爭激烈的背景下,拼多多憑借其獨特的商業模式和市場定位迅速崛起。對于想要加入拼多多的商家而言,了解平臺的特點、優勢及挑戰是至關重要的。本文將深入分析加入拼多多電商的多個方面,幫助讀者全面…

ubuntu計劃任務反彈

目錄 實驗環境 實驗步驟 目標主機構造任務計劃 構造語句 語句解釋 kali開啟監聽 監聽成功 問題 原因 實驗環境 攻擊者 操作系統:kali IP:192.168.244.141 目標主機 操作系統:ubuntu IP:192.168.244.151 實驗步驟 目…

論文學習_An Empirical Study of Deep Learning Models for Vulnerability Detection

1. 引言 研究背景:近年來,深度學習漏洞檢測工具取得了可喜的成果。最先進的模型報告了 0.9 的 F1 分數,并且優于靜態分析器。結果令人興奮,因為深度學習可能會給軟件保障帶來革命性的變化。因此,IBM、谷歌和亞馬遜等行業公司非常感興趣,并投入巨資開發此類工具和數據集。…

(8)揭示Python編程精髓:深潛繼承與多態的奇幻之旅

目錄 1. 命名空間與作用域1.1 命名空間概述1.2 作用域1.2.1 局部作用域1.2.2 全局作用域1.2.3 修改全局變量1.2.4 嵌套作用域 2. 繼承3. 多態(Polymorphism) 1. 命名空間與作用域 1.1 命名空間概述 命名空間是一個從名字到對象的映射,它在P…

Qt:19.浮動窗口/子窗口(子窗口介紹、代碼方式創建子窗口、設置子窗口標題、為子窗口添加控件、設置子窗口停靠位置)

目錄 1.子窗口介紹: 2.代碼方式創建子窗口: 3.設置子窗口標題: 4.為子窗口添加控件: 5.設置子窗口停靠位置。 1.子窗口介紹: 在 Qt 中,可以創建和管理子窗口(子窗口體)以實現多窗…

圖片怎么制作成長期可用的活碼?掃碼提供圖片預覽的制作技巧

現在圖片的尺寸和清晰度的質量越來越高,相對應的會占用更多的存儲空間,現在很多人會將圖片存入云端后,通過生成二維碼的方式,掃碼來查看圖片內容。圖片轉換二維碼有利于將圖片分享給其他人查看,還能夠節省更多的空間&a…

SpringBoot自己開發一個starter

提示:本文主要講述如何自行開發一個SpringBoot的starter 文章目錄 目錄 文章目錄 前言 一、Starter是什么 二、創建一個SpringBoot項目 1.創建一個基本的SpringBoot項目 2.選擇要下載的庫 三、設置項目 1.提示 2.配置pom.xml 3.重點代碼 1.創建一個User類…

16.x86游戲實戰-匯編指令push pop pushad popad

免責聲明:內容僅供學習參考,請合法利用知識,禁止進行違法犯罪活動! 本次游戲沒法給 內容參考于:微塵網絡安全 工具下載: 鏈接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd6tw3 提…

【第29章】MyBatis-Plus之分頁插件

文章目錄 前言一、支持的數據庫二、配置方法三、屬性介紹四、自定義 Mapper 方法中使用分頁五、其他注意事項六、Page 類七、實戰1. 配置類2. 分頁類3. 測試 總結 前言 MyBatis-Plus 的分頁插件 PaginationInnerInterceptor 提供了強大的分頁功能,支持多種數據庫&a…

Windows電腦安裝Python結合內網穿透輕松搭建可公網訪問私有網盤

文章目錄 前言1.本地文件服務器搭建1.1.Python的安裝和設置1.2.cpolar的安裝和注冊 2.本地文件服務器的發布2.1.Cpolar云端設置2.2.Cpolar本地設置 3.公網訪問測試4.結語 前言 本文主要介紹如何在Windows系統電腦上使用python這樣的簡單程序語言,在自己的電腦上搭建…

kubernetes授予用戶指定命名空間的使用權限

kubernetes授予用戶指定命名空間的使用權限 問題描述具體實現簽發客戶端證書創建RBAC策略生成kubeconfig文件 問題描述 假如我們部門來了個新同事,他需要使用kubernetes集群,但是因為他剛來,還不熟悉,所以不能直接將kubernetes集…

Spring如何控制Bean加載+執行順序

1. Order 注解和 Ordered 接口 用途:控制組件執行順序或排序,但不控制Bean初始化順序。定義執行順序:通過整數值指定組件優先級,數值越小優先級越高。集合排序:影響自動裝配到集合中的組件排列順序。使用場景&#xf…

77.MySQL的分頁查詢

一、LIMIT關鍵字 LIMIT關鍵字用于限制返回結果集中的行數。其基本語法如下: SELECT * FROM 表名 LIMIT 行數; 例如,要從名為mark_info的表中選擇最新創建的10個工單的信息,可以執行以下查詢: SELECT * FROM mark_info ORDER B…

電力需求預測挑戰賽筆記 Taks1 跑通baseline

#AI夏令營 #Datawhale #夏令營 賽題 一句話介紹賽題任務可以這樣理解賽題: 【訓練時序預測模型助力電力需求預測】 電力需求的準確預測對于電網的穩定運行、能源的有效管理以及可再生能源的整合至關重要。 賽題任務 給定多個房屋對應電力消耗歷史 N 天的相關序列數…

拓撲排序(算法篇)

算法之拓撲排序 拓撲排序 概念: 拓撲排序是對有向無圈圖的頂點的一種排序。排序不必是唯一的,任何合理的排序都是可以的。具體做法是:先找出任意一個沒有入邊的頂點v(就是沒有其他頂點指向的頂點),將頂點v放入隊列,…

element-plus el-table點擊當前行和劃過展示鼠標

在 Element Plus 的 el-table 組件中,設置滑過行時鼠標的樣式可以通過 CSS 來實現。你可以使用 CSS 的 cursor 屬性來定義鼠標懸停時的樣式。以下是一個簡單的例子: 首先,在你的 Vue 組件的 .el-table .el-table__row:hover {cursor: poin…

09.AOP-尚硅谷Spring零基礎入門到進階,一套搞定spring6全套視頻教程(源碼級講解)

現有代碼缺陷 針對帶日志功能的實現類,我們發現有如下缺陷: 對核心業務功能有干擾,導致程序員在開發核心業務功能時分散了精力附加功能分散在各個業務功能方法中,不利于統一維護 解決思路 解決核心:解耦。把附加功能從…