2017-04-09 137 views
13

的Keras層文檔指定卷積層的輸入和輸出的大小: https://keras.io/layers/convolutional/Keras Conv2D和輸入通道

輸入形狀:(samples, channels, rows, cols)

輸出形狀:(samples, filters, new_rows, new_cols)

而且核尺寸是空間參數,即僅確定寬度和高度。

因此,具有c通道的輸入將產生帶有filters通道的輸出,而不管c的值如何。因此它必須對空間濾波器應用2D卷積,然後以某種方式彙總每個學習過濾器的結果。

什麼是聚合算子?這是跨渠道的總結嗎?我可以控制它嗎?我無法在Keras文檔中找到任何信息。

謝謝。

+0

您需要閱讀[這](http://cs231n.github.io/卷積的網絡/)。 –

+0

本頁內容:「在輸出體積中,第d個深度切片(大小爲W2×H2)是將第d個濾波器在輸入音量上進行有效卷積和SS步幅的結果,然後被第d個偏差抵消「。所以我仍然沒有關注一個體積與二維內核的卷積如何變成二維結果。通過求和減少深度尺寸? – yoki

+1

「示例1.例如,假設輸入體積大小爲[32x32x3](例如RGB CIFAR-10圖像)。如果接受區域(或濾鏡大小)爲5x5,則Conv Layer中的每個神經元將對於總共5 * 5 * 3 = 75的權重(和+1偏置參數),輸入體積中的[5x5x3]區域具有權重。請注意,沿深度軸的連接範圍必須爲3,因爲此是輸入音量的深度。「 - 我想你錯過了它的3D內核[寬度,高度,深度]。所以結果是跨渠道求和。 –

回答

5

這可能會造成混亂,這被稱爲Conv2D層(這是對我來說,這就是爲什麼我來尋找這個答案),因爲Nilesh製作Birari評論:

我猜你缺少它是3D內核[寬度,高度,深度]。所以結果是跨渠道求和。

也許2D從一個事實,即僅內核滑動沿兩個維度中,第三尺寸是固定的,通過輸入信道的數量(輸入深度)測定的莖。

更詳盡的解釋,閱讀https://petewarden.com/2015/04/20/why-gemm-is-at-the-heart-of-deep-learning/

我彈撥從那裏的說明性圖片:

kernel depth

+2

那麼每個濾波器的通道都有自己的可以優化的權重?或者我們只計算一個通道的權重,並將其用作過濾器其餘通道的值。 – Moondra