Conv-Neural-Network

對池化層感到困惑,它是否可訓練?

  • April 24, 2016

我在很多地方讀過,比如斯坦福大學在CS231n上的捲積神經網絡課程筆記(以及這裡這里這裡),池化層沒有任何可訓練的參數!

然而今天有人告訴我,在一些論文中(這裡是)他們說,我引用:

S1 層用於子採樣,包含六個特徵圖,每個特徵圖包含 14 x 14 = 196 個神經元。子採樣窗口為 2 x 2 矩陣,子採樣步長為 1,因此 S1 層包含 6 x 196 x (2 x 2 + 1) = 5880 個連接。S1 層中的每個特徵圖都包含一個權重和偏差,因此在 S1 層中總共可以訓練 12 個參數。

這是什麼 ?

有人可以請教我嗎?

在你閱讀的論文中

S1層一共可以訓練12個參數

表示池化層中輸出平面的數量,而不是權重矩陣中的參數數量。通常,我們在神經網絡模型中訓練的是權重矩陣中的參數。我們不在輸入平面或輸出平面訓練參數。所以寫論文的同學沒有表達清楚,這讓你對池化層到底是什麼感到困惑。

最大池化層中沒有可訓練的參數。在前向傳遞中,它將每個矩形內的最大值傳遞到下一層。在後向傳遞中,它將下一層中的錯誤傳播到取最大值的地方,因為那是錯誤的來源。


例如,在forward pass中,您有一個圖像矩形:

1 2
3 4

你會得到:

4

在下一層。

向後傳遞中,您有錯誤:

-0.1

然後你將錯誤傳播回你得到它的地方:

0 0 
0 -0.1

因為從前傳中的那個位置取數字 4。

引用自:https://stats.stackexchange.com/questions/209013

comments powered by Disqus