HuberLoss¶
- class torch.nn.HuberLoss(reduction='mean', delta=1.0)[source][source]¶
建立一個損失準則,當絕對元素級誤差小於 delta 時使用平方項,否則使用 delta 縮放的 L1 項。該損失結合了
L1Loss和MSELoss的優點;delta 縮放的 L1 區域使得損失對異常值不如MSELoss敏感,而 L2 區域在接近 0 時提供了比L1Loss更好的平滑性。更多資訊請參見 Huber loss。對於大小為 的批次,未進行歸約的損失可描述為
其中
如果 reduction 不是 none,則
注意
當 delta 設定為 1 時,此損失等同於
SmoothL1Loss。通常,此損失與SmoothL1Loss相差 delta 倍(在 Smooth L1 中也稱為 beta)。有關兩種損失之間行為差異的更多討論,請參見SmoothL1Loss。- 引數
- 形狀
輸入:,其中 表示任意數量的維度。
目標:,與輸入具有相同的形狀。
輸出:標量。如果
reduction為'none',則為 ,與輸入具有相同的形狀。