2017-03-27 50 views
0

我正在使用卷積自動編碼器。我的autoenoder配置有一個卷積層,帶有stride(2,2)或avg-pooling和relu激活,以及一個帶有stride(2,2)或avg-unpooling和relu激活的去卷積層。卷積自動編碼器:黑色特徵映射

我用MNIST數據集訓練了自動編碼器。

當我在第一個卷積圖層(20個過濾器大小爲3的過濾器)之後查看特徵映射時,我得到了一些黑色特徵映射,而學習的過濾器不是黑色的。如果我更改過濾器的數量或過濾器大小,也會發生同樣的情況。

我用TensorFlow和Theano自編碼器得到了這種現象。 (我還沒有測試其他神經網絡軟件。)

有誰知道爲什麼會發生這種情況?

我可以在添加LRN圖層時避開黑色要素圖,但我想了解黑色要素圖出現的原因。

+0

你是什麼意思的「黑」 - 到處都是零?你爲什麼認爲這是一個問題? – kaufmanu

+0

感謝您的回覆。是的,「黑色」對我來說意味着零。我的目標是理解爲什麼輸出變爲零,而不是濾波器不爲零。你能解釋這種現象嗎? 第二步是在第一個卷積層之後輸出,並將其用作完全連接的神經網絡的輸入。我認爲零輸出會破壞比原始MNIST數據集更糟糕的分類數據。 – user7473657

+0

你扁平化了relu-activation的輸出嗎?並把它給一個完全連接層?你的網絡應該有隱藏的單位 – Jai

回答

0

我發現了相同的現象。 用7×7×3×6的卷積自動編碼器對數千個RGB圖像進行訓練後,兩個或三個濾波器有一些輸出,其他濾波器得到零輸出。 而且,如果零輸出濾波器太多,錯誤不會減少。 我也改變了過濾器的號碼和尺寸,但結果幾乎相同。