Deep-Learning
為什麼要通過減去數據集的圖像均值來歸一化圖像,而不是深度學習中的當前圖像均值?
如何標準化圖像有一些變化,但大多數似乎使用這兩種方法:
- 減去對所有圖像計算的每個通道的平均值(例如 VGG_ILSVRC_16_layers)
- 通過對所有圖像計算的像素/通道進行減法(例如CNN_S,另見Caffe 的參考網絡)
在我看來,自然的方法是標準化每個圖像。與夜間圖像相比,在光天化日下拍攝的圖像會導致更多的神經元被激發,雖然它可能會告訴我們我們通常關心邊緣等更有趣特徵的時間。
Pierre Sermanet在 3.3.3 中提到了基於每個圖像的局部對比度歸一化,但我在我見過的任何示例/教程中都沒有遇到過這種情況。我還看到了一個有趣的Quora question和Xiu-Shen Wei 的帖子,但他們似乎不支持上述兩種方法。
我到底錯過了什麼?這是一個顏色歸一化問題,還是有一篇論文真正解釋了為什麼這麼多人使用這種方法?
減去數據集均值用於“居中”數據。此外,如果要將每個特徵值歸一化為 z 分數,則理想情況下也希望除以該特徵或像素的 sttdev。
我們做這兩件事的原因是因為在訓練我們的網絡的過程中,我們將乘以(權重)並添加(偏置)這些初始輸入,以產生激活,然後我們用梯度反向傳播到訓練模型。
我們希望在這個過程中每個特徵都有一個相似的範圍,這樣我們的梯度就不會失控(並且我們只需要一個全局學習率乘數)。
您可以考慮的另一種方式是深度學習網絡傳統上共享許多參數 - 如果您沒有以導致相似範圍特徵值的方式縮放您的輸入(即:通過減去平均值在整個數據集上)共享不會很容易發生,因為圖像的一部分重量
w
很大,而另一部分重量太小。您會在一些 CNN 模型中看到使用了逐圖像白化,這更符合您的想法。