一、卷積神經網絡
1.定義
卷積神經網絡(Convolutional Neural Network, CNN)是一種專門用于處理具有網格狀拓撲結構數據的深度學習模型,特別適用于圖像和視頻處理。CNN 通過局部連接和權重共享機制,有效地減少了參數數量,增強了模型的泛化能力。
2.特點
(1)局部卷積:可以捕捉到圖像中的局部特征而不受其位置的影響;
(2)參數共享;
(3)多卷積核(每個卷積核都會對輸入圖像進行卷積處理,生成另一幅圖像);
(4)池化操作:降采樣處理(down-pooling),是對不同位置的特征進行聚合統計。通常是取對應位置的最大值(最大池化)、平均值(平均池化)等;
?池化的優點:1)降維;2)克服過擬合;3)在圖像識別領域,池化還能提供平移和旋轉不變性。?
(5)多層處理:一般而言,在圖像處理中,一層卷積及降采樣往往只學到了局部的特征。層數越多,學到的特征越全局化。
3.卷積過程
卷積操作就是用一個可移動的小窗口來提取圖像中的特征,這個小窗口包含了一組特定的權重,通過與圖像的不同位置進行卷積操作,網絡能夠學習并捕捉到不同特征的信息。
這張圖中藍色的框就是指一個數據窗口,紅色框為卷積核(濾波器),最后得到的綠色方形就是卷積的結果(數據窗口中的數據與卷積核逐個元素相乘再求和)
卷積需要注意哪些問題?
a.步長stride:每次滑動的位置步長。
b. 卷積核的個數:決定輸出的depth厚度。同時代表卷積核的個數。
c. 填充值zero-padding:(0的圈數)在外圍邊緣補充若干圈0,方便從初始位置以步長為單位可以剛好滑倒末尾位置,通俗地講就是為了總長能被步長整除。數據填充的主要目的是確保卷積核能夠覆蓋輸入圖像的邊緣區域,同時保持輸出特征圖的大小。
以上圖為例,那么:
??數據窗口每次移動兩個步長取?3*3?的局部數據,即?stride=2?。
??兩個神經元,即?depth=2?,意味著有兩個濾波器。
??zero-padding=1?。
參考自:【深度學習】一文搞懂卷積神經網絡(CNN)的原理(超詳細)_卷積神經網絡原理-CSDN博客
二、CNN經典模型之LeNet-5模型分析
?
?
?