損失函數改進方法總覽
https://blog.csdn.net/u014380165/article/details/76946358
這篇博客主要列個引導表,簡單介紹在深度學習算法中損失函數可以改進的方向,並給出詳細介紹的博客鏈接,會不斷補充。
1、Large Marge Softmax Loss
ICML2016提出的Large Marge Softmax Loss(L-softmax)通過在傳統的softmax loss公式中添加參數m,加大了學習的難度,逼迫模型不斷學習更具區分性的特征,從而使得類間距離更大,類內距離更小。核心內容可以看下圖:
詳細了解可以參看:損失函數改進之Large-Margin Softmax Loss
2、Center Loss
ECCV2016提出的center loss是通過將特征和特征中心的距離和softmax loss一同作為損失函數,使得類內距離更小,有點L1,L2正則化的意思。核心內容如下圖所示:
詳細了解可以參看:損失函數改進之Center Loss
3、Angular Softmax Loss
CVPR2017提出的A-softmax loss(angular softmax loss)用來改進原來的softmax loss,並將A-softmax loss用於人臉識別,這就是SphereFace,作者還是Large margin softmax loss的原班人馬。A-softmax loss簡單講就是在large margin softmax loss的基礎上添加了兩個限制條件||W||=1和b=0,使得預測僅取決於W和x之間的角度。核心思想可以參看下面這個圖。
詳細了解可以參看:SphereFace算法詳解
4、Focal Loss
Focal loss是Facebook的RBG和Kaiming大神在ICCV2017的best paper,主要是改進了目標檢測(object detection)算法的效果,在COCO數據集上的AP和速度都有明顯提升。核心思想在於概括了object detection算法中proposal-free一類算法准確率不高的原因在於:類別不均衡。於是在傳統的交叉熵損失上進行修改得到Focal Loss。
詳細了解可以參看:Focal Loss
5、Additive Angular Margin Loss
這篇文章提出一種新的用於人臉識別的損失函數:additive angular margin loss,基於該損失函數訓練得到人臉識別算法ArcFace(或者叫InsightFace)。ArcFace的思想(additive angular margin)和SphereFace(angular softmax loss)以及不久前的CosineFace(additive cosine margin )有一定的共同點,重點在於:在ArchFace中是直接在角度空間(angular space)中最大化分類界限,而CosineFace是在余弦空間中最大化分類界限,這也是為什么這篇文章叫ArcFace的原因,因為arc含義和angular一樣。
公式如下: