簡體   English   中英

在訓練用於語義分割的深度學習模型時,處理背景像素類 (ignore_label) 的最佳方法是什么?

[英]What is the best way to handle the background pixel classes (ignore_label), when training deep learning models for semantic segmentation?

我正在嘗試在cityscapes數據集上訓練一個UNET模型,它有 20 個“有用”的語義類和一堆可以忽略的背景類(例如天空、自我車輛、山脈、路燈)。 為了訓練模型忽略這些背景像素,我使用了以下互聯網上流行的解決方案:

  1. 我為屬於忽略類的所有像素分配一個通用的ignore_label (例如: ignore_label=255
  2. 使用每個像素預測的cross_entropy損失來訓練模型
  3. cross_entropy損失中提供ignore_label參數,因此計算的損失會忽略具有不必要類別的像素。

但是這種方法有一個問題。 訓練完成后,該模型最終會將這些背景像素分類為屬於 20 個類別之一。 這是預期的,因為在損失中,我們不會因為模型對背景像素所做的任何分類而對其進行懲罰。

因此,第二個明顯的解決方案是為所有背景像素使用一個額外的類。 因此它是城市景觀中的第 21 級。 然而,在這里我擔心我會“浪費”我的模型的容量,因為我會教它對這個額外的不必要的類進行分類。

處理背景像素類的最准確方法是什么?

絕對是第二種解決方案更好。 這是最好的解決方案,背景類絕對是附加類,但不是不必要的類,因為這樣可以清楚地區分要檢測的類和背景。

事實上,這是在分割中推薦的標准程序,將一個類別分配給一個背景,其中背景當然代表除您的特定類別之外的所有其他內容。

也許你可以嘗試使用“骰子損失+倒骰子損失”,它同時考慮了前景和背景像素

暫無
暫無

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

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