Label Smoothing分析
點擊上方“小白學視覺”,選擇加"星標"或“置頂”
重磅干貨,第一時間送達
導讀
?Label Smoothing在圖像識別中能穩(wěn)定漲點,但在人臉的loss里加上Label Smoothing卻是掉點的,本文作者詳細分析了該方法的問題,Label Smoothing起到的作用實際上是抑制了feature norm,此時只能控制角度,起到反向優(yōu)化的作用,因此在人臉loss上加Label Smoothing效果會變差。?
有挺多人問過我一個問題:Label Smoothing在圖像識別中能穩(wěn)定漲點,在人臉的loss里加上Label Smoothing是否有用呢?
我挺早之前就注意到了這件事,當時也做了實驗,發(fā)現(xiàn)直接應用在人臉相關的loss上,是掉點的。其實DL發(fā)展到現(xiàn)在,可以說如果你想到了一個非常簡單的排列組合式idea,而經(jīng)過survey沒見過別人這么做,那大概率這個方法是不work的...
但這事到這當然不算完,我們得分析一下它為啥不work。
要引出Label Smoothing,首先我們要知道,Softmax Cross Entropy不僅可以做分類任務(目標為one-hot label),還可以做回歸任務(目標為soft label)。設網(wǎng)絡輸出的softmax prob為p,soft label為q,那Softmax Cross Entropy定義為:

而Label Smoothing雖然仍是做分類任務,但其目標q從one-hot label變?yōu)閟oft label了,原來是1的位置變?yōu)?
?,其他的原來是0的位置變?yōu)?
?,?
?通常取0.1。
假設一個6分類任務,之前的?
?就變成了?
?,直觀上看,這個目標還是很奇怪的,如果一個樣本網(wǎng)絡非常確認其類別,給了個0.99的置信度,難道經(jīng)過Label Smoothing,還要反向優(yōu)化不成?
這個問題其實在概率層面上是沒法解釋的,從概率上看,確實會有發(fā)生反向優(yōu)化的情況,但為什么這樣可以漲點呢?
看看Hinton組對Label Smoothing的分析文章[1],里面有一張圖比較有意思:

熟悉人臉識別loss的人會發(fā)現(xiàn),這個Label Smoothing得到的特征分布,怎么跟人臉loss的效果這么像?竟然都可以起到讓每個類別的樣本聚攏的效果。
而少數(shù)細心的朋友可能會發(fā)現(xiàn)這里的玄機:不做Label Smoothing(標注為w/o LS)的feature norm,普遍比做了LS(標注為w/ LS)的要大很多!w/o LS時最大可以達到1.6,而w/ LS時只有0.4。
回顧之前的文章,減小feature norm實際上等效于降低s,較低的s會使softmax prob的最大值降低,如下圖所示(來自于zhuanlan.zhihu.com/p/52?):


?后,我們只會用到sigmoid曲線上中間的一段,平緩的區(qū)域基本上不存在了,樣本的移動幾乎永不終止,因此特征會比不加LS更加聚攏。
?,loss曲面上不再存在平緩區(qū)域,處處都有較大的梯度指向各個類中心,所以特征會更加聚攏。而之所以人臉上不work,是因為我們通常會使用固定的s,此時Label Smoothing無法控制feature norm,只能控制角度,就會起到反向優(yōu)化的作用,因此在人臉loss上加Label Smoothing效果會變差。參考
When Does Label Smoothing Help??https://arxiv.org/pdf/1906.02629.pdf
下載1:OpenCV-Contrib擴展模塊中文版教程 在「小白學視覺」公眾號后臺回復:擴展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標跟蹤、生物視覺、超分辨率處理等二十多章內容。 下載2:Python視覺實戰(zhàn)項目52講 在「小白學視覺」公眾號后臺回復:Python視覺實戰(zhàn)項目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學校計算機視覺。 下載3:OpenCV實戰(zhàn)項目20講 在「小白學視覺」公眾號后臺回復:OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學習進階。 交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學影像、GAN、算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關微信群。請勿在群內發(fā)送廣告,否則會請出群,謝謝理解~

