卷積神經網絡中“特徵圖”(又名“激活圖”)的定義是什麼?
介紹背景
在卷積神經網絡中,我們通常具有如下所示的一般結構/流程:
- 輸入圖像(即二維向量
x
)
(第一個卷積層(Conv1)從這裡開始……)
w1
沿 2D 圖像卷積一組濾波器 ( )(即進行z1 = w1*x + b1
點積乘法),其中z1
3D 和b1
是偏差。- 應用激活函數(例如 ReLu)來製作
z1
非線性(例如a1 = ReLu(z1)
),其中a1
是 3D。
(第二個卷積層(Conv2)從這裡開始……)
- 沿著新計算的激活函數卷積一組過濾器(即進行
z2 = w2*a1 + b2
點積乘法),其中z2
是 3D,並且b2
是偏差。- 應用激活函數(例如 ReLu)來製作
z2
非線性(例如a2 = ReLu(z2)
),其中a2
是 3D。
問題
術語“特徵圖”的定義似乎因文獻而異。具體來說:
- 對於第一個卷積層,“特徵圖”是否對應於輸入向量
x
,或輸出點積z1
,或輸出激活a1
,或“過程”轉換x
為a1
,或其他?- 同樣,對於第二個卷積層,“特徵圖”是否對應於輸入激活
a1
,或輸出點積z2
,或輸出激活,或轉換為a2
的“過程” ,或其他什麼?a1``a2
另外,“特徵圖”一詞是否與“激活圖”完全相同?(或者它們實際上意味著兩個不同的東西?)
附加參考:
神經網絡和深度學習的片段——第 6 章:
*這裡的術語使用鬆散。特別是,我使用“特徵圖”來表示不是卷積層計算的函數,而是該層輸出的隱藏神經元的激活。這種對術語的輕度濫用在研究文獻中很常見。
來自Matt Zeiler的可視化和理解卷積網絡的片段:
在本文中,我們介紹了一種可視化技術,該技術揭示了在模型的任何層激發單個特徵圖的輸入刺激。[…] 相比之下,我們的方法提供了一個非參數的不變性視圖,顯示了訓練集中的哪些模式激活了特徵圖。[…] 一種局部對比操作,可標準化跨特徵映射的響應。[…] 為了檢查給定的 convnet 激活,我們將層中的所有其他激活設置為零,並將特徵圖作為輸入傳遞給附加的 deconvnet 層。[…] convnet 使用 relu 非線性,它可以糾正特徵圖,從而確保特徵圖始終為正。[…] convnet 使用學習過濾器對來自前一層的特徵圖進行卷積。[…] 圖 6,這些可視化是刺激模型中給定特徵圖的輸入模式的準確表示 […] 當與模式對應的原始輸入圖像的部分被遮擋時,我們看到特徵圖中的活動明顯下降。[…]
備註:在圖1中還引入了術語“feature map”和“rectified feature map”。
來自斯坦福 CS231n CNN 章節的片段:
[…] 這種可視化很容易發現一個危險的陷阱,即對於許多不同的輸入,一些激活圖可能全為零,這可能表明過濾器失效,並且可能是高學習率 […]訓練有素的 AlexNet 的第一個 CONV 層(左)和第 5 個 CONV 層(右)的典型激活,查看一張貓的照片。每個框顯示對應於某個過濾器的激活圖。請注意,激活是稀疏的(大多數值為零,在此可視化中以黑色顯示)並且大部分是局部的。
來自A-Beginner’s-Guide-To-Understanding-Convolutional-Neural-Networks 的片段
[…] 輸入卷上的每個唯一位置都會產生一個數字。在所有位置上滑動過濾器後,您會發現剩下的是一個 28 x 28 x 1 的數字數組,我們稱之為激活圖或特徵圖。
特徵圖或激活圖是給定過濾器(在您的情況下為 a1)的輸出激活,無論您在哪個層,定義都是相同的。
特徵圖和激活圖的含義完全相同。之所以稱為激活圖,是因為它是對應於圖像不同部分的激活的映射,也是特徵圖,因為它也是在圖像中找到某種特徵的位置的映射。高激活意味著找到了某個特徵。
“校正特徵圖”只是使用 Relu 創建的特徵圖。您可能會看到術語“特徵圖”用於點積 (z1) 的結果,因為這實際上也是圖像中某些特徵所在位置的地圖,但這並不常見。