深度學習的多個loss如何平衡?

時間 2021-06-11 16:17:54

1樓:汪鵬飛

試試這個公式:

出自Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics,我應用的任務上能work

2樓:墨虺

參考:神經網路中,設計loss function有哪些技巧? - 劉詩昆的回答 - 知乎 https://www.

zhihu.com/question/268105631/answer/333738561效果好,速度快!大連海事大學提出基於增強多工學習的單影象去雨演算法MENET

3樓:

最直接的就是GridSearch網格化搜尋,實際上就是遍歷搜尋,即給定一定範圍內的引數範圍值,然後在引數範圍內遍歷選擇多個引數。

這個問題實際上是自動機器學習研究範疇,以微軟的NNI為例,流程圖如下參考 https://www.

4樓:學鶸

這個係數的選擇可以認為是一種先驗,認為重要的loss項可以加大係數。

更多時候需要驗證集來調整超引數,不妨讓 a+b+c=1 ,使用 grid search 來檢視驗證集的 loss 在什麼情況下最小。

5樓:Eric

我的做法是看幾個loss的數量級是否相同,有一次我加的平滑loss一直沒有效果,列印出後發現loss1與loss2之間差了三個數量級,遂改變了係數,然後在同等數量級上面根據結果微調。

6樓:hantian.pang

一般到了這一步,多個loss就是不可兼得了。。。

我一般做法是先看這幾個loss輸出的值,差不多調到乙個幾個loss平衡的狀態。然後開始根據業務需求和訓練驗證的曲線,調整一下相對的權重。

深度網路loss除以10和學習率除以10是不是等價的?

張覺非 看你用的什麼優化演算法。最樸素的梯度下降法就是梯度乘上學習率再從引數當前值中減去。損失前面乘個 1 10 係數的話,因為求導是線性算符,這個 1 10 係數可以扔到最外面,求出來的梯度是原損失梯度的 1 10 倍,兩者就是等價的 對於那些原始梯度下降的變體,梯度出現在式子中時前面可能沒有乘學...

深度學習尤其是語義分割,Loss個數是不是設定的越多越好?

MrJ 多loss要根據網路的設計來弄的。比如加了邊緣檢測的loss輔助,加不同解析度輸出loss輔助。如果是相同原理的loss,效果應該差距不大。比如用L1 Loss和cross entropy一起去做二類分割,效果跟使用單loss去調權重是差不多的。 yan 我認為,神經網路的設計要遵守奧卡姆剃...

深度學習中loss和網路結構對結果分別產生怎樣影響?

好比一台車。loss是方向盤,網路結構是車子的效能。怎麼拿好名次?好的效能加操控。方向盤控制車子往哪兒跑。loss控制網路學習什麼,網路結構決定了這種學習能力的大小。 RUSH 網路結構可以看乙個對映f,包含了引數P。損失函式cost function可以想象成乙個地形 先想象成2維,然後推廣到多維...