機器之心發布
機器之心編輯部
機器之心發布
機器之心編輯部
計算機視覺與模式識別會議 CVPR 2020 將於 6 月 14-19 日在美國西雅圖舉行。近日,大會官方論文結果公布,曠視研究院 16 篇論文被收錄,研究領域涵蓋人臉識別、實時視頻感知與推理、小樣本學習、遷移學習,3D 感知、細粒度圖像等眾多領域。本文是其中一篇 Oral 論文的解讀。
在這篇論文中,研究者提出用於深度特徵學習的 Circle Loss,從相似性對優化角度正式統一了兩種基本學習範式(分類學習和樣本對學習)下的損失函數。通過進一步泛化,Circle Loss 獲得了更靈活的優化途徑及更明確的收斂目標,從而提高所學特徵的鑑別能力;它使用同一個公式,在兩種基本學習範式,三項特徵學習任務(人臉識別,行人再識別,細粒度圖像檢索),十個數據集上取得了極具競爭力的表現。
論文連結:https://arxiv.org/abs/2002.10857
深度特徵學習有兩種基本範式,分別是使用類標籤和使用正負樣本對標籤進行學習。使用類標籤時,一般需要用分類損失函數(比如 softmax + cross entropy)優化樣本和權重向量之間的相似度;使用樣本對標籤時,通常用度量損失函數(比如 triplet 損失)來優化樣本之間的相似度。
這兩種學習方法之間並無本質區別,其目標都是最大化類內相似度(s_p)和最小化類間相似度(s_n)。從這個角度看,很多常用的損失函數(如 triplet 損失、softmax 損失及其變體)有著相似的優化模式:
它們會將 s_n 和 s_p 組合成相似度對 (similarity pair) 來優化,並試圖減小(s_n-s_p)。在(s_n - s_p)中,增大 s_p 等效於降低 s_n。這種對稱式的優化方法容易出現以下兩個問題,如圖 1 (a) 所示。
優化缺乏靈活性s_n 和 s_p 上的懲罰力度是嚴格相等的。換而言之,給定指定的損失函數,在 s_n 和 s_p 上的梯度的幅度總是一樣的。例如圖 1(a)中所示的 A 點,它的 s_n 已經很小了,可是,s_n 會不斷受到較大梯度。這樣現象低效且不合理。收斂狀態不明確優化 (s_n - s_p) 得到的決策邊界為 s_p - s_n = m(m 是餘量)。這個決策邊界平行於 s_n = s_p, 維持邊界上任意兩個點(比如 T=(0.4, 0.7) 和 T'=(0.2, 0.5))的對應難度相等,這種決策邊界允許模稜兩可的收斂狀態。比如,T 和 T' 都滿足了 s_p - s_n = 0.3 的目標,可是比較二者時,會發現二者之間的分離量只有 0.1,從而降低了特徵空間的可分性。
圖 1:降低 (s_n - s_p) 的常用優化方法與新提出的降低 (α_ns_n α_ps_p) 的優化方法之間的對比
為此,曠視研究院僅僅做了一項非常簡單的改變,把 (s_n - s_p) 泛化為 (α_ns_n α_ps_p),從而允許 s_n 和 s_p 能以各自不同的步調學習。
具體來講,把 α_n 和 α_p 分別實現為 s_n 和 s_p 各自的線性函數,使學習速度與優化狀態相適應。相似度分數偏離最優值越遠,加權因子就越大。如此優化得到的決策邊界為 α_ns_n α_ps_p = m,能夠證明這個分界面是 (s_n,s_p) 空間中的一段圓弧,因此,這一新提出的損失函數稱之為 Circle Loss,即圓損失函數。
由圖 1(a) 可知,降低 (s_n - s_p) 容易導致優化不靈活(A、B、C 相較於 s_n 和 s_p 的梯度都相等)以及收斂狀態不明確(決策邊界上的 T 和 T' 都可接受);而在 Circle Loss 所對應的圖 1 (b) 中,減小 (α_ns_n α_ps_p) 會動態調整其在 s_n 和 s_p 上的梯度,由此能使優化過程更加靈活。
對於狀態 A,它的 s_p 很小(而 s_n 已經足夠小),因此其重點是增大 s_p;對於 B,它的 s_n 很大(而 s_p 已經足夠大),因此其重點是降低 s_n。此外,本文還發現,圓形決策邊界上的特定點 T(圓弧與 45 度斜線的切點)更有利於收斂。因此,Circle Loss 設計了一個更靈活的優化途徑,通向一個更明確的優化目標。
Circle Loss 非常簡單,而它對深度特徵學習的意義卻非常本質,表現為以下三個方面:
統一的(廣義)損失函數。從統一的相似度配對優化角度出發,它為兩種基本學習範式(即使用類別標籤和使用樣本對標籤的學習)提出了一種統一的損失函數;靈活的優化方式。在訓練期間,向 s_n 或 s_p 的梯度反向傳播會根據權重 α_n 或 α_p 來調整幅度大小。那些優化狀態不佳的相似度分數,會被分配更大的權重因子,並因此獲得更大的更新梯度。如圖 1(b) 所示,在 Circle Loss 中,A、B、C 三個狀態對應的優化各有不同。明確的收斂狀態。在這個圓形的決策邊界上,Circle Loss 更偏愛特定的收斂狀態(圖 1 (b) 中的 T)。這種明確的優化目標有利於提高特徵鑑別力。統一的相似性優化視角
深度特徵學習的優化目標是最大化 s_p,最小化 s_n。在兩種基本學習範式中,採用的損失函數通常大相逕庭,比如大家熟知的 sofmax loss 和 triplet loss。
這裡不去在意相似性計算的具體方式——無論是樣本對之間的相似性(相似性對標籤情況下)還是樣本與類別代理之間的相似性(類別標籤情況下)。本文僅僅做這樣一個假設定義:給定特徵空間中的單個樣本 x,假設與 x 相關的類內相似度分數有 K 個,與 x 相關的類間相似度分數有 L 個,分別記為
和
。
為了實現最大化 s_p 與最小化 s_n 的優化目標,本文提出把所有的 s_p 和 s_n 兩兩配對,並通過在所有的相似性對上窮舉、減小二者之差,來獲得以下的統一損失函數:
這個公式僅需少量修改就能降級得到常見的 triplet 損失或分類損失,比如得到 AM-Softmax 損失:
或 triplet 損失:
Circle Loss
自定步調的加權方式
暫先忽略等式 (1) 中的餘量項 m 並對 s_n 和 s_p 進行加權,可得到新提出的 Circle Loss:
再定義 s_p 的最優值為 O_p,s_n 的最優值為 O_n;O_n < O_p。當一個相似性得分與最優值偏離較遠,Circle Loss 將分配較大的權重,從而對它進行強烈的優化更新。為此,本文以自定步調(self-paced)的方式給出了如下定義:
類內餘量和類間餘量
不同於優化 (s_n - s_p) 的損失函數,在 Circle Loss 中,s_n 和 s_p 是不對稱的,本文為其各自定義了餘量 _n 和 _p,這樣可得到最終帶餘量的 Circle Loss:
通過推導決策邊界,本文進一步分析 _n 和 _p。為簡單起見,這裡以二元分類的情況進行說明,其中決策邊界是在
處得到。根據等式 (5) 和 (6),可得到決策邊界:
其中,
Circle Loss 有 5 個超參數,即 O_p、O_n、γ、_n 和 _p。通過將 O_p = 1+m,O_n =-m,_p = 1-m,_n = m。可將等式 (7) 約簡為:
基於等式 (8) 定義的決策邊界,可對 Circle Loss 進行另外一番解讀。其目標是優化 s_p → 1 和 s_n → 0。參數 m 控制著決策邊界的半徑,並可被視為一個鬆弛因子。
換句話說,Circle Loss 期望
且
。因此,超參數僅有 2 個,即擴展因子 γ 和鬆弛因子 m。
優勢
Circle Loss 在
和
上的梯度分別為:
圖 2(c) 在二元分類的實驗場景中可視化了不同 m 值設置下的梯度情況,對比圖 2(a) 和 (b) 的 triplet 損失和 AMSoftmax 損失的梯度,可知 Circle Loss 有這些優勢:在 s_n 和 s_p 上能進行平衡的優化、梯度會逐漸減弱、收斂目標更加明確。
圖 2:損失函數的梯度:(a)三重損失;(b)AMSoftmax 損失;(c)新提出的 Circle 損失
上圖的可視化結果表明,triplet 損失和 AMSoftmax 損失都缺乏優化的靈活性。它們相對於 s_p(左圖)和 s_n(右圖)的梯度嚴格相等,而且在收斂方面出現了陡然的下降(相似度配對 B)。比如,在 A 處,類內相似度分數 s_p 已接近 1,但仍出現了較大的梯度。此外,決策邊界平行於 s_p = s_n,這會導致收斂不明確。
相對而言,新提出的 Circle Loss 可根據相似性得分與最優值的距離,動態地為相似度分數分配不同的梯度。對於 A(s_n 和 s_p 都很大),Circle Loss 的重點是優化 s_n;對於 B,因為 s_n 顯著下降,Circle Loss 會降低它的梯度,並因此會施加溫和的優化。
Circle Loss 的決策邊界是圓形的,與 s_n - s_p = m 直線有著明確的切點,而這個切點將成為明確的收斂目標。這是因為,對於同樣的損失值,該切點具有最小的類間-類間差距,是最容易維持的。
實驗
本文在三個特徵學習任務(人臉識別,行人再識別,細粒度圖像檢索)上,對 Circle Loss 進行了全面評估,結果如下:
表 1:使用不同主幹網絡和損失函數在 MFC1 數據集上得到的識別 rank-1 準確度(%)
表 2:使用 ResNet34 主幹網絡在 LFW、YTF 和 CFP-FP 上的人臉識別準確度
表 3:在 IJB-C 1:1 驗證任務上的真實接收率(%)比較
表 4:在行人再識別任務上的 Circle 損失的評估,這裡報告了 R-1 準確度(%)和 mAP(%)
表 5:在 CUB-200-2011、Cars196 和 Stanford Online Products 上與當前最佳結果的比較,這裡報告的是 R@K(%)
可以看到,在上述三個任務中,Circle Loss 都表現出非常強的競爭力。在人臉上,採用分類模式,Circle Loss 超過了該領域先前的最好方法(如 AM-Softmax,ArcFace);在細粒度檢索中,採用樣本對學習方式,Circle Loss 又媲美了該領域先前的最高方法(如 Multi-Simi)。
值得一提的是,以往這兩種範式下的損失函數形式通常大相逕庭,而 Circle Loss 則使用完全一樣的公式獲得了上述表現,且每個參數都具有較好的可解讀性。
下面這個關於收斂狀態分析的實驗,則進一步揭示了 Circle Loss 的優化特性。
圖 3:Circle Loss 收斂狀態分析
圖 3 在 (s_n, s_p) 坐標中展現收斂前後的相似性狀態,本文關注兩種狀態:
首先,是綠色散布點代表的收斂後狀態;其次,是藍色累積點反映的通過決策面時瞬間的分布密度。圖 3(a) 中的 AMSoftmax 和(b)中的 Circle Loss 具有相切的決策面,可以看到,收斂後,Circle Loss 的收斂狀態更緊密。而且,這些狀態都是從一個相對狹小的通道通過決策面並最終收斂的。
當對 Circle Loss 使用 (c) 中更優的參數,這個現象更為明顯。該觀察從實驗角度驗證了圖 1 中,對 Circle Loss 傾向一個特定收斂狀態 T 的猜測和理論分析。
原文還有更多深入的實驗來分析重要超參的影響、訓練全過程相似性的變化過程。論文進行 CVPR 2020 oral presentation 及交流之前,可先前往 https://arxiv.org/pdf/2002.10857.pdf 一睹為快。
結論
本文對深度特徵學習做出了兩項深刻理解。第一,包括 triplet 損失和常用的分類損失函數在內的大多數損失函數具有統一的內在形式,它們都將類間相似度與類內相似度嵌入到相似性配對中進行優化。第二,在相似度配對內部,考慮各個相似度得分偏離理想狀態的程度不同,應該給予它們不同的優化強度。
將這兩項理解聯合起來,便得到 Circle Loss。通過讓每個相似性得分以不同的步調學習,Circle Loss 賦予深度特徵學習的更靈活的優化途徑,以及更明確的收斂目標;並且,它為兩種基本學習範式(樣本對和分類學習)提供了統一的解讀以及統一的數學公式。
在人臉識別、行人再識別、細粒度的圖像檢索等多種深度特徵學習任務上,Circle Loss 都取得了極具競爭力的性能。
參考文獻
E. Hoffer and N. Ailon. Deep metric learning using triplet network. In International Workshop on Similarity-Based Pattern Recognition, pages 84–92. Springer, 2015.W. Liu, Y. Wen, Z. Yu, and M. Yang. Large-margin softmax loss for convolutional neural networks. In ICML, 2016.F. Schroff, D. Kalenichenko, and J. Philbin. Facenet: A unified embedding for face recognition and clustering. InProceedings of the IEEE conference on computer vision and pattern recognition, pages 815–823, 2015.Y. Sun, X. Wang, and X. Tang. Deep learning face repre- sentation from predicting 10,000 classes. In Proceedings of the IEEE conference on computer vision and pattern recog- nition, pages 1891–1898, 2014.F. Wang, J. Cheng, W. Liu, and H. Liu. Additive margin softmax for face verification. IEEE Signal Processing Let- ters, 25(7):926–930, 2018.H. Wang, Y. Wang, Z. Zhou, X. Ji, D. Gong, J. Zhou, Z. Li, and W. Liu. Cosface: Large margin cosine loss for deep face recognition. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.Y. Wen, K. Zhang, Z. Li, and Y. Qiao. A discrimina- tive feature learning approach for deep face recognition. InEuropean conference on computer vision, pages 499–515. Springer, 2016.