精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何去理解CNN卷積層與池化層計算?

電子工程師 ? 來源:51CTO博客gloomyfish ? 作者:gloomyfish ? 2021-04-06 15:13 ? 次閱讀

概述

深度學習中CNN網絡是核心,對CNN網絡來說卷積層與池化層的計算至關重要,不同的步長、填充方式、卷積核大小、池化層策略等都會對最終輸出模型與參數、計算復雜度產生重要影響,本文將從卷積層與池化層計算這些相關參數出發,演示一下不同步長、填充方式、卷積核大小計算結果差異。

一:卷積層

卷積神經網絡(CNN)第一次提出是在1997年,楊樂春(LeNet)大神的一篇關于數字OCR識別的論文,在2012年的ImageNet競賽中CNN網絡成功擊敗其它非DNN模型算法,從此獲得學術界的關注與工業界的興趣。毫無疑問學習深度學習必須要學習CNN網絡,學習CNN就必須明白卷積層,池化層等這些基礎各層,以及它們的參數意義,從本質上來說,圖像卷積都是離散卷積,圖像數據一般都是多維度數據(至少兩維),離散卷積本質上是線性變換、具有稀疏與參數重用特征即相同參數可以應用輸入圖像的不同小分塊,假設有3x3離散卷積核如下:

pIYBAGBsCaaAXhtpAAAVeBDiS9Q778.png

假設有

5x5的圖像輸入塊

步長為1(strides=1)

填充方式為VALID(Padding=VALID)

卷積核大小filter size=3x3

則它們的計算過程與輸出如下

100017588-59694-2.png

假設這個時候我們修改步長為2、填充方式為SAME,卷積核大小不變(strides=2 Padding=SAME filter size=3x3),則計算過程與輸出變為如下:

100017588-59695-3.png

最終輸出得到的結果我們可以稱為featuremap,CNN的深度多數時候是指featuremap的個數,對多維度的輸入圖像計算多個卷積核,得到多個featuremap輸出疊加,顯示如下:

100017588-59696-4.png

上述輸入為5x5x2,使用卷積核3x3,輸出3x3x3,填充方式為VALID,計算如果填充方式改為SAME則輸出為5x5x3。可以看出填充方式對輸出結果的影響。

二:小卷積核VS大卷積核

在AlexNet中有有11x11的卷積核與5x5的卷積核,但是在VGG網絡中因為層數增加,卷積核都變成3x3與1x1的大小啦,這樣的好處是可以減少訓練時候的計算量,有利于降低總的參數數目。關于如何把大卷積核替換為小卷積核,本質上有兩種方法。

1. 將二維卷積差分為兩個連續一維卷積

二維卷積都可以拆分為兩個一維的卷積,這個是有數學依據的,所以11x11的卷積可以轉換為1x11與11x1兩個連續的卷積核計算,總的運算次數:

11x11 = 121次

1x11+ 11x1 = 22次

2.將大二維卷積用多個連續小二維卷積替代
可見把大的二維卷積核在計算環節改成兩個連續的小卷積核可以極大降低計算次數、減少計算復雜度。同樣大的二維卷積核還可以通過幾個小的二維卷積核替代得到。比如:5x5的卷積,我們可以通過兩個連續的3x3的卷積替代,比較計算次數

5x5= 25次

3x3+ 3x3=18次

三:池化層

在CNN網絡中卷積池之后會跟上一個池化層,池化層的作用是提取局部均值與最大值,根據計算出來的值不一樣就分為均值池化層與最大值池化層,一般常見的多為最大值池化層。池化的時候同樣需要提供filter的大小、步長、下面就是3x3步長為1的filter在5x5的輸入圖像上均值池化計算過程與輸出結果

100017588-59697-5.png

改用最大值做池化的過程與結果如下:

100017588-59698-6.png

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 卷積
    +關注

    關注

    0

    文章

    95

    瀏覽量

    18499
  • cnn
    cnn
    +關注

    關注

    3

    文章

    351

    瀏覽量

    22169
  • vgg
    vgg
    +關注

    關注

    1

    文章

    11

    瀏覽量

    5185
  • 池化
    +關注

    關注

    0

    文章

    4

    瀏覽量

    1100
收藏 人收藏

    評論

    相關推薦

    關于卷積神經網絡,這些概念你厘清了么~

    這個小型網絡,用于描述網絡的方程中也具有32個偏置和32個權重。 CIFAR神經網絡是一種廣泛用于圖像識別的CNN。它主要由兩種類型的組成:卷積
    發表于 10-24 13:56

    cnn常用的幾個模型有哪些

    1998年提出。它主要用于手寫數字識別,包括卷積和全連接。 AlexNet:Alex
    的頭像 發表于 07-11 14:58 ?624次閱讀

    卷積神經網絡的基本概念、原理及特點

    的基本概念、原理、特點以及在不同領域的應用情況。 一、卷積神經網絡的基本概念 卷積神經網絡是一種深度學習算法,它由多層卷積
    的頭像 發表于 07-11 14:38 ?799次閱讀

    神經網絡中的卷積與全連接

    在深度學習中,卷積神經網絡(Convolutional Neural Network, CNN)是一種特別適用于處理圖像數據的神經網絡結構。它通過卷積
    的頭像 發表于 07-11 14:18 ?4673次閱讀

    卷積神經網絡中的作用

    在深度學習領域,卷積神經網絡(Convolutional Neural Network, CNN)以其卓越的圖像處理和計算機視覺能力而廣受歡迎。CNN由多個
    的頭像 發表于 07-03 15:58 ?1088次閱讀

    卷積神經網絡實現示例

    分類。 1. 卷積神經網絡的基本概念 1.1 卷積(Convolutional Layer) 卷積
    的頭像 發表于 07-03 10:51 ?375次閱讀

    卷積神經網絡分類方法有哪些

    ,包括基本原理、常見架構、優化策略、應用場景等。 1. 卷積神經網絡的基本原理 卷積神經網絡是一種前饋神經網絡,其核心思想是通過卷積提取輸入數據的局部特征,并通過
    的頭像 發表于 07-03 09:40 ?398次閱讀

    卷積神經網絡計算過程和步驟

    卷積(Convolutional Layer) 卷積卷積神經網絡的核心組成部分,它通過卷積
    的頭像 發表于 07-03 09:36 ?439次閱讀

    卷積神經網絡的組成部分有哪些

    卷積、激活函數、全連接、損失函數、優化算法等,并探討它們在
    的頭像 發表于 07-03 09:31 ?731次閱讀

    cnn卷積神經網絡分類有哪些

    卷積神經網絡概述 卷積神經網絡(Convolutional Neural Network,簡稱CNN)是一種深度學習模型,由多層卷積
    的頭像 發表于 07-03 09:28 ?469次閱讀

    卷積神經網絡可以通過輸出反推到輸入嗎

    卷積神經網絡(Convolutional Neural Networks,簡稱CNN)是一種深度學習模型,廣泛應用于圖像識別、視頻分析、自然語言處理等領域。CNN通過卷積
    的頭像 發表于 07-03 09:17 ?527次閱讀

    卷積神經網絡每一的作用

    卷積神經網絡(Convolutional Neural Networks,簡稱CNN)是一種深度學習算法,廣泛應用于圖像識別、自然語言處理等領域。本文將詳細介紹卷積神經網絡每一的作用
    的頭像 發表于 07-02 15:28 ?1112次閱讀

    CNN模型的基本原理、結構、訓練過程及應用領域

    (Convolutional Layer),它通過卷積運算提取輸入數據的特征,然后通過(Pooling Layer)和全連接(Ful
    的頭像 發表于 07-02 15:26 ?2969次閱讀

    卷積神經網絡cnn模型有哪些

    (Convolutional Layer) 卷積CNN的核心,用于提取圖像的局部特征。卷積操作通過滑動窗口(濾波器或卷積核)在輸入數據上
    的頭像 發表于 07-02 15:24 ?661次閱讀

    卷積神經網絡cnn的主要作用

    卷積神經網絡(Convolutional Neural Network,CNN)是深度學習領域中一種重要的神經網絡結構,廣泛應用于圖像識別、語音識別、自然語言處理等領域。在CNN中,
    的頭像 發表于 07-02 14:50 ?793次閱讀