選單

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

新智元報道

編輯:LRS

【新智元導讀】

監督學習中一個重要的模組就是損失函數了,而最常見的損失函式就是交叉熵了。Google在NIPS2020上提出了一個損失函式SupCon,只需換掉交叉熵,準確率立刻提升2%,快來了解一下吧!

近年來,由於對比學習的應用,自監督表徵(self-supervised representation learning)學習在各種影象和影片任務中得到了顯著的發展。

對比學習方法通常指導模型在嵌入空間中將目標影象(anchor)和匹配影象(positive)的表徵結合起來,同時將anchor從許多非匹配影象(即negative影象)中分離出來。

這種操作基於一個假設,即標籤在自監督學習過程中是不可用的,positive影象通常是一個anchor的資料增強,negative影象通常從minbatch的訓練中選取。

然而,由於這種隨機抽樣,false negatives(negative影象是從anchor同一類樣本中生成的)會導致表徵質量的下降。

此外,如何確定最佳的方法產生positive的影象仍然是一個有挑戰性的研究領域。

與自監督的方法相反,全監督(fully-supervised)的方法可以使用標記資料從現有的同類示例中生成positive影象,與通常僅僅增加anchor所能達到的效果相比,提供了更多的預訓練可變性。然而,對比學習在全監督領域的成功應用還很少。

在 NeurIPS 2020展示的“Supervised Contrastive Learning”中,Google Research提出了一種新的損失函式,稱為 SupCon,它彌補了自監督學習和完全監督式學習學習之間的差距,並使對比學習能夠應用於監督環境。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

透過利用標記資料,SupCon 鼓勵將來自同一類的規範化嵌入拉得更近,而將來自不同類的嵌入拉得更遠。這簡化了positive影象選擇的過程,同時避免了潛在的錯誤否定。

由於每個anchor可以容納多個positive示例,這種方法可以改進正面示例的選擇,這些示例更加多樣化,同時仍然包含語義相關的資訊。

SupCon還允許標籤資訊在表徵學習中發揮積極作用,而不是像傳統的對比學習那樣僅限於在下游訓練中使用。

研究團隊聲稱,這是第一次使用對比損失在大規模影象分類問題上比常見的使用交叉熵損失訓練模型方法要更好。更重要的是,SupCon易於實現,訓練穩定,對一些資料集和體系結構(包括Transformer類模型)的 top-1精度提供了一致的改進,並且對影象損壞和超引數變化具有魯棒性。

對比損失: 自我監督的對比損失即對比每個anchor(即同一影象的增強版)一個positive樣例與一組negative樣例,後者包括整個minibatch的剩餘部分。

然而,本文中考慮的監督對比損失,將來自同一類別的所有樣本作為正的樣本集與來自同一個batch剩餘樣本的負的樣本集進行對比學習。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

有監督的對比學習框架

監督式對比學習框架支援系統可以看作是 SimCLR 和 N-pair 損失的一般化形式,前者使用與anchor程式相同的樣本產生的positive樣本,後者利用已知類標籤從不同樣本產生的positive樣本。

對每個anchor使用大量的positive和negative樣本,使之能夠達到sota效能,而不需要hard negative mining(即尋找類似anchor點的負樣本挖掘) ,可能難以調參。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

這種方法在結構上類似於自監督對比學習,只是改進了監督分類。給定一個輸入批資料,我們首先應用資料擴充套件兩次,以獲得該批資料中每個樣本的兩個副本或“檢視”(儘管可以建立和使用任意數量的擴充套件檢視)。

兩個副本透過編碼器網路進行前向傳播,最終嵌入到 l2標準化。根據標準實踐,透過可選的投影網路進一步傳播該表示,以幫助識別有意義的特性。對於投影網路的歸一化輸出,計算有監督的對比損失。

錨的正面包括來自與錨相同的批處理例項的表示,或者來自與錨相同標籤的其他例項的表示; 負面則包括所有其餘例項。為了測量下游任務的效能,固定上游向量表示後,在上面訓練一個線性分類器。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

在 CIFAR-10和 CIFAR-100以及 ImageNet 資料集上,與交叉熵、邊緣分類器(使用標籤)和自監督對比學習技術相比,SupCon都能夠提高了top1的準確率。

透過使用 SupCon,在使用 ResNet-50和 ResNet-200架構的 ImageNet 資料集上實現了極好的1級精度。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

在 ResNet-200上,實現了81。4% 的top1準確率,這比使用同一架構的最先進的交叉熵損失提高了0。8% (這對 ImageNet 來說是一個重大進步)。

除此之外,還比較了基於 transformer 的 ViT-B/16模型中的交叉熵和支援熵,發現在相同的資料增強機制下(沒有任何更高解析度的微調) ,交叉熵有一致的改善(ImageNet 為77。8% 對76% ,CIFAR-10為92。6% 對91。6%)。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

我們還分析論證了損失函式的梯度鼓勵我們從硬正面和硬負面中學習。來自硬正/負的梯度貢獻很大,而那些容易正/負的梯度貢獻很小。這種隱性特性使得對比損失可以避開顯性硬挖掘的需要,而顯式的hard mining是許多損失中微妙但關鍵的一部分,如triplet損失。

在論文的補充材料種有完整的推導過程。

對於噪聲、模糊和 JPEG 壓縮等自然的破壞,SupCon系統也更具有魯棒性。與基準 ImageNet-C 資料集相比,平均損壞錯誤(mean Corruption Error, mCE)度量了效能的平均降低程度。

與交叉熵模型相比,SupCon模型在不同損壞情況下的最小均方誤差(mCE)值較低,顯示出更強的魯棒性。

同時,透過實驗證明,在一定的超引數範圍內,支援熵損失的敏感性小於交叉熵損失。

透過增強、最佳化和學習率的變化,我們觀察到對比損失的輸出方差顯著降低。此外,在保持所有其他超引數不變的情況下,應用不同的批次大小,可以使得在每個批次大小時,SupCon的 top-1精度始終比 cross-entropy 的精度高。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

這項工作提供了在監督分類領域的技術進步。有監督的對比學習可以以最小的複雜度提高分類器的準確性和魯棒性。經典的交叉熵損失可以看作是一個特殊的情況下,檢視對應的影象和學習嵌入在最終的線性層對應的標籤。

可以注意到,SupCon從大的batch size中獲益更多,如何能夠在小batch中訓練模型也是未來研究的一個重要課題。

文中涉及的程式碼已經上傳在了github上。

從自監督到全監督!Google 提出新損失函式SupCon,準確率提升2%!

參考資料:https://ai。googleblog。com/2021/06/extending-contrastive-learning-to。html