文章目錄
- 一、卷積神經網絡(CNN)
- 二、CNN結構特性
- 1. CNN 典型結構
- 2. 局部連接
- 3. 權重共享
- 4.空間或時間上的次采樣
- 三、理解層面
一、卷積神經網絡(CNN)
- 卷積神經網絡(Convolutional Neural Network,CNN)是一種用于處理圖像和其他多維數據的深度學習模型。它在計算機視覺任務中表現出色,如圖像分類、目標檢測、語義分割等。
- CNN的核心思想是利用卷積操作來提取圖像的特征,并通過層層堆疊的方式進行深度學習。
二、CNN結構特性
1. CNN 典型結構
- 卷積塊:由連續 M(2 - 5)個卷積層和 b(0 或 1)個池化層構成。多個卷積層可逐步提取不同層次的圖像特征,池化層則在適當位置對數據降維。
- 卷積網絡堆疊:一個卷積網絡中可堆疊 N(1 - 100 或更大)個連續的卷積塊,之后連接 K(0 - 2)個全連接層。卷積塊負責特征提取,全連接層整合特征用于最終任務。
2. 局部連接
傳統FNN中神經元與所有輸入相連,參數眾多;而CNN里神經元僅與輸入數據的局部區域相連,大幅降低參數數量,增強了模型對圖像的特征提取能力。
全連接神經網絡(FNN)
FNN 的局限性:
- 參數巨大:權重矩陣的參數數量龐大,計算量呈指數級增長和訓練時間過長。
- 特征提取困難:圖像具有局部不變性特點,即局部區域特征在不同位置可能具有相似性,但 FNN 難以有效捕捉這類特征,限制了其在圖像分析任務中的表現。
- 卷積層(Convolutional Layer):
- 功能:卷積層是 CNN 的核心組件,主要負責提取圖像的局部特征,并完整輸出特征圖。
- 參數包含:
- 卷積核(Kernels):卷積核如同特征提取的 “探測器”,具有不同的個數、大小(用寬 W 和高 H 表示)以及通道數(Channel,分為單通道和多通道)。不同的卷積核能夠捕捉不同類型的特征,如邊緣、紋理等。
- 步長(Stride):步長用于控制卷積核在輸入數據上滑動的距離,不同的步長設置會改變輸出特征圖的大小。較大的步長會使特征圖尺寸變小,減少計算量,但可能會丟失一些細節信息;較小的步長則能保留更多細節,但計算量會相應增加。
- 補邊/填充(Padding):為避免卷積操作時邊緣信息的丟失,在輸入數據的邊緣添加像素值,即補邊 / 填充。通過合適的填充,可以使卷積操作后的輸出和輸入尺寸保持一致,確保邊緣區域的特征也能被有效提取。
卷積核滑過輸入特征圖((Input FeatureMap),滑動到每一個位置時,卷積核中的每個元素與其覆蓋的陰影部分輸入數據對應位置的每個元素做乘積再求和,得到表示當前位置的輸出數據,在全部滑動位置都計算完成后,就得到了輸出矩陣,也叫做輸出特征圖(Output Feature Map)。
其中卷積核也叫過濾器或者濾波器,濾波器在輸入像素矩陣上掃過的面積稱之為感受野。
-
池化層(Pooling Layer):
- 功能:池化層也稱為下采樣層,通常在連續的卷積層之間會周期性地插入一個池化層。降低數據維度,減少參數數量,降低計算復雜度。
- 常見的池化類型有:
- 平均池化AveragePool:計算局部區域的平均值作為新元素,對特征進行平滑處理,保留整體特征的同時減少噪聲影響。
- 最大池化MaxPool:選取局部區域的最大值作為新的特征圖元素,能夠突出顯著特征,例如在圖像中強化邊緣和紋理等關鍵信息。
[圖片]
- 反池化:與池化操作相反,用于在特定場景下恢復數據的維度,在一些需要上采樣的任務中發揮作用。
- 池化層也有步長(Stride)參數,計算輸出大小時一般不需要 填充(Padding)。
-
全連接層(Fully Connected Layer):
- 位于卷積層之后,需先將卷積層輸出的特征圖“攤平” 。
- 功能:整合之前所有層提取的特征,使網絡擁有全局視野,用于最終分類或回歸任務。連接前一層的特征,將輸出值傳入激活函數(如Softmax、ReLU等)。
激活函數(Activation Function)
- 卷積層和池化層后通常會添加激活函數,用于引入非線性特性。
- 常見的激活函數:
- ReLU
- Sigmoid
- Softmax
3. 權重共享
同一卷積核在處理圖像不同位置時,權重保持不變。這極大減少了參數數量,同時也體現了圖像局部不變性的特性,即相同特征無論出現在圖像何處,都能用同一卷積核檢測。
4.空間或時間上的次采樣
主要由池化層實現,在空間(圖像場景)或時間(視頻等時間序列數據場景)維度上對數據進行下采樣,降低數據規模,突出關鍵特征。
三、理解層面
- 特征學習:CNN旨在學習輸入圖像的特征。通過多層網絡結構,逐步從原始像素數據中提取不同層次的特征。
- 層級理解:
- 前幾層主要檢測圖像的邊緣、線條等基礎特征。
- 中間幾層開始檢測物體的部分區域,如紋理、形狀片段等。
- 靠后幾層能夠檢測完整的物體,實現對圖像內容更高級、更抽象的理解。