卷積神經網絡與典型結構


一、神經網絡與卷積神經網絡

  0.DNN(MLP多層感知器)能用到計算機視覺上嗎?為什么需要CNN

    DNN可以用在計算機視覺上,

  1.卷積神經網絡和人工神經網絡的差異在哪里?

    

    為什么需要卷積神經網絡。下面是一個32x32x3的圖片,隱層一般為1024或者4096的維度。輸入維度是4k左右,隱層在1024維度。這會導致過擬合和太大的計算量

  2.層級結構

    (1)保持了層級網絡結構

    (2)不同層次有不同的形式(運算)與功能

    (3)主要有以下層次

      數據輸入層/Input layer

        有3中常見的數據處理方式:

          去均值:把輸入數據各個維度第中心化到0,必做,AlexNet,VGG,在RGB上取均值。

          歸一化:幅度歸一化到同樣的范圍,必做

          PCA/白化:用PCA降維;白化是對數據每個特征軸上的幅度歸一化

          下圖一是原始數據,數據不要隨着每次的變化偏移越來越大或者說有越來越大的偏移度,所以需要去均值,將數據各個維度中心化到0

           如下圖,使用PCA降維,找到一些正交的軸,然后將數據投影到軸上,是一個去相關的操作。白化是做完PCA之后,把數據歸一化到一個范圍之內。

      圖像處理:resize()===>sub mean(去均值)

      卷積計算層/CONV layer   第一層

        卷積核(kernel,filter):第二層用於數據處理,用於數據計算的神經元.

        每個神經元和前一層的所有輸入都去進行連接,而且 每一個連接都要給一個權重w,這個時候參數量就會很大,

        局部關聯。每個神經元看做一個filter

        窗口(receptive field)滑動,filter對局部數據計算

        涉及概念:

          深度/depth,第二層神經元的個數,有多少個kernel(filter)這個depth值就是多少

          步長/stride,滑窗每次滑動的格數

          填充值/zero-padding,在周邊補0的圈數

      滑窗滑到每個位置的計算。用滑窗和對應位置做乘積,然后將所有的乘積加在一起。每到一個位置都是做這樣的處理,

      參數共享機制

      假設每個神經元連接數據窗的權重是固定的;假定每個神經院連接權重,可以看做模板,每個神經元只關注一個特性。需要估算的權重格數減少:一層1億=》3.5w

      一組固定的權重和不同窗口內數據做內積:卷積。 

      激勵層/Activation layer:把卷積層輸出的結果做非線性映射

        Sigmoid:

        Tanh(雙曲正切)

        ReLU

        Leaky ReLU

        ELU

        Maxout

      池化層(下采樣層)/Pooling layer

        夾在連續的卷積層中間

        壓縮數據和參數的量,減小過擬合

        

  

 

      全連接層/FC layer

        兩層之間所有神經元都有權重連接

        通常全連接層在卷積神經網絡尾部

      典型CNN結構為:

      

      Batch Normalization層(可能有)  2015年google提出

      CNN慎用sigmoid!

      首先試RELU,因為快,但是要小心

      如果2失敗,請用Leaky RELU或者Maxout

      某些情況下tanh倒是有很不錯的效果,但是很少

    (4)卷積神經網絡卷積層可視化理解 

      CONV Layer 2

    (5)通一般機器學習算法,先定義Loss function,衡量和實際效果之間的差距

      找到最小化損失函數的W和b,CNN中用的算法是SGD

      SGD需要計算W和b的偏導

      BP算法就是計算偏導用的

      BP算法的核心就是求導的鏈式法則

      BP算法利用鏈式求導法則,逐級相乘直到求解出dW和db

      利用SGD/隨機梯度下降,迭代和更新W和b  

    (6)卷積神經網絡優缺點:

      優點:

        共享卷積核,優化計算量

        無序手動選擇特征,訓練好權重,即得特征

        深層次的網絡抽取圖像信息豐富,表達效果好

      缺點:

        需要調參,需要大量樣本,GPU等硬件依賴

        物理含義不明確    

  3.數據處理

  4.訓練算法

  5.優缺點

二、正則化與Droupout

  0.神經網絡學習能力強可能會過擬合

    Dropout(隨機失活)正則化:別一次開啟所有學習單元

    

  1.正則化與Droupout處理

  2.Droupout理解

三、典型結構與訓練

  1.典型CNN

  2.訓練與優化


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM