3

當人們嘗試用CNN解決語義分割的任務時,他們通常在訓練期間使用softmax-crossentropy損失(參見Fully conv. - Long)。但是,當比較不同方法的表現時,比如交叉口聯合度量就會被報告。爲什麼不使用IOU進行培訓?

我的問題是爲什麼不直接培訓他們想要優化的措施?對我而言,在培訓期間對某種程度的訓練似乎很古怪,但對另一種基準評估方法進行評估。

我可以看到IOU對訓練樣本存在問題,其中類不存在(union = 0,intersection = 0 =>零除零)。但是,當我可以確保每個我的基本事實樣本都包含所有類別時,是否有另一個不使用這種方法的原因?

回答

1

這就像問「爲什麼分類我們訓練對數損失,而不是準確性?」。原因很簡單 - 你不能直接訓練大部分指標,因爲它們不是可區分的。到你的參數(或者至少不會產生漂亮的錯誤表面)。對數損失(softmax crossentropy)是準確性的有效替代物。現在你完全正確的做法是,用一種不是你有興趣的有效度量指標的東西進行培訓顯然是錯誤的,而且這篇鏈接論文並沒有做好,因爲他們至少考慮了一些指標 - 我們可以很容易顯示出好的替代品(就像加權的準確性一樣,你所要做的就是減少體重日誌)。

2

結算這paper他們想出了一種方法來使IoU可微分的概念。我以驚人的結果實現了他們的解

+1

可能要包括一些數學這裏,使這個不鏈接唯一的答案。他們的算法與[Y.Wang等人](http://www.cs.umanitoba.ca/~ywang/papers/isvc16.pdf)類似。粗略地說,'I = = sum(Y * Y')'和'U〜= sum(Y + Y' - Y * Y')'。你的論文使用「I/U」的負數日誌,而我鏈接的使用「1-I/U」。我喜歡負面的日誌形式,但我很快就會嘗試。你也在I/U之後而不是之前總結。 – Poik

+0

以我個人的觀點來看,對訓練集中的每個樣本計算I/U,然後進行求和,這在物理上更爲合理。通過這種方式,您可以根據每個樣本評估準確度,並將單個誤差加起來。首先執行總和可能會導致錯誤取消('sum(I)/ sum(U)'可能會給出好的分數,而'sum(I/U)'可能不會用於相同的數據)。雖然我絕不是專家 – MPA

0

下面是以簡單方式思考此問題的另一種方法。

請記住,在解決相關圖像問題的同時簡單地評估諸如精度或IoU等度量是不夠的。評估指標還必須幫助網絡學習在哪個方向權重必須是推動朝,以便網絡可以有效地學習迭代和時代。

評估這個方向是以前的評論意味着錯誤是微分。我想,沒有什麼關於網絡可以用來說的IoU指標:「嘿,它不完全在這裏,但我必須可能將我的包圍盒稍微向左移動!」

的解釋只是涓涓細流,但希望它有助於..