精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何度量知識蒸餾中不同數據增強方法的好壞?

CVer ? 來源:CVer ? 2023-02-25 15:41 ? 次閱讀

1. 研究背景與動機

知識蒸餾(knowledge distillation,KD)是一種通用神經網絡訓練方法,它使用大的teacher模型來 “教” student模型,在各種AI任務上有著廣泛應用。數據增強(data augmentation,DA) 更是神經網絡訓練的標配技巧。

知識蒸餾按照蒸餾的位置通常分為(1)基于網絡中間特征圖的蒸餾,(2)基于網絡輸出的蒸餾。對于后者來說,近幾年分類任務上KD的發展主要集中在新的損失函數,譬如ICLR’20的CRD和ECCV’20的SSKD將對比學習引入損失函數,可以從teacher模型中提取到更豐富的信息,供student模型學習,實現了當時的SOTA。

本文沒有探索損失函數、蒸餾位置等傳統研究問題上, 我們延用了最原始版本的KD loss (也就是Hinton等人在NIPS’14 workshop上提出KD的時候用的Cross-Entropy + KL divergence )。我們重點關注網絡的輸入端:如何度量不同數據增強方法在KD中的好壞?(相比之下,之前的KD paper大多關注網絡的中間特征,或者輸出端)。系統框圖如下所示,本文的核心目標是要提出一種指標去度量圖中 “Stronger DA” 的強弱程度。

7b96bbf2-b351-11ed-bfe3-dac502259ad0.png

這一切起源于一個偶然的實驗發現:在KD中延長迭代次數,通常可以非常明顯地提升KD的性能。譬如KD實驗中常用的ResNet34/ResNet18 pair, 在ImageNet-1K上,將迭代次數從100 epochs增加到200 epochs,可以將top1/top5準確率從70.66/89.88提升到71.38/90.59, 達到當時的SOTA方法CRD的性能(71.38/90.49)。這顯得很迷,將最baseline的方法訓練久一點就可以SOTA?經過很多實驗分析我們最終發現,是數據增強在背后起作用。

直覺上的解釋是:每次迭代,數據增強是隨機的,得到的樣本都不一樣。那么,迭代次數變多,student見到的不一樣的樣本就越多,這可以從teacher模型中提取到更豐富的信息(跟對比學習loss似乎有著異曲同工之妙),幫助student模型學習。

很自然我們可以進一步推想:不同數據增強方法引入的數據“多樣性”應該是不同的,譬如我們期待基于強化學習搜出來的AutoAugment應該要比簡單的隨機翻轉要更具有多樣性。簡單地說,這篇paper就是在回答:具體怎么度量這種多樣性,以及度量完之后我們怎么在實際中應用。

為什么這個問題重要?(1)理論意義:幫助我們更深地理解KD和DA,(2)實際意義:實驗表明在KD中使用更強的DA總能提高性能,如果我們知道了什么因素在控制這種“強弱”,那么我們就可以締造出更強的DA,從而坐享KD性能的提升。

2. 主要貢獻和內容

文章的主要貢獻是三點:

(1)我們提出了一個定理來嚴格回答什么樣的數據增強是好的,結論是:好的數據增強方法應該降低teacher-student交叉熵的協方差。

定理的核心部分是看不同數據增強方法下訓練樣本之間的相關性,相關性越大意味著樣本越相似,多樣性就越低,student性能應該越差。這個直覺完全符合文中的證明,這是理論上的貢獻。值得一提的是,相關性不是直接算原始樣本之間的相關性,而是算樣本經過了teacher得到的logits之間的相關性,也就是,raw data層面上樣本的相關性不重要,重要的是在teacher看來這些樣本有多么相似,越不相似越好。

(2)基于這個定理,提出了一個具體可用的指標(stddev of teacher’s mean probability, T. stddev),可以對每一種數據增強方法算一個數值出來, 按照這個數值排序,就知道哪種數據增強方法最好。文中測試了7種既有數據增強方法, 發現CutMix最好用。

(3)基于該定理,提出了一種新的基于信息熵篩選的數據增強方法,叫做CutMixPick,它是在CutMix的基礎上挑選出熵最大的樣本(熵大意味著信息量大,多樣性多)進行訓練。實驗表明,即使是使用最普通的KD loss也可以達到SOTA KD方法(例如CRD)的水平。

3. 實驗效果

文中最重要的實驗是,驗證提出的指標(T. Stddev)是否真的能刻畫不同數據增強方法下student性能(S. test loss)的好壞,也就是二者之間的相關性如何。結果表明:相關性顯著!

文章總共測試了9種數據增強方法,我們在CIFAR100,Tiny ImageNet, ImageNet100上均做了驗證,相關性都很強,p-value多數情況下遠小于5%的顯著性界限,如下所示:

7ba9d214-b351-11ed-bfe3-dac502259ad0.png

7bde4698-b351-11ed-bfe3-dac502259ad0.png

這其中最有意思的一點是,縱軸是student的性能,而橫軸的指標是完全用teacher計算出來的,對于student沒有任何信息,但是somehow,二者呈現出很強的相關性。這說明,KD中對DA好壞的評價很可能獨立于student的。同時,對于不同teacher、數據集,DA之間的相對排序也比較穩定(譬如CutMix穩定地比Cutout要好)。這些都意味著我們在一種網絡、數據集下找到的好的DA有很大概率可以遷移到其他的網絡跟數據集中,大大提升了實際應用價值。

4. 總結和局限性

本文關注數據增強在知識蒸餾中的影響,在理論和實際算法方面均有貢獻,主要有三點:(1) 我們對 “如何度量知識蒸餾中不同數據增強方法的好壞” 這一問題給出了嚴格的理論分析(答:好的數據增強方法應該最小化teacher-student交叉熵的協方差);(2)基于該理論提出了一個實際可計算的度量指標(stddev of teacher’s mean probability);(3)最后提出了一個基于信息熵篩選的新數據增強方法(CutMixPick),可以進一步提升CutMix,在KD中達到新的SOTA性能。






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4717

    瀏覽量

    100030
  • CRD
    CRD
    +關注

    關注

    0

    文章

    14

    瀏覽量

    3996

原文標題:NeurIPS 2022 | 如何度量知識蒸餾中不同數據增強方法的好壞?一種統計學視角

文章出處:【微信號:CVer,微信公眾號:CVer】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    面向對象軟件度量C&K方法的研究與改進

    在現有面向對象軟件度量方法度量準則的基礎上,結合面向對象技術特性,對C&K面向對象度量方法進行了分析和改進,提出了類的復雜性、類的
    發表于 05-25 21:50 ?12次下載

    基于AHP度量模型的安全管理度量方法

    本文以GB17859、ISO/IEC17799 等相關標準作為指導依據,針對信息安全管理績效的 度量問題提出了一套基于AHP 模型的安全管理度量方法,并重點闡述了度量模型中
    發表于 06-18 09:36 ?28次下載

    基于等級保護的安全管理度量方法研究

    本文提出了一種基于國家等級保護標準GB17895 的安全管理度量方法,闡述了度量要素的提取及度量結果的量化等問題的解決方案,并依據ISO/IEC17799 標準設計了安全管理
    發表于 08-24 15:22 ?21次下載

    構件內聚性度量方法研究

    構件的內聚性度量是衡量構件質量的一個重要指標。度量構件內聚度的經典方法程序切片,由于切片劃分的不同,其度量值不同。本文不僅很好地度量構件的內
    發表于 01-09 11:58 ?7次下載

    面向云數據的隱私度量研究進展

    的隱私度量方法進行綜述:首先,對隱私保護技術和隱私度量進行概述,給出攻擊者背景知識的量化方法,提出云數據
    發表于 12-15 16:46 ?0次下載
    面向云<b class='flag-5'>數據</b>的隱私<b class='flag-5'>度量</b>研究進展

    混雜數據的多核幾何平均度量學習

    在機器學習和模式識別任務,選擇一種合適的距離度量方法是至關重要的,度量學習主要利用判別性信息學習一個馬氏距離或相似性度量.然而,大多數現有
    發表于 12-25 17:16 ?0次下載

    內存取證的內核完整性度量方法

    內核級攻擊對操作系統的完整性和安全性造成嚴重威脅.當前,內核完整性度量方法度量對象選取上存在片面性,且大部分方法采用周期性度量,無法避免T
    發表于 01-10 14:52 ?2次下載

    深度學習:知識蒸餾的全過程

    知識蒸餾的核心思想是通過遷移知識,從而通過訓練好的大模型得到更加適合推理的小模型。本文作者介紹了知識蒸餾的全過程,以及引用Hinton等人的
    的頭像 發表于 01-07 14:36 ?5947次閱讀

    基于知識蒸餾的惡意代碼家族檢測方法研究綜述

    近年來,惡意代碼變種層出不窮,惡意軟件更具隱蔽性和持久性,亟需快速有效的檢測方法來識別惡意樣本。針對現文中提出了一種基于知識蒸餾的惡意代碼家族檢測方法,該模型通過逆向反編譯惡意樣本,利
    發表于 04-20 14:49 ?9次下載
    基于<b class='flag-5'>知識</b><b class='flag-5'>蒸餾</b>的惡意代碼家族檢測<b class='flag-5'>方法</b>研究綜述

    電池修復技術:做蒸餾水的方法是怎樣的

    許多年前,該村經常停電,應急燈也很流行。 每個人都在玩電池逆變器。 電池和應急燈必須充滿蒸餾水。 如果您不愿購買它們,請使用以下本機方法: 這個方法很好。 用這種蒸餾
    發表于 05-18 17:15 ?2187次閱讀
    電池修復技術:做<b class='flag-5'>蒸餾</b>水的<b class='flag-5'>方法</b>是怎樣的

    若干蒸餾方法之間的細節以及差異

    以往的知識蒸餾雖然可以有效的壓縮模型尺寸,但很難將teacher模型的能力蒸餾到一個更小詞表的student模型,而DualTrain+SharedProj解決了這個難題。
    的頭像 發表于 05-12 11:39 ?1341次閱讀

    關于快速知識蒸餾的視覺框架

    知識蒸餾框架包含了一個預訓練好的 teacher 模型(蒸餾過程權重固定),和一個待學習的 student 模型, teacher 用來產生 soft 的 label 用于監督 student 的學習。
    的頭像 發表于 08-31 10:13 ?813次閱讀

    用于NAT的選擇性知識蒸餾框架

    盡管NAT在擁有許多潛在的優勢,目前的工作這類模型仍然在很大程度上依賴于句子級別的知識蒸餾(sequence-level knowledge distillation, KD)[2]。由于需要并行預測所有token,NAT對單
    的頭像 發表于 12-06 14:44 ?624次閱讀

    TPAMI 2023 | 用于視覺識別的相互對比學習在線知識蒸餾

    representation learning [1] 的擴展版本,論文講解鏈接為: https://zhuanlan.zhihu.com/p/574701719 摘要: 無需教師的在線知識蒸餾聯合地訓練多個學生模型并且相互地蒸餾
    的頭像 發表于 09-19 10:00 ?614次閱讀
    TPAMI 2023 | 用于視覺識別的相互對比學習在線<b class='flag-5'>知識</b><b class='flag-5'>蒸餾</b>

    任意模型都能蒸餾!華為諾亞提出異構模型的知識蒸餾方法

    相比于僅使用logits的蒸餾方法,同步使用模型中間層特征進行蒸餾方法通常能取得更好的性能。然而在異構模型的情況下,由于不同架構模型對特征的不同學習偏好,它們的中間層特征往往具有較大
    的頭像 發表于 11-01 16:18 ?786次閱讀
    任意模型都能<b class='flag-5'>蒸餾</b>!華為諾亞提出異構模型的<b class='flag-5'>知識</b><b class='flag-5'>蒸餾</b><b class='flag-5'>方法</b>