卷積神經網路

2021-08-08 15:02:07 字數 2861 閱讀 8160

本篇文章不設計卷積神經網路歷史,不涉及卷積神經網路具體的推導方式。僅僅以lenet為例說明一些基本的框架以及一些計算方法

以上為經典的卷積神經網路lenet,是由lecun提出的的

首先介紹2個相關計算

1 卷積計算:我們以5 *5 影象為例,採用卷積核為 3*3矩陣:

卷積核為:1  0  1

0  1  0

1  0  1

卷積的過程表示為:綠色矩陣為輸入,黃色矩陣為卷積核,粉色矩陣為卷積結果,進行了逐行逐列的相乘並進行了求和

2 池化 池化也算是一種抽樣。輸入為黃色矩陣部分,紅色矩陣為池化視窗,藍色矩陣為池化(取樣)結果:

我們記得神經網路最為基礎是神經元:包含了多個輸入資料以及對應的多個權重值,乙個偏置,還有乙個sigmoid函式:

我們輸入的影象大小為 32 * 32,,並且lenet採用了7層結構(不包含輸入層),分別進行卷積—取樣—卷積—取樣—卷積—全連線—高斯連線

首先我們要知道的是,卷積神經網路的每乙個卷積層都著多個卷積核,每乙個池化層都可以有著不同的池化視窗,在訓練卷積神經網路過程中,

一是訓練卷積核,此時的卷積核就是我們所說的權重,二是訓練偏置,另外我們還要計算連線數量

神經網路的操作過程如下:

第一步:輸入32*32影象樣例;

第二步:進行c1卷積,lenet在c1卷積時採用了6個5*5的卷積核。

輸入:1個32*32 影象

操作:對32*32 影象進行卷積處理(逐行逐列相乘求和)

輸出:6個28*28 影象

共 6*(5*5+1)=156 個引數

共 6*(5*5+1)*28*28 =   122304 個連線

第三步:進行s2池化處理,這兒有兩種池化處理過程:均值或者最大池化。本次池化視窗大小為 2 * 2:

輸入:6個28*28 影象

操作:進行2*2 池化處理(取樣:4個值求和再乘權重,之後加偏置)

輸出:6個14*14 影象

共 6 *(1+1) =12 個引數

共 6*(2*2+1)*14*14 = 5880個連線

第四步:進行c3卷積,採用了16個5*5 大小的卷積核

輸入:6個14*14 影象(標記為a,b,c,d,e,f)

操作:進行16 個5*5 卷積處理(標記為1~16)

注意,這兒並不是每個卷積核對每個輸入影象都進行處理。

1~6卷積核分別處理(abc—bcd—cde—def—efa—fab);可以得到6個10*10 影象

7~12卷積核分別處理(abcd—bcde—cdef—defa—efab—fabc);可以得到6個10*10 影象

13~15卷積核分別處理(abde—bcef—acdf);可以得到3 個10*10 影象

16卷積核處理(abcdef);可以得到1個10*10 影象

這兒進行的卷積和上面c1進行的卷積有一定的區別,如圖所示:

所以處理結果依然是1個影象

輸出: 16個10*10 影象

共6*(3*5*5+1)+6*(4*5*5+1)+3*(4*5*5+1)+1*(6*5*5+1)=1516個引數

共 10*10*1516=151600個連線

第五步:s4池化,池化視窗大小為2*2 ,可以選最大或者平均池化,(與s2操作一樣)

輸入:16個 10*10 影象

操作:2*2 池化

輸出:16個 5*5 影象

共 16*(1+1)=32 個引數

共 16*(2*2+1)*5*5=2000 個連線

第六步:c5的卷積層,採用120個 5*5 卷積核,由於輸入也是5*5 影象,卷積後輸出為1*1 影象,此時每乙個卷積核和s4的16個影象相連

輸入:16 個5*5 影象

操作:120 個5*5 卷積核進行卷積處理

輸出:120 個1*1 影象

共 120*(16*5*5+1)=48120 個引數或連線

第七步:全連線層,本層有84個神經元,每個神經元都與120個1*1 影象相連

輸入:120 個1*1 影象

操作:類似神經元的基礎操作(啟用函式可以用sigmoid)

輸出:84個二值表示

共 84*(120+1)=10164 個引數

第八步:輸出層,也是全連線層,共10個神經元(根據需要來改動,mnist只有0~9共10個數字,分為10類),採用徑向基函式(rbf)的網路連線方式

注意:這兒的每類表示乙個神經元,但是與神經元的處理方式不同,採用了rbf單元:計算輸入向量和引數向量的歐氏距離,若神經元 i 的輸出越接近於0,

表明當前網路識別影象的結果是數字 i;

輸入:84個二值表示

操作:進行rbf單元處理,計算輸入向量和引數向量的歐氏距離

輸出:乙個實數(越接近0越好)

以上為神經網路的基本架構以及相應的引數設定,若有不對的,懇請指正。

v_july_v

strint的專欄

bookthief

相關原理:yunpiao123456的專欄

strint的專欄

徑向基函式

bookthief

神經網路 卷積神經網路

這篇卷積神經網路是前面介紹的多層神經網路的進一步深入,它將深度學習的思想引入到了神經網路當中,通過卷積運算來由淺入深的提取影象的不同層次的特徵,而利用神經網路的訓練過程讓整個網路自動調節卷積核的引數,從而無監督的產生了最適合的分類特徵。這個概括可能有點抽象,我盡量在下面描述細緻一些,但如果要更深入了...

神經網路 卷積神經網路

1.卷積神經網路概覽 來自吳恩達課上一張,通過對應位置相乘求和,我們從左邊矩陣得到了右邊矩陣,邊緣是白色寬條,當畫素大一些時候,邊緣就會變細。觀察卷積核,左邊一列權重高,右邊一列權重低。輸入,左邊的部分明亮,右邊的部分灰暗。這個學到的邊緣是權重大的寬條 都是30 表示是由亮向暗過渡,下面這個圖左邊暗...

卷積神經網路 有趣的卷積神經網路

一 前言 最近一直在研究深度學習,聯想起之前所學,感嘆數學是一門樸素而神奇的科學。f g m1 m2 r 萬有引力描述了宇宙星河運轉的規律,e mc 描述了恆星發光的奧秘,v h d哈勃定律描述了宇宙膨脹的奧秘,自然界的大部分現象和規律都可以用數學函式來描述,也就是可以求得乙個函式。神經網路 簡單又...