卷積神經網絡學習(二)
一、基礎知識(一)
filter:
padding:在圖像卷積操作之前,沿著圖像邊緣用0進行圖像填充。padding會影響輸出圖像大小。
stride(卷積步長):卷積步長是指過濾器在圖像上滑動的距離
input: n*n, filter: f*f, stride: s, padding: p
output:, ? ?表示向下取整
單層卷積網絡:
ReLU(整流線性單位)——與Sigmoid函數不同的是,最近的網絡更喜歡使用ReLu激活函數來處理隱藏層。該函數定義為:
當X>0時,函數的輸出值為X;當X<=0時,輸出值為0。函數圖如下圖所示:
使用ReLU函數的最主要的好處是對於大於0的所有輸入來說,它都有一個不變的導數值。常數導數值有助於網絡訓練進行得更快。
在矩陣上加入偏差b1,然後對加入偏差的矩陣做非線性的Relu變換,得到一個新的4*4矩陣,這就是單層卷積網絡的完整計算過程。用公式表示:
其中輸入圖像為a[0],過濾器用w[1]表示,對圖像進行線性變化並加入偏差得到矩陣z[1],a[1]是應用Relu激活後的結果。
描述卷積神經網絡的一些符號標識:
輸出圖像的通道數就是過濾器的個數。
卷積神經網絡層的類型:
- 卷積層(convolution,conv)
- 池化層(pooling,pool)
- 全連接層(Fully connected,FC)
1.池化層
最大池化(Max pooling)
最大池化思想很簡單,以下圖為例,把4*4的圖像分割成4個不同的區域,然後輸出每個區域的最大值,這就是最大池化所做的事情。其實這裏我們選擇了2*2的過濾器,步長為2。在一幅真正的圖像中提取最大值可能意味著提取了某些特定特征,比如垂直邊緣、一只眼睛等等。
平均池化和最大池化唯一的不同是,它計算的是區域內的平均值而最大池化計算的是最大值。在日常應用使用最多的還是最大池化。平均池化和最大池化唯一的不同是,它計算的是區域內的平均值而最大池化計算的是最大值。在日常應用使用最多的還是最大池化。
平均池化和最大池化唯一的不同是,它計算的是區域內的平均值而最大池化計算的是最大值。在日常應用使用最多的還是最大池化。
池化的超參數:步長、過濾器大小、池化類型最大池化or平均池化
卷積神經網絡學習(二)