Deep-Learning

為什麼要通過減去數據集的圖像均值來歸一化圖像,而不是深度學習中的當前圖像均值?

  • May 8, 2016

如何標準化圖像有一些變化,但大多數似乎使用這兩種方法:

  1. 減去對所有圖像計算的每個通道的平均值(例如 VGG_ILSVRC_16_layers
  2. 通過對所有圖像計算的像素/通道進行減法(例如CNN_S,另見Caffe 的參考網絡

在我看來,自然的方法是標準化每個圖像。與夜間圖像相比,在光天化日下拍攝的圖像會導致更多的神經元被激發,雖然它可能會告訴我們我們通常關心邊緣等更有趣特徵的時間。

Pierre Sermanet在 3.3.3 中提到了基於每個圖像的局部對比度歸一化,但我在我見過的任何示例/教程中都沒有遇到過這種情況。我還看到了一個有趣的Quora questionXiu-Shen Wei 的帖子,但他們似乎不支持上述兩種方法。

我到底錯過了什麼?這是一個顏色歸一化問題,還是有一篇論文真正解釋了為什麼這麼多人使用這種方法?

減去數據集均值用於“居中”數據。此外,如果要將每個特徵值歸一化為 z 分數,則理想情況下也希望除以該特徵或像素的 sttdev。

我們做這兩件事的原因是因為在訓練我們的網絡的過程中,我們將乘以(權重)並添加(偏置)這些初始輸入,以產生激活,然後我們用梯度反向傳播到訓練模型。

我們希望在這個過程中每個特徵都有一個相似的範圍,這樣我們的梯度就不會失控(並且我們只需要一個全局學習率乘數)。

您可以考慮的另一種方式是深度學習網絡傳統上共享許多參數 - 如果您沒有以導致相似範圍特徵值的方式縮放您的輸入(即:通過減去平均值在整個數據集上)共享不會很容易發生,因為圖像的一部分重量w很大,而另一部分重量太小。

您會在一些 CNN 模型中看到使用了逐圖像白化,這更符合您的想法。

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

comments powered by Disqus