博客專欄

EEPW首頁 > 博客 > CVPR 2022 | 這個自蒸餾新框架新SOTA,降低了訓練成本,無需修改網(wǎng)絡(luò)

CVPR 2022 | 這個自蒸餾新框架新SOTA,降低了訓練成本,無需修改網(wǎng)絡(luò)

發(fā)布人:機器之心 時間:2022-04-09 來源:工程師 發(fā)布文章
OPPO 研究院聯(lián)合上海交通大學提出的新的自蒸餾框架DLB,無需額外的網(wǎng)絡(luò)架構(gòu)修改,對標簽噪聲具有魯棒性,并可大幅節(jié)約訓練的空間復雜度,在三個基準數(shù)據(jù)集的實驗中達到了 SOTA 性能。

深度學習促進人工智能(AI)領(lǐng)域不斷發(fā)展,實現(xiàn)了許多技術(shù)突破。與此同時,如何在有限硬件資源下挖掘模型潛能、提升部署模型的準確率成為了學界和業(yè)界的研究熱點。其中,知識蒸餾作為一種模型壓縮和增強的方法, 將泛化能力更強的「大網(wǎng)絡(luò)模型」蘊含的知識「蒸餾」到「小網(wǎng)絡(luò)模型」上,來提高小模型精度,廣泛地應(yīng)用于 AI 領(lǐng)域的全監(jiān)督、半監(jiān)督、自監(jiān)督、域遷移等各個方向。


近日, OPPO 研究院聯(lián)合上海交通大學將視角聚焦到知識蒸餾的范式本身,提出了新的自蒸餾框架:DLB(Self-Distillation from Last Mini-Batch),模型無需額外的網(wǎng)絡(luò)架構(gòu)修改,對標簽噪聲具有魯棒性,并大幅節(jié)約訓練的空間復雜度。此外,在三個基準數(shù)據(jù)的實驗中,模型達到了 SOTA 性能。相關(guān)論文「Self-Distillation from the Last Mini-Batch for Consistency Regularization」已被 CVPR 2022 收錄。


圖片


論文鏈接:https://arxiv.org/pdf/2203.16172.pdf


DLB 自蒸餾框架


如何減少蒸餾計算復雜度?


知識蒸餾通常可以劃分為三類,即離線蒸餾、在線蒸餾和自蒸餾。其中,自蒸餾具有訓練輕量、知識遷移效率高的特點,最近受到更多研究者的重視。

 

圖片

圖 1:本文方法與其他自蒸餾方法的比較


但是傳統(tǒng)的自蒸餾,例如 Be Your Own Teacher,在模型訓練過程中需要對模型結(jié)構(gòu)進行修改。除此以外,訓練成本高、計算冗余且效率低下也是自蒸餾需要攻克的難題。


為了解決上述難題,讓模型更好地部署到手機等終端設(shè)備中,OPPO 研究院和上海交通大學的研究員們提出了 DLB 自蒸餾框架。利用訓練時前后 Batch 預測結(jié)果的一致性,在無需對模型進行網(wǎng)絡(luò)結(jié)構(gòu)修改的前提下,就能降低訓練復雜度,增強模型泛化能力。


1. 本文的任務(wù)


提出更加輕量的自蒸餾方式,降低訓練的計算復雜度,提高模型準確率和泛化性。


2. 本文創(chuàng)新與貢獻


  • 提出 DLB,通過保存與下個 Batch 部分樣本重疊的軟目標(soft targets)進行自蒸餾。節(jié)省計算內(nèi)存,并且簡化訓練流程。

  • 讓訓練樣本的每次前向過程都與一次反向傳播過程相關(guān)聯(lián),從而提升學習效率。

  • 實驗分析了 DLB 訓練方法的動態(tài)影響,發(fā)現(xiàn)其正則化效果來源于即時生效的平滑標簽帶來的訓練一致性,為自蒸餾的理論研究提供了實驗基礎(chǔ)。


DLB 自蒸餾框架訓練機制


DLB 在訓練階段的每個 iteration 中,目標網(wǎng)絡(luò)扮演著「教師」和「學生」的雙重角色。其中,教師的作用是生成下一個 iteration 的軟目標進行正則化;學生的作用是從前一個 iteration 平滑的標簽中蒸餾,并最小化監(jiān)督學習目標。


數(shù)據(jù)集定義為圖片,包含 n 個樣本的 Batch 定義為:圖片,以圖像分類為例,圖片先進行數(shù)據(jù)增強,然后將其輸入神經(jīng)網(wǎng)絡(luò),優(yōu)化預測輸出與真值間的交叉熵損失:


圖片

 

上式中 p_i 的表達式如下:


圖片

θ為網(wǎng)絡(luò)參數(shù),K 表示分類類別數(shù),τ表示溫度。


為了提高泛化能力,傳統(tǒng)的 vanilla 知識蒸餾通過額外優(yōu)化的 KL 散度損失來遷移預先訓練好的 teacher 網(wǎng)絡(luò)的知識,即:


圖片


不同于以往采用預先訓練 teacher 模型的方式生成(P_i^τ ) ?,DLB 采用訓練中前一個 Batch 蘊含的信息生成(P_i^τ ) ?,并將其作為正則化的即時平滑標簽。

 

圖片

圖 2:DLB 訓練方式示意圖


如圖 2 所示,數(shù)據(jù)樣本在第 t 次迭代時的定義為圖片,神經(jīng)網(wǎng)絡(luò)的參數(shù)為θ_t。


B_t 和 B_(t-1)是通過使用數(shù)據(jù)采樣器獲得,在前向過程后計算 L_CE。每個小批次的一半限制為與上一個 iteration 一致,其余一半與下一個 iteration 一致。之后,前半部分小批次利用上一個 iteration 中生成的動態(tài)軟目標進行學習。即圖片由 t-1 次迭代的軟標簽(soften labels)圖片生成。因此,引入的正則化損失公式如下:

 

圖片


存儲平滑標簽只需要很少的額外內(nèi)存成本,所以帶來的額外計算成本很低。整體損失函數(shù)由下式表示:


圖片


綜上,DLB 算法整體的訓練的偽代碼如下所示:


圖片


實驗設(shè)置


研究員們采用三個圖像分類基準數(shù)據(jù)集評估性能,包括 CIFAR-10、CIFAR-100TinyImageNet。實驗結(jié)果都達到了最佳性能,如下表所示:


圖片


具體而言,在平均錯誤率層面, DLB 在 CIAFR-100 改進幅度為 0.83% 至 2.50%,在 CIFAR-10 上為 0.37% 至 1.01%,在 TinyImageNet 上為 0.81% 至 3.17。值得一提的是,DLB 的表現(xiàn)明顯優(yōu)于 Tf-KD 和 PS-KD,這證明了 DLB 在模型泛化提升上的優(yōu)勢。


為了評估 DLB 與基于數(shù)據(jù)增強正則化方法的兼容性,研究員在 CIFAR-10 和 CIFAR-100 上將 DLB 與 CutMix、CutOut 和 DDGSD 相結(jié)合。如下所示,實驗表明通過結(jié)合 DLB 和基于增強的正則化,可以實現(xiàn)額外的性能增益。

 

圖片


為了證明魯棒性,研究員在訓練之前向 CIFAR-100、CIFAR-10 隨機注入標簽噪聲,實驗結(jié)果如下圖所示,DLB 可以有效地抵抗標簽噪聲并提高整體性能。 


圖片

結(jié)語


本文提出了一種基于自蒸餾思想的深度學習訓練策略,將自蒸餾思想融入到模型訓練過程中,對傳統(tǒng)知識蒸餾進行改進,無需額外預先訓練 teacher 的過程。通過在三個基準數(shù)據(jù)集上進行實驗,多維度論證了 DLB 訓練策略的有效性與普適性。


當下,深度學習網(wǎng)絡(luò)模型結(jié)構(gòu)復雜度不斷提升,使用有限硬件資源開發(fā)和部署 AI 模型成為新的科研問題。在本文中,研究員設(shè)計的 DLB 訓練策略,在某種程度上解決了「不增加模型復雜度,提高模型準確率」這一業(yè)界難題。


未來,OPPO 將持續(xù)研發(fā)該算法,并將其賦能到相關(guān)業(yè)務(wù)場景中,不斷提升 OPPO 產(chǎn)品的用戶體驗。



*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。

伺服電機相關(guān)文章:伺服電機工作原理


電容式接近開關(guān)相關(guān)文章:電容式接近開關(guān)原理
接近開關(guān)相關(guān)文章:接近開關(guān)原理


關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉