博客專欄

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

        CVPR 2022 | 這個自蒸餾新框架新SOTA,降低了訓練成本,無需修改網絡

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

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


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


        圖片


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


        DLB 自蒸餾框架


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


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

         

        圖片

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


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


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


        1. 本文的任務


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


        2. 本文創新與貢獻


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

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

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


        DLB 自蒸餾框架訓練機制


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


        數據集定義為圖片,包含 n 個樣本的 Batch 定義為:圖片,以圖像分類為例,圖片先進行數據增強,然后將其輸入神經網絡,優化預測輸出與真值間的交叉熵損失:


        圖片

         

        上式中 p_i 的表達式如下:


        圖片

        θ為網絡參數,K 表示分類類別數,τ表示溫度。


        為了提高泛化能力,傳統的 vanilla 知識蒸餾通過額外優化的 KL 散度損失來遷移預先訓練好的 teacher 網絡的知識,即:


        圖片


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

         

        圖片

        圖 2:DLB 訓練方式示意圖


        如圖 2 所示,數據樣本在第 t 次迭代時的定義為圖片,神經網絡的參數為θ_t。


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

         

        圖片


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


        圖片


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


        圖片


        實驗設置


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


        圖片


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


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

         

        圖片


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


        圖片

        結語


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


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


        未來,OPPO 將持續研發該算法,并將其賦能到相關業務場景中,不斷提升 OPPO 產品的用戶體驗。



        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。

        伺服電機相關文章:伺服電機工作原理


        電容式接近開關相關文章:電容式接近開關原理
        接近開關相關文章:接近開關原理


        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新安县| 咸宁市| 额济纳旗| 博白县| 文水县| 玉林市| 皋兰县| 高尔夫| 来安县| 威海市| 观塘区| 新营市| 任丘市| 时尚| 沁源县| 镇赉县| 和平区| 临漳县| 宜君县| 黔西县| 衡山县| 临海市| 稷山县| 油尖旺区| 台南县| 宜州市| 阿拉善左旗| 安达市| 临沧市| 五原县| 马关县| 朝阳区| 新余市| 八宿县| 朝阳县| 繁昌县| 南阳市| 桂平市| 洛隆县| 贵德县| 南投县|