溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析

發(fā)布時間:2022-01-19 10:19:20 來源:億速云 閱讀:130 作者:小新 欄目:大數(shù)據(jù)

這篇文章給大家分享的是有關(guān)SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

1. 卷積層

卷積是一種有效提取圖片特征的方法 。 一般用一個正方形卷積核,遍歷圖片上的每一個像素點。圖片與卷積核重合區(qū)域內(nèi)相對應(yīng)的每一個像素值,乘卷積核內(nèi)相對應(yīng)點的權(quán)重,然后求和, 再加上偏置后,最后得到輸出圖片中的一個像素值。
圖片分灰度圖和彩色圖,卷積核可以是單個也可以是多個,因此卷積操作分以下三種情況:

1.1 單通道輸入,單卷積核

這里單通道指的是輸入為灰度圖,單卷積核值卷積核個數(shù)是1個。
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
上面是 5x5x1 的灰度圖片,1 表示單通道,5x5 表示分辨率,共有 5 行 5列個灰度值。若用一個 3x3x1 的卷積核對此 5x5x1 的灰度圖片進行卷積,偏置項b=1,則求卷積的計算是:(-1)x1+0x0+1x2+(-1)x5+0x4+1x2+(-1)x3+0x4+1x5+1=1(注意不要忘記加偏置 1)。

1.2 多通道輸入,單卷積核

多數(shù)情況下,輸入的圖片是 RGB 三個顏色組成的彩色圖,輸入的圖片包含了紅、綠、藍三層數(shù)據(jù),卷積核的深度(通道數(shù))應(yīng)該等于輸入圖片的通道數(shù),所以使用 3x3x3的卷積核,最后一個 3 表示匹配輸入圖像的 3 個通道,這樣這個卷積核有三通道,每個通道都會隨機生成 9 個待優(yōu)化的參數(shù),一共有 27 個待優(yōu)化參數(shù) w 和一個偏置 b。
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
注:這里還是單個卷積核的情況,但是一個卷積核可以有多個通道。默認情況下,卷積核的通道數(shù)等于輸入圖片的通道數(shù)。

1.3 多通道輸入,多卷積核

多通道輸入、多卷積核是深度神經(jīng)網(wǎng)絡(luò)中間最常見的形式。指的是多通道輸入,且用多個卷積核的情況。那么卷積過程其實也很簡單,以3通道輸入,2個卷積核為例
(1)先取出一個卷積核與3通道的輸入進行卷積,這個過程就和多通道輸入,單卷積核一樣,得到一個1通道的輸出output1。同樣再取出第二個卷積核進行同樣的操作,得到第二個輸出output2
(2)將相同size的output1與output2進行堆疊,就得到2通道的輸出output。
為了更直觀地理解,下面給出圖示:
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
圖中輸入X:[1,h,w,3]指的是:輸入1張高h寬w的3通道圖片。
卷積核W:[k,k,3,2]指的是:卷積核尺寸為3*3,通道數(shù)為3,個數(shù)為2。
總結(jié):
(1)卷積操作后,輸出的通道數(shù)=卷積核的個數(shù)
(2)卷積核的個數(shù)和卷積核的通道數(shù)是不同的概念。每層卷積核的個數(shù)在設(shè)計網(wǎng)絡(luò)時會給出,但是卷積核的通道數(shù)不一定會給出。默認情況下,卷積核的通道數(shù)=輸入的通道數(shù),因為這是進行卷積操作的必要條件。

1.4 填充padding

為了使卷積操作后能得到滿意的輸出圖片尺寸,經(jīng)常會使用padding對輸入進行填充操作。默認在圖片周圍填充0。
(1)全零填充padding=‘same’
使用same時,會自動對原圖進行全0填充,當(dāng)步長為1時,可以保證輸出的圖片與輸入的圖片尺寸一致。
輸出尺寸計算公式:輸入長/步長 (向上取整)
TensorFlow中實現(xiàn)如下:(這里以卷積核個數(shù):48,卷積核尺寸:3,步長:1,全填充為例)

layers.Conv2D(48, kernel_size=3, strides=1, padding='same')

(2)不填充padding=‘valid’
使用valid時,不進行任何填充,直接進行卷積。
輸出尺寸計算公式:(輸入長-核長)/步長+1 (向下取整)
TensorFlow中實現(xiàn)如下:

layers.Conv2D(48, kernel_size=3, strides=1, padding='valid')

(3)自定義填充
一般是從上下左右四個方向進行填充,且左、右填充的列數(shù) p w p_w pw一般相同,上、下填充的行數(shù) p h p_h ph也應(yīng)該相同。如下圖所示:
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
輸出尺寸計算公式:
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
其中,h,w為原圖的高和寬,k是卷積核的尺寸,s是步長。
在TensorFlow2.0中,自定義填充過程中,padding參數(shù)的設(shè)置格式為:
padding=[ [0,0],[上,下],[左,右],[0,0] ]

# 例如要在上下左右各填充一個單位,實現(xiàn)如下:layers.Conv2D(48, kernel_size=3, strides=1, padding=[[0,0], [1,1], [1,1], [0,0]])

2. 池化層

在卷積層中,可以通過調(diào)節(jié)步長參數(shù) s 實現(xiàn)特征圖的高寬成倍縮小,從而降低了網(wǎng)絡(luò)的參數(shù)量。實際上,除了通過設(shè)置步長,還有一種專門的網(wǎng)絡(luò)層可以實現(xiàn)尺寸縮減功能,它就是我們要介紹的池化層(Pooling layer)。
池化層同樣基于局部相關(guān)性的思想,通過從局部相關(guān)的一組元素中進行采樣或信息聚合,從而得到新的元素值。通常我們用到兩種池化進行下采樣:
(1)最大池化(Max Pooling)
從局部相關(guān)元素集中選取最大的一個元素值。
(2)平均池化(Average Pooling)
從局部相關(guān)元素集中計算平均值并返回。

3. 激活函數(shù)

激活函數(shù)也是神經(jīng)網(wǎng)絡(luò)不可缺少的部分,常用的激活函數(shù)有好幾種,具體如何選擇合適的激活函數(shù)可參考我的這篇博文:神經(jīng)網(wǎng)絡(luò)搭建:激活函數(shù)總結(jié)

4. 全連接層

全連接層簡稱FC。之所以叫全連接,是因為每個神經(jīng)元與前后相鄰層的每一個神經(jīng)元都有連接關(guān)系。如下圖所示,是一個簡單的兩層全連接網(wǎng)絡(luò),輸入時特征,輸出是預(yù)測的結(jié)果。
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
全連接層的參數(shù)量是可以直接計算的,計算公式如下:
SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析
按照上圖搭建的兩層全連接網(wǎng)絡(luò),要訓(xùn)練分辨率僅僅是 28x28=784 的黑白圖像,就有近 40 萬個待優(yōu)化的參數(shù)?,F(xiàn)實生活中高分辨率的彩色圖像,像素點更多,且為紅綠藍三通道信息。待優(yōu)化的參數(shù)過多, 容易導(dǎo)致模型過擬合。為避免這種現(xiàn)象,實際應(yīng)用中一般不會將原始圖片直接喂入全連接網(wǎng)絡(luò)。
在實際應(yīng)用中,會先對原始圖像進行卷積特征提取,把提取到的特征喂給全連接網(wǎng)絡(luò),再讓全連接網(wǎng)絡(luò)計算出分類評估值。

更新:
2015 年,Google 研究人員Sergey 等基于參數(shù)標準化設(shè)計了BN層。BN層提出后,廣泛地應(yīng)用在各種深度網(wǎng)絡(luò)模型上,使得網(wǎng)絡(luò)的超參數(shù)的設(shè)定更加自由,同時網(wǎng)絡(luò)的收斂速度更快,性能也更好。

感謝各位的閱讀!關(guān)于“SpringBoot整合MybatisPlus中卷積層+激活函數(shù)+池化層+全連接層的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI