1. 程式人生 > >卷積神經網路學習筆記

卷積神經網路學習筆記

之前也一直用CNN提特徵,但也僅僅將其看成一個特徵提取器,網路內部結構我也大概知道,但是不太精細,因此今天想要重新學習一下CNN網路的構造與資料流傳輸的問題,鞏固下基礎。

1.卷積神經網路最重要的兩點:

傳統神經網路層與層之間是全部連線起來的,這樣引數就會變得非常多,難以訓練,這也是神經網路早早提出缺沒有應用於實際應用的原因。後面提出了卷積神經網路的 區域性感受野權值共享 成功解決了這個問題。

(1)區域性感受野:區域性感受野就是每個隱層神經元只與圖片中一個區域相關
,這樣就不是傳統的每個神經元均與圖片中每個畫素都全連線,大大減少了需要學習的權重。

(2)權值共享:權值共享就是所有神經元對應感受野的權重都相同,這樣權重個數=卷積野尺寸,權重數目減少很多量級。
隨後為了提高特徵的表達性,可以選擇多個不同的卷積核(即為隱層神經元)對影象進行卷積,這樣就得到了多個特徵圖(feature maps)

2.卷積(convolution)與池化(pooling)。

由於傳統神經網路(全連線)的引數過多,訓練慢且對記憶體要求高,因此想到了發展部分連線。即:一個隱層節點只與部分輸入有關(影象不同部位的統計特性是一致的),這也恰好模擬了人類大腦視覺皮層不同位置對不同區域才有響應。
卷積解決了無監督特徵提取複雜度的問題。

由於卷積後的特徵維數過大,而每個區域性卷積結果都是有相同統計特徵的,而pooling操作恰好對卷積結果進行統計操作。

池化是為了後面有監督的特徵分類器學習用。

3.梯度下降法訓練。

先理清梯度的概念:
導數:函式曲線上的切線斜率/函式在該點的變化率。(只有一個自變數,只 存在一個方向的變化)
偏導數:多元函式沿座標軸的變化率。(沿x軸和y軸的變化)
方向導數:函式值可沿各個方向變化,而方向導數變化最大(上山最快)的方向就是梯度方向

未完待續