1. 程式人生 > >機器學習與深度學習系列連載: 第二部分 深度學習(十)卷積神經網路 1 Convolutional Neural Networks

機器學習與深度學習系列連載: 第二部分 深度學習(十)卷積神經網路 1 Convolutional Neural Networks

卷積神經網路 Convolutional Neural Networks

卷積神經網路其實早在80年代,就被神經網路泰斗Lecun 提出[LeNet-5, LeCun 1980],但是由於當時的資料量、計算力等問題,沒有得到廣泛使用。
在這裡插入圖片描述

卷積神經網路的靈感來自50年代的諾貝爾生物學獎。Hubel & Wiesel, 1959,貓負責視覺的大腦區域,對於細小的線段感興趣(而不是魚),這個區域離眼睛遠(而不是近)。
在這裡插入圖片描述

1.卷積層 Convolutional Layer

卷積層中有filter,在image空間中不斷滑動,進行點乘dot
在這裡插入圖片描述
filter 的dot的結果是一個數值,經過滑動dot,就會形成一個比原先照片小的層,厚度為1
在這裡插入圖片描述


filter可以有很多個,我們以6個filter為例
在這裡插入圖片描述

2.卷積過程 Convolutional Process

卷積的過程,就是一系列的卷積層的組合:
在這裡插入圖片描述
每一層提取的feature 從low lever ,mid level,high level 到可以分類的級別
在這裡插入圖片描述
這裡是一個圖片分類的過程:
在這裡插入圖片描述

3.卷積計算 Convolutional Compute

(1)activation map 大小的計算 以7*7大小的圖片為例
在這裡插入圖片描述
(2)zero padding
zero padding 可以保持圖片卷積後的大小
在這裡插入圖片描述
(3)計算
舉例:輸入圖片是32x32x3 有10個5x5的filter ,stride 是1 ,pad 2
輸出的大小? 引數的多少?
在這裡插入圖片描述

Output volume size: (32+2*2-5)/1+1 = 32 spatially, so 32x32x10

Number of parameters in this layer? each filter has 553 + 1 = 76 params => 76*10 = 760
(4)總結
在這裡插入圖片描述

本專欄圖片、公式很多來自臺灣大學李弘毅老師、斯坦福大學cs229,斯坦福大學cs231n 、斯坦福大學cs224n課程。在這裡,感謝這些經典課程,向他們致敬!