簡體   English   中英

ResNet中finetune的圖像預處理

[英]Image preprocessing of finetune in ResNet

我想微調 ResNet50 ImageNet 預訓練模型,我有一些關於微調圖像預處理的問題。

  1. 在 ImageNet 預處理中,我們需要減去像素的均值 ([103.939, 116.779, 123.68])。 當我使用我的數據集進行微調時,我應該減去 ImageNet 的平均值還是減去我的數據的平均值。

  2. 我確實看到很多人將數據重新縮放到 [0,1],但預訓練模型 (ImageNet) 在 [0,255] 中使用圖像縮放。 人們為什么這樣做? 合理嗎?

老實說,人們誇大了圖像預處理的影響。 唯一真正重要的是測試數據在價值尺度上與訓練數據相似。 使用批量歸一化,使用預先歸一化的數據集有一些理論上的好處,但在實踐中它從來沒有產生太大的區別(2-4% 的准確度)。

如果您有一個正在運行的模型,並且您試圖在不必增加參數量的情況下獲得最后幾個 % 的准確度,那么我建議您將其調整到您的用例中。

在我看來,沒有一種方法適用於每個用例,但一個好的起點是使用與 ImageNet 相同的預處理,因為這些特征將類似於為 imagenet 分類生成的特征。

  1. 我會嘗試兩個。 減去您的平均值是有道理的,因為通常人們試圖得到平均值 0。減去圖像凈平均值是有道理的,因為您希望網絡作為特征提取器。 如果您在特征提取器的早期更改某些內容,則它可能根本不起作用。
  2. 就像均值 0 一樣,擁有固定范圍內或固定標准偏差的特征通常被視為一種理想的屬性。 同樣,我無法真正告訴您什么更好,但您可以輕松嘗試。 我的猜測是沒有太大的差異。

最重要的是:確保對訓練/測試/評估數據應用相同的預處理步驟。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM