亚洲男人的天堂2018av,欧美草比,久久久久久免费视频精选,国色天香在线看免费,久久久久亚洲av成人片仓井空

在人工智能迅速發展的今天,深度神經網絡廣泛應用于各個研究領域并取得了巨大的成功,但也同樣面 臨著諸多挑戰.首先,為了解決復雜的問題和提高模型的訓練效果,模型的網絡結構逐漸被設計得深而復雜,難以 適應移動計算發展對低資源、低功耗的需求.知識蒸餾最初作為一種從大型教師模型向淺層學生模型遷移知識、提 升性能的學習范式被用于模型壓縮.然而隨著知識蒸餾的發展,其教師學生的架構作為一種特殊的遷移學習方 式,演化出了豐富多樣的變體和架構,并被逐漸擴展到各種深度學習任務和場景中,包括計算機視覺、自然語言處 理、推薦系統等等.另外,通過神經網絡模型之間遷移知識的學習方式,可以聯結跨模態或跨域的學習任務,避免知 識遺忘;還能實現模型和數據的分離,達到保護隱私數據的目的.知識蒸餾在人工智能各個領域發揮著越來越重要 的作用,是解決很多實際問題的一種通用手段.本文將近些年來知識蒸餾的主要研究成果進行梳理并加以總結,分析該領域所面臨的挑戰,詳細闡述知識蒸餾的學習框架,從多種分類角度對知識蒸餾的相關工作進行對比和分析, 介紹了主要的應用場景,在最后對未來的發展趨勢提出了見解

隨著深度神經網絡的崛起和演化,深度學習在 計算機視覺、自然語言處理、推薦系統等 各個人工智能的相關領域中已經取得了重大突破. 但是,深度學習在實際應用過程中的也存在著一些 巨大的挑戰.首先,為了應對錯綜復雜的學習任務, 深度學習的網絡模型往往會被設計得深而復雜:比 如早期的LeNet模型只有5層,發展到目前的通用 的ResNet系列模型已經有152層;伴隨著模型的 復雜化,模型的參數也在逐漸加重.早期的模型參數 量通常只有幾萬,而目前的模型參數動輒幾百萬.這 些模型的訓練和部署都需要消耗大量的計算資源, 且模型很難直接應用在目前較為流行的嵌入式設備 和移動設備中.其次,深度學習應用最成功的領域是 監督學習,其在很多任務上的表現幾乎已經超越了 人類的表現.但是,監督學習需要依賴大量的人工標 簽;而要實現大規模的標簽任務是非常困難的事情, 一方面是數據集的獲取,在現實場景中的一些數據 集往往很難直接獲取.比如,在醫療行業需要保護患 者的隱私數據,因而數據集通常是不對外開放的.另 一方面,大量的用戶數據主要集中在各個行業的頭 部公司的手中,一些中小型公司無法積累足夠多的 真實用戶數據,因此模型的效果往往是不理想的;此 外,標注過程中本身就需要耗費很大的人力、物力、 財力,這將極大限制人工智能在各個行業中的發展 和應用.最后,從產業發展的角度來看,工業化將逐 漸過渡到智能化,邊緣計算逐漸興起預示著AI將 逐漸與小型化智能化的設備深度融合,這也要求模 型更加的便捷、高效、輕量以適應這些設備的部署. 針對深度學習目前在行業中現狀中的不足, Hinton等人于2015首次提出了知識蒸餾(Knowledge Distillation,KD)[10],利用復雜的深層網絡模型向淺 層的小型網絡模型遷移知識.這種學習模型的優勢在于它能夠重用現有的模型資源,并將其中蘊含的 信息用于指導新的訓練階段;在跨領域應用中還改 變了以往任務或場景變化都需要重新制作數據集和 訓練模型的困境,極大地節省了深度神經網絡訓練 和應用的成本.通過知識蒸餾不僅能夠實現跨領域 和跨模態數據之間的聯合學習還能將模型和知識 表示進行分離,從而在訓練過程中將教師模型作為 “黑盒”處理,可以避免直接暴露敏感數據,達到隱私 保護效果.

知識蒸餾作為一種新興的、通用的模型壓縮和 遷移學習架構,在最近幾年展現出蓬勃的活力,其發 展歷程也大致經歷了初創期,發展期和繁榮期.在初 創期,知識蒸餾從輸出層逐漸過渡到中間層,這時期 知識的形式相對簡單,較為代表性的中間層特征蒸 餾的方法為Hints.到了發展期,知識的形式逐 漸豐富、多元,不再局限于單一的節點,這一時期較 為代表性的蒸餾方法有AT、FT.在2019年前 后,知識蒸餾逐漸吸引了深度學習各個領域研究人 員的目光,使其應用得到了廣泛拓展,比如在模型應 用上逐漸結合了跨模態、跨領域、持續學習、隱私保護等;在和其他領域交叉過程 中又逐漸結合了對抗學習、強化學習、元 學習、自動機器學習、自監督學習等. 如下圖1為知識蒸餾的發展歷程和各個時期較為代 表性的工作.

知識蒸餾雖然有了較為廣闊的發展,但是在其 發展過程和實際應用中也同樣面臨著這一些挑戰;知識蒸餾的挑戰主要可以分為實際應用中面臨的挑 戰和模型本身理論上的挑戰.應用中的挑戰主要有 模型問題、成本問題;而理論上面存在的主要挑戰也 是目前深度學習普遍存在的一些挑戰,包括模型的 不可解釋性等: 模型問題.在實際工業應用中針對不同的任務 教師模型多樣,而如果教師和學生模型不匹配,可能 會使學生模型無法模仿深層大容量的教師模型,即 大模型往往不能成為更好的老師.因此,應用中需要 考慮深層模型和淺層模型之間的容量差距,選擇相 匹配的教師學生模型. 成本問題.模型訓練過程對超參數較為敏感以及 對損失函數依賴較大,而相關原因很難用原理去解 釋,需要大量的實驗,因而模型的試錯成本相對較高. 可解釋性不足.關于知識蒸餾的原理解釋主要 是從輸出層標簽平滑正則化、數據增強等角度出發, 而關于其他層的方法原理解釋相對不足;目前,雖然 關于泛化邊界的研究也在興起,但是并不能全面解 釋知識的泛化問題,還需要有更進一步的探究,才能 保證理論的完備性.

目前,知識蒸餾已經成為一個熱門的研究課題, 關于知識蒸餾的論文和研究成果非常豐富.各種新 方法、新任務、新場景下的研究紛繁復雜,使得初學 者難以窺其全貌.當前已有兩篇關于知識蒸餾的綜 述,均發表于2021年.相較于前者,本文在 分類上作了進一步細化,如在知識形式上,本文關注 到了參數知識及蒸餾中常見的中間層的同構和異構 問題;雖然該文獻中也提及了基于圖的算法,但是本 文以為基于圖形式構建的知識表示是一種新興的、 獨立的、特殊的知識形式,單獨歸為一類更為合理. 相較于后者[40]本文在結構分類上更加宏觀,以知識 形式、學習方式和學習目的為主要內容將知識蒸餾 的基礎解析清楚,而后在此基礎之上對其交叉領域 和主要應用進行展開.本文的主要貢獻可總結如下:(1)結構較為完善,分類更加細化.對于知識的 分類,本文是依據知識蒸餾的發展脈絡對其進行歸 類并細化,增加了中間層知識、參數知識、圖表示知 識,完整地涵蓋了目前知識的全部形式.在文章的結 構上,既保證了分類的綜合性,又避免了過多分類造 成的雜糅,更為宏觀. (2)對比詳細,便于掌握.本文以表格的方式對 同的方法之間的優缺點、適用場景等進行詳細的總 結對比,以及對比了不同知識形式蒸餾的形式化方 法,使得讀者能夠快速準確地區分其中的不同點.(3)內容完整,覆蓋全面.本文遵循了主題式分 類原則不僅分析了單篇文獻,還分析相關領域中知 識蒸餾的重要研究.除此之外,本文以獨立章節對知 識蒸餾的學習目的,原理和解釋,發展趨勢等方面做 了較為全面的闡釋. 本文接下來將從知識蒸餾的整體框架從發,并 對其各個分類進行詳細的闡述,使得讀者能夠從宏 觀上對知識蒸餾有更全面的了解,以便更好地開展 相關領域的學習與研究.本文將按照以下結構組織:第2節首先介紹知識蒸餾的理論基礎及分類;第3~6節分別按照知識傳遞形式、學習方式、學習 目的、交叉領域的順序,從4個不同角度對知識蒸餾 的相關工作進行分類和對比,并分析不同研究方向 面臨的機遇和挑戰;第7節列舉知識蒸餾在計算機 視覺、自然語言處理、推薦系統等領域的一些應用性 成果;第8節對知識蒸餾的原理和可解釋性方面的 工作進行梳理;最后,對知識蒸餾在深度學習場景 下的未來發展趨勢提出一些見解,并進行全文總結.

理論基礎及分類**

知識蒸餾本質上屬于遷移學習的范疇,其主要 思路是將已訓練完善的模型作為教師模型,通過控 制“溫度”從模型的輸出結果中“蒸餾”出“知識”用于 學生模型的訓練,并希望輕量級的學生模型能夠學 到教師模型的“知識”,達到和教師模型相同的表現. 這里的“知識”狹義上的解釋是教師模型的輸出中 包含了某種相似性,這種相似性能夠被用遷移并輔 助其他模型的訓練,文獻[10]稱之為“暗知識”;廣義 上的解釋是教師模型能夠被利用的一切知識形式, 如特征、參數、模塊等等.而“蒸餾”是指通過某些 方法(如控制參數),能夠放大這種知識的相似性,并 使其顯現的過程;由于這一操作類似于化學實驗中 “蒸餾”的操作,因而被形象地稱為“知識蒸餾”.

如圖3是知識蒸餾模型的整體結構.其由一個 多層的教師模型和學生模型組成,教師模型主要負 責向學生模型傳遞知識,這里的“知識”包括了標簽 知識、中間層知識、參數知識、結構化知識、圖表示知 識.在知識的遷移過程中,通過在線或離線等不同的 學習方式將“知識”從教師網絡轉移到了學生網絡. 為了便于讀者快速學習和對比其中的差異,作者將 不同知識傳遞形式下的蒸餾方法的形式化表示及其 相關解釋整理為表1所示結果.此外,本文對知識蒸 餾相關研究進行了總結,主要從知識傳遞形式、學習 的方式、學習的目的、交叉領域、主要應用等方面對 其進行分類,其分類框架如圖4所示,具體內容將在 后續的文章中展開

知識傳遞形式

知識蒸餾方法的核心在于“知識”的設計、提取和 遷移方式的選擇,通常不同類型的知識來源于網絡模 型不同組件或位置的輸出.根據知識在教師學生模型 之間傳遞的形式可以將其歸類為標簽知識、中間層知 識、參數知識、結構化知識和圖表示知識.標簽知識一 般指在模型最后輸出的logits概率分布中的軟化目標 信息;中間層知識一般是在網絡中間層輸出的特征圖 中表達的高層次信息;參數知識是訓練好的教師模型 中存儲的參數信息;結構化知識通常是考慮多個樣本 之間或單個樣本上下文的相互關系;圖表示知識一般 是將特征向量映射至圖結構來表示其中的關系,以滿 足非結構化數據表示的學習需求.本節主要對蒸餾知 識的5類傳遞形式加以介紹,理清主流的知識蒸餾基礎 方法,后面介紹的各類蒸餾方法或具體應用都是以此 為基礎.相關的優缺點和實驗對比,見表2~表4所示.

學習方式

類似于人類教師和學生間的學習模式,神經網 絡的知識蒸餾學習方式也有著多種模式.其中,學生 模型基于預訓練好的、參數固定的教師模型進行蒸 餾學習被稱為離線蒸餾.相應 地,教師和學生模型同時參與訓練和參數更新的模 式則稱為在線蒸餾.如果學生 模型不依賴于外在模型而是利用自身信息進行蒸餾 學習,則被稱為自蒸餾學習,如圖7 所示.一般而言,蒸餾框架都是由一個教師模型和一 個學生模型組成,而有多個模型參與的蒸餾稱為多模型蒸餾;目前,大部分 蒸餾框架都是默認源訓練數據集可用的,但最近的 很多研究在不使用任何已知數據集的情況下實現 蒸餾,這類統稱為零樣本蒸餾(又稱為無數據蒸餾,).特別地,出于一些 隱私保護等目的,教師模型可以享有一些特權信息而 學生模型無法訪問,在這種約束下,形成特權蒸餾 學習.接下來,將分別介紹不同蒸餾學習方式的代表性工作.

主要應用

**計算機視覺 **

計算機視覺一直是人工智能的研究熱點領域之 一.近年來,知識蒸餾被廣泛應用于各種視覺任務達 到模型壓縮、遷移學習和隱私保護等目標.雖然知識 蒸餾的應用十分廣泛,但是由于各個研究方向的熱 度不同,所以相關研究的論文數量也會有很大的差異.本文重點引用了知識蒸餾在視覺上的熱點方向, 并列舉相關論文的方法供讀者查閱學習,而對于其 他一些方向可能存在取舍.目前,應用知識蒸餾的視 覺研究主要集中在視覺檢測和視覺分類上.視覺檢 測主要有目標檢測、人臉識別、行人檢測、姿勢檢測;而視覺分類的研究熱點主要是語義分割,如表5所 示.另外,視覺中還有一些其他應用比如視頻分 類[105]、深度估計和光流/場景流估計[169]等等.

**自然語言處理 **

自然語言處理(NaturalLanguageProcess, NLP)的發展非常迅速,從RNN、LSTM、ELMo再 到如今非常熱門的BERT,其模型結構逐漸變的非 常的深而復雜,需要耗費大量的資源和時間.這樣的 模型幾乎無法直接部署.因而,獲得輕量級、高效、有 效的語言模型顯得極為迫切.于是,知識蒸餾在 NLP領域也得到了極大的重視.目前,結合知識蒸 餾較為廣泛的NLP任務主要有機器翻譯(Neural MachineTranslation,NMT),問答系統(Question AnswerSystem,QAS)等領域.如表6,本節列舉了 知識蒸餾結合神經機器翻譯和問答系統的代表性的 研究工作.另外,BERT模型在近些年被廣泛應用于 NLP的各個領域,其重要性不言而喻,因此,我們在 表6中一并列舉并在下面對其作詳細介紹.

BERT模型是近年來自然語言中,應用最廣泛的 工具之一,它是由雙向編碼器表示的Transformer模 型組成.由于其強大的編碼表示能力,目前在自然語 言的各個任務中被廣泛應用.但是,BERT模型結構 非常復雜,參數量巨大,很難直接應用于模型的訓 練.目前的應用主要采用的預訓練加微調的方法,因 此,對BERT模型的壓縮顯得尤為必要.目前,這方 面的研究已經吸引的很多研究者的關注.提出的方法 主要有剪枝、量化、蒸餾、參數共享、權重分解.但是, 量化對模型的提升效果有限,權重分解和參數共 享等工作相對較少.因此,主要工作集中在剪枝和 蒸餾.此處將主要介紹表中列舉的較為經典的幾種 模型.首先,知識蒸餾結合BERT較早的方法是 DistilledBiLSTM[221]于2019年提出,其主要思想是 將BERTlarge蒸餾到了單層的BiLSTM中,其效果 接近EMLO,其將速度提升15倍的同時使模型的參 數量減少100倍.后來的研究方法逐漸豐富,如 BERTPKD[222]主要從教師的中間層提取豐富的知 識,避免在蒸餾最后一層擬合過快的現象.Distill BERT[223]在預訓練階段進行蒸餾,能夠將模型尺寸減 小40%,同時能將速度能提升60%,并且保留教師模 型97%的語言理解能力,其效果好于BERTPKD. TinyBERT[224]提出的框架,分別在預訓練和微調階 段蒸餾教師模型,得到了速度提升9.4倍但參數量 減少7.5倍的4層BERT,其效果可以達到教師模 型的96.8%.同樣,用這種方法訓出的6層模型的 性能超過了BERTPKD和DistillBERT,甚至接近BERTbase的性能.上述介紹的幾種模型都利用了 層次剪枝結合蒸餾的操作.MobileBERT[225]則主要 通過削減每層的維度,在保留24層的情況下,可以 減少4.3倍的參數同時提升4倍速度.在GLUE上 也只比BERTbase低了0.6個點,效果好于Tiny BERT和DistillBERT.此外,MobileBERT與Tiny BERT還有一點不同,就是在預訓練階段蒸餾之后, 直接在推測缺乏MobileBERT有一點不同,就是在 預訓練階段蒸餾之后,直接在MobileBERT上用任 務數據微調,而不需要再進行微調階段的蒸餾,更加 便捷.

綜上,BERT壓縮在近些年的發展還是較為顯 著的.這些方法對后BERT時代出現的大型預訓練 模型的如GPT系列等單向或雙向Transformer模 型的壓縮具有很大借鑒意義.

推薦系統

近些年,推薦系統(RecommenderSystems,RS) 被廣泛應用于電商、短視頻、音樂等系統中,對各個 行業的發展起到了很大的促進作用.推薦系統通 過分析用戶的行為,從而得出用戶的偏好,為用戶 推薦個性化的服務.因此,推薦系統在相關行業中 具有很高的商業價值.深度學習應用于推薦系統 同樣面臨著模型復雜度和效率的問題.但是,目前 關于推薦系統和知識蒸餾的工作還相對較少.本文 在表7中整理了目前收集到的相關文獻,可供研究 人員參考.

總結

近年來,知識蒸餾逐漸成為研究熱點而目前絕 大多數優秀的論文都是以英文形式存在,關于系統 性介紹知識蒸餾的中文文獻相對缺失;并且知識蒸 餾發展過程中融入了多個人工智能領域,相關文獻 紛繁復雜,不易于研究人員對該領域的快速、全面地 了解.鑒于此,本文對知識蒸餾的相關文獻進行了分 類整理和對比,并以中文形式對知識蒸餾領域的研 究進展進行了廣泛而全面的介紹.首先介紹了知識 蒸餾的背景和整體框架.然后分別按照知識傳遞的 形式、學習方式、學習目的、交叉領域的結合對知識 蒸餾的相關工作進行了分類介紹和對比,分析了各 類方法的優缺點和面臨的挑戰,并對研究趨勢提出 了見解.本文還從計算機視覺、自然語言處理和推薦 系統等方面概述了知識蒸餾在不同任務和場景的具 體應用,對知識蒸餾原理和可解釋性的研究進行了 探討.最后,從4個主要方面闡述了對知識蒸餾未來 發展趨勢的分析. 知識蒸餾通過教師學生的結構為深度神經網 絡提供了一種新的學習范式,實現了信息在異構或 同構的不同模型之間的傳遞.不僅能夠幫助壓縮模 型和提升性能,還可以聯結跨域、跨模態的知識,同 時避免隱私數據的直接訪問,在深度學習背景下的 多種人工智能研究領域具有廣泛的應用價值和研究 意義.目前,有關知識蒸餾的中文綜述性文章還比較 缺失.希望本文對知識蒸餾未來的研究提供有力的 借鑒和參考.

付費5元查看完整內容

相關內容

深度神經網絡(DNN)是深度學習的一種框架,它是一種具備至少一個隱層的神經網絡。與淺層神經網絡類似,深度神經網絡也能夠為復雜非線性系統提供建模,但多出的層次為模型提供了更高的抽象層次,因而提高了模型的能力。

目前,以深度學習為代表的人工智能算法憑借超大規模數據集以及強大的計算資源,在圖像分類、生物特征識別、醫療 輔助診斷等領域取得了優秀的成果并成功落地.然而,在許多實際的應用場景中,因諸多限制,研究人員無法獲取到大量樣本 或者獲取樣本的代價過高,因此研究圖像分類任務在小樣本情形下的學習算法成為了推動智能化進程的核心動力,同時也成為 了當下的研究熱點.小樣本學習指在監督信息數量有限的情況下進行學習并解決問題的算法.首先,從機器學習理論的角度 描述了小樣本學習困難的原因;其次,根據小樣本學習算法的設計動機將現有算法歸為表征學習、數據擴充、學習策略三大類, 并分析其優缺點;然后,總結了常用的小樣本學習評價方法以及現有模型在公用數據集上的表現;最后,討論了小樣本圖像分類 技術的難點及未來的研究趨勢,為今后的研究提供參考。

近年來,人工智能技術在大數據時代迎來了高速發展,從 早期的學術探索迅速轉變為實際應用.目前,以深度學習為 代表的人工智能算法憑借超大規模數據集以及強大的計算資 源,在圖像分類、生物特征識別、醫療輔助診斷等領域取得了優秀的成果并成功落地. 然而,當今現實場景中通常并不具備獲得大規模可訓練 數據的條件,這不利于許多傳統行業的智能化轉型.另一方 面,由于圖像分類算法在實際應用中起著關鍵性的作用,因此 面向圖像分類的小樣本學習的關鍵算法研究成為了產業智能 化轉型的驅動引擎之一.

深度學習以大規模數據集為前提,在圖像分類、目標檢 測、文本分析[1G3]等領域取得了顯著的成功.然而在實際場景 中,首先,由于成本、隱私、安全或道德問題,相關研究者很難 或不可能獲得大規模、高質量的數據及標注.例如,在醫療領 域,醫學影像的產生來源于病例,但少量的病例并不能夠輔助 機器對醫療影像進行分析.其次,在算法設計層面,研究者期 望機器學會以人類的方式進行學習,即在獲取少量樣本的情 況下,對樣本進行分類和識別,并且具有快速理解新概念并將 其泛化的能力. 為了能夠在監督信息數量有限的情況下進行學習,針對 小樣本學習(FewGshotLearning)[4G8]的研究應運而生.在小 樣本分類中,模型在一組具有豐富樣本的類別集上進行訓練, 這些類稱為基類,然后在類別不交叉的僅具有少量樣本的另 一組類別集(新類)上進行訓練與測試.

目前,針對小樣本學習的研究工作越來越豐富,隨著深度 學習的發展,涌現了很多新穎的小樣本學習方法[9G11].例如, 在模型表征階段采用自監督學習以更好地表征出圖像[12G15]; 在數據 擴 充 階 段,采 用 從 原 始 域 擴 充 或 從 語 義 空 間 擴 充 等[11,16G17]方式來處理小樣本學習任務;在學習階段,使用遷移 學習、度量學習、元學習等算法[18G24]以更好地尋找到一個有 良好泛化能力的模型.現有的小樣本綜述文獻[25G26]通常從 算法類別的角度進行歸納總結,而本文將從理論誤差分析以 及算法設計 動 機 的 角 度 來 進 行 綜 述,并 覆 蓋 近 年 來 取 得 的 成果. 本文首先從機器學習理論的角度描述了小樣本學習難以 泛化的原因;其次,依據小樣本學習算法的設計動機將現有算 法歸為表征學習、數據擴充、學習策略三大類,并評價其優缺 點;然后,總結了常用的小樣本學習評價方法以及現有模型在 公用數據集上的表現;最后,提出了一些有前景的研究方向, 為今后的研究提供參考。

付費5元查看完整內容

華南師范大學等《知識蒸餾》最新綜述論文

高性能的深度學習網絡通常是計算型和參數密集型的,難以應用于資源受限的邊緣設備. 為了能夠在低 資源設備上運行深度學習模型,需要研發高效的小規模網絡. 知識蒸餾是獲取高效小規模網絡的一種新興方法, 其主要思想是將學習能力強的復雜教師模型中的“知識”遷移到簡單的學生模型中. 同時,它通過神經網絡的互 學習、自學習等優化策略和無標簽、跨模態等數據資源對模型的性能增強也具有顯著的效果. 基于在模型壓縮和 模型增強上的優越特性,知識蒸餾已成為深度學習領域的一個研究熱點和重點. 本文從基礎知識,理論方法和應用 等方面對近些年知識蒸餾的研究展開全面的調查,具體包含以下內容:****(1)回顧了知識蒸餾的背景知識,包括它的 由來和核心思想;(2)解釋知識蒸餾的作用機制(3)歸納知識蒸餾中知識的不同形式,分為輸出特征知識、中間特 征知識、關系特征知識和結構特征知識;(4)詳細分析和對比了知識蒸餾的各種關鍵方法,包括知識合并、多教師 學習、教師助理、跨模態蒸餾、相互蒸餾、終身蒸餾以及自蒸餾;(5)介紹知識蒸餾與其它技術融合的相關方法, 包括生成對抗網絡、神經架構搜索、強化學習、圖卷積、其它壓縮技術、自動編碼器、集成學習以及聯邦學習;(6)對知識蒸餾在多個不同領域下的應用場景進行了詳細的闡述(7)討論了知識蒸餾存在的挑戰和未來的研究方向.

1. 引言

深度學習由于對目標多樣性變化具有很好的魯 棒性,近年來得到廣泛的關注并取得快速的發展. 然而性能越好的深度學習模型往往需要越多的資 源,使其在物聯網、移動互聯網等低資源設備的應 用上受到限制. 因此研究人員開始對高效的(Efficient)深度學習模型展開研究,其目的是使具有高性能 的模型能夠滿足低資源設備的低功耗和實時性等要 求,同時盡可能地不降低模型的性能. 當前,主要 有 5 種方法可以獲得高效的深度學習模型**:直接手 工設計輕量級網絡模型、剪枝、量化、基于神經架 構搜索(Neural Architecture Search,NAS)[1]的網絡自 動化設計以及知識蒸餾(Knowledge Distillation,KD)[2]**. 其中,知識蒸餾作為一種新興的模型壓縮方 法,目前已成為深度學習領域的一個研究熱點和重 點. 國內外許多大學和研究機構已經對知識蒸餾展 開了深入研究,并且每年在機器學習和數據挖掘的 國際頂級會議和知名期刊中都有關于知識蒸餾的文 章發表.

知識蒸餾是一種教師-學生(Teacher-Student)訓 練結構,通常是已訓練好的教師模型提供知識,學 生模型通過蒸餾訓練來獲取教師的知識。它可以以 輕微的性能損失為代價將復雜教師模型的知識遷移 到簡單的學生模型中. 在后續的研究中,學術界和 工業界擴展了知識蒸餾的應用范疇,提出了利用知 識蒸餾來實現模型性能的增強. 基于此,本文根據 應用場景劃分出基于知識蒸餾的模型壓縮和模型增 強這兩個技術方向,即獲得的網絡模型是否為了應 用于資源受限的設備. 圖 1 給出了這兩種技術對比 的一個例子,其中的教師模型都是提前訓練好的復 雜網絡. 模型壓縮和模型增強都是將教師模型的知 識遷移到學生模型中. 所不同的是,模型壓縮是教 師網絡在相同的帶標簽的數據集上指導學生網絡的 訓練來獲得簡單而高效的網絡模型,如左圖的學生 是高效的小規模網絡. 模型增強則強調利用其它資 源(如無標簽或跨模態的數據)或知識蒸餾的優化策 略(如相互學習和自學習)來提高一個復雜學生模型 的性能. 如右圖中,一個無標簽的樣本同時作為教 師和學生網絡的輸入,性能強大的教師網絡通常能 預測出該樣本的標簽,然后利用該標簽去指導復雜 的學生網絡訓練.

本文重點收集了近些年在人工智能、機器學習 以及數據挖掘等領域的國際頂級會議(如 ICCV, ICML,EMNLP,KDD)與重要學術期刊(如 PAMI, TOIS,TKDE,TMM)上有關知識蒸餾的論文并加以 整理、歸納和分析. 據我們所知,目前國內沒有知 識蒸餾相關的中文綜述,而先前兩篇英文綜述[3,4] 和我們工作相似,但本文進一步完善了知識蒸餾的 綜述. 具體地,本文與先前的英文綜述[3,4]至少有以 下三點的不同:

  • (1)先前的研究都忽略了知識蒸餾在模型增強 上的應用前景。在本文的研究調查中,知識蒸餾不 僅可以用于模型壓縮,它還能通過互學習和自學習 等優化策略來提高一個復雜模型的性能. 同時,知 識蒸餾可以利用無標簽和跨模態等數據的特征,對 模型增強也具有顯著的提升效果.

  • (2)先前的研究都沒有關注到結構化特征知 識,而它在知識架構中又是不可或缺的。 某個結構 上的知識往往不是單一的,它們是有關聯的、多個 知識形式組合. 充分利用教師網絡中的結構化特征 知識對學生模型的性能提升是有利的,因此它在近 兩年的工作中越發重要[5,6].

  • (3)本文從不同視角給出了基于知識蒸餾的描 述,并提供了更多的知識介紹。 在知識蒸餾的方法 上,本文增加了知識合并和教師助理的介紹;在技 術融合的小節,本文增加了知識蒸餾與自動編碼器、 集成學習和聯邦學習的技術融合;在知識蒸餾的應 用進展中,本文分別介紹了知識蒸餾在模型壓縮和 模型增強的應用,并增加了多模態數據和金融證券 的應用進展;在知識蒸餾的研究趨勢展望中,本文 給出了更多的研究趨勢,特別是介紹了模型增強的 應用前景.

總的來說,本文在文獻[3,4]基礎上,以不同的 視角,提供更加全面的綜述,以便為后續學者了解 或研究知識蒸餾提供參考指導.

本文組織結構如圖 2 所示. 第 2 節回顧了知識 蒸餾的背景知識,包括它的由來;第 3 節解釋知識 蒸餾的作用機制,即為什么知識蒸餾是有效的;第 4 節歸納知識蒸餾中知識的不同形式;第 5 節詳細 分析了知識蒸餾的各種方法,其強調的是知識遷移 的方式;第 6 節介紹知識蒸餾與其它技術融合的相 關方法;第 7 節歸納知識蒸餾的應用進展;第 8 節 給出了知識蒸餾的研究趨勢展望. 最后,第 9 節對 本文工作進行總結.

2. 知識蒸餾的提出

知識蒸餾與較早提出的并被廣泛應用的一種機 器學習方法的思想較為相似,即遷移學習[7]. 知識蒸 餾與遷移學習都涉及到知識的遷移,然而它們有以 下四點的不同: (1) 數據域不同. 知識蒸餾中的知識通常是在同 一個目標數據集上進行遷移,而遷移學習中的知識 往往是在不同目標的數據集上進行轉移. (2) 網絡結構不同. 知識蒸餾的兩個網絡可以是 同構或者異構的,而遷移學習通常是在單個網絡上 利用其它領域的數據知識. (3) 學習方式不同. 遷移學習使用其它領域的豐 富數據的權重來幫助目標數據的學習,而知識蒸餾 不會直接使用學到的權重. (4) 目的不同. 知識蒸餾通常是訓練一個輕量級 的網絡來逼近復雜網絡的性能,而遷移學習是將已 經學習到相關任務模型的權重來解決目標數據集的 樣本不足問題.

3. 知識蒸餾的作用機制

Hinton 等人[2]認為,學生模型在知識蒸餾的過 程中通過模仿教師模型輸出類間相似性的“暗知識” 來提高泛化能力. 軟目標攜帶著比硬目標更多的泛 化信息來防止學生模型過擬合. 雖然知識蒸餾已經 獲得了廣泛的應用,但是學生模型的性能通常是僅接 近于教師模型. 特別地,給定學生和教師模型相同的 大小卻能夠讓學生模型的性能超越教師模型[12],性 能越差的教師模型反倒教出了更好的學生模型[13]. 為了更好地理解知識蒸餾的作用,一些工作從數學 或實驗上對知識蒸餾的作用機制進行了證明和解 釋. 本文歸納為以下幾類:

(1) 軟目標為學生模型提供正則化約束. 這一 結論最早可以追溯到通過貝葉斯優化來控制網絡超 參數的對比試驗[14],其表明了教師模型的軟目標為 學生模型提供了顯著的正則化. 軟目標正則化的作 用是雙向的,即還能將知識從較弱的教師模型遷移 到能力更強大的學生模型中[15,16]. 一方面,軟目標 通過標簽平滑訓練提供了正則化[15,16],標簽平滑是 通過避免了過分相信訓練樣本的真實標簽來防止訓 練的過擬合[15]. 另一方面,軟目標通過置信度懲罰 提供了正則化[12],置信度懲罰讓學生模型獲得更好 的泛化能力,其主要依賴于教師模型對正確預測的 信心. 這兩種正則化的形式已經在數學上得到了證 明. 總的來說,軟目標通過提供標簽平滑和置信度 懲罰來對學生模型施加正則化訓練. 因此,即使沒 有強大的教師模型,學生模型仍然可以通過自己訓 練或手動設計的正則化項得到增強[16].

(2) 軟目標為學生模型提供了“特權信息” (Privileged Information). “特權信息”指教師模型 提供的解釋、評論和比較等信息[17]. 教師模型在訓 練的過程中將軟目標的“暗知識”遷移到學生模型 中,而學生模型在測試的過程中并不能使用“暗知 識”. 從這個角度看,知識蒸餾是通過軟目標來為 學生模型傳遞“特權信息”.

(3) 軟目標引導了學生模型優化的方向. Phuong 等人[18]從模型訓練的角度證明了軟目標能引導學生 模型的優化方向. 同時,Cheng 等人[19]從數學上驗 證了軟目標使學生模型比從原始數據中進行優化學 習具有更高的學習速度和更好的性能.

4 蒸餾的知識形式

原始知識蒸餾(Vanilla Knowledge Distillation)[2] 僅僅是從教師模型輸出的軟目標中學習出輕量級的 學生模型. 然而,當教師模型變得更深時,僅僅學 習軟目標是不夠的. 因此,我們不僅需要獲取教師 模型輸出的知識,還需要學習隱含在教師模型中的 其它知識,比如中間特征知識. 本節總結了可以使 用的知識形式有輸出特征知識、中間特征知識、關 系特征知識和結構特征知識. 知識蒸餾的 4 種知識 形式的關系如圖 5 所示. 從學生解題的角度,這 4 種知識形式可以形象比喻為:輸出特征知識提供了 解題的答案,中間特征知識提供了解題的過程,關 系特征知識提供了解題的方法,結構特征知識則提 供了完整的知識體系.

5 知識蒸餾的方法

本節從知識利用的方式,歸納和分析知識蒸 餾的主要方法,包括知識合并、多教師學習、教 師助理、跨模態蒸餾、相互蒸餾、終身蒸餾以及 自蒸餾.

6 知識蒸餾與其它技術的融合

近幾年,研究人員發現知識蒸餾結合其它主流 技術通常能夠提高其性能. 目前這些主流技術主要 有:生成對抗網絡、神經架構搜索、強化學習、圖 卷積、其它壓縮技術、自動編碼器、集成學習以及 聯邦學習.

7 知識蒸餾的應用進展

知識蒸餾的最初目的是壓縮深度學習網絡模 型,這在資源受限的終端設備上具有廣泛的應用. 但隨著研究的新進展,知識蒸餾不僅可以用于壓縮 模型,還可以通過神經網絡的互學習、自學習等優 化策略和無標簽、跨模態等數據資源對模型的性能 增強也具有顯著的提升效果. 目前知識蒸餾的主要 應用領域有計算機視覺、自然語言處理、語音識別、 推薦系統、信息安全、多模態數據和金融證券. 知 識蒸餾在計算機視覺、自然語言處理、語音識別和 推薦系統上的應用根據其目的的不同,可以分為模 型壓縮和模型增強. 模型壓縮是為了獲得簡單而高 效的網絡模型,以方便部署于資源受限的設備. 而 模型增強通常是利用其它資源(如無標簽或跨模態 的數據)來獲取復雜的高性能網絡.

8 知識蒸餾的研究趨勢展望

知識蒸餾是一個新興的研究領域,它仍有許多 值得深入探索和亟待解決的問題. 在這一節中,我 們提出一些值得進一步深入探討的研究點,也是我 們今后需要解決完善的研究方向.

  • (1) 如何確定何種知識是最佳的。知識蒸餾中 的知識是一個抽象的概念,網絡參數,網絡的輸出 和網絡的中間特征等都可以理解為知識. 但是何種 知識是最佳的,或者哪些知識以互補的方式能成為 最佳的通用知識表示?為了回答這個問題,我們需 要了解每種知識以及不同種類組合知識的作用. 比 如說,基于特征的知識通常用于模仿教師特征產生 的過程,基于關系的知識常用于捕獲不同樣本之間 或網絡層之間特征的關系. 當教師和學生的模型容 量(“代溝”)較小的時候,學生只模仿教師的軟目 標就可以獲得有競爭力的性能. 而當師生的“代溝” 較大時,需要將多種蒸餾的知識形式和方法結合來 表示教師模型. 雖然能明白多種知識的組合方式通 常能提高學生網絡的性能,但是使用哪些知識形式, 方法和技術的組合是最優的,還尚無定論.

  • (2) 如何確定何處的知識是最佳的。一些工作 隨機選擇中間網絡的某層特征作為知識,比如 FitNets[27]將教師前幾層的網絡特征作為特征蒸餾的 位置. 然而他們都沒有提供一個理由,即為什么能 夠成為代表性知識. 這主要是由于教師和學生模型 結構的不一致導致的,即教師模型通常比學生模型 擁有更多的網絡層. 因此,需要篩選教師模型中最 具有代表性的特征. 然而教師模型中哪些特征層是 最具有代表性的?這也是一個未解決的問題. 在基 于關系的知識蒸餾中,也一樣無法解釋該選擇哪些 層的關系知識作為學生模仿的對象. 如 FSP 矩陣[31] 隨機選擇教師模型的兩個網絡層作為關系蒸餾的位 置. 關系知識蒸餾是容量無關的,即關系蒸餾僅僅 需要獲取的是網絡層間或樣本間的關系知識. 因此 這不是師生間的“代溝”問題,而是歸咎于知識其實是一個“黑盒”問題.

  • (3) 如何定義最佳的師生結構。知識蒸餾傳遞 的并不是參數,而是抽取到的知識. 因此知識蒸餾 是網絡架構無關的,即任何學生都可以向任何教師 學習. 通常,容量更大的學生模型可以學習更多的 知識,但復雜度過大會延長推理的時間. 容量更大 的教師模型隱含著較多的知識和更強的能力,但是 并非能力越強的教師就能產生更佳的學生模型[13]. 同時,每一個教師模型都有一個最強學生結構[100]. 因此,我們只能在給定的教師模型的前提下,找到 最佳的學生模型. 然而在未指定教師模型的情況 下,目前還無法確定最佳的學生模型.

  • (4) 如何衡量師生間特征的接近程度。 知識蒸 餾是要將教師網絡中的知識遷移到學生模型中,遷 移效果的好壞最終可以通過學生網絡性能來體現. 然而在網絡訓練的過程中,只能通過損失函數去判 斷教師和學生之間特征的接近程度. 因此需要提前 設計好知識蒸餾的損失函數,如 KL 散度、均方誤 差(Mean Squared Error,MSE)和余弦相似性. 而損 失函數的選取受算法和離群點等因素的影響,并且, 不同損失函數的作用范圍是不一樣的. 例如,通過 KL 散度衡量的兩個隨機分布上的相似度是非對稱 的. 余弦相似性強調兩個向量的特征在方向上的差 異,卻沒有考慮向量大小. MSE 在高維特征中的作 用不明顯,且很容易被隨機特征混淆[4]. 因此,衡量 師生間特征接近程度的方法是多樣化的,我們需要 根據特定的問題和場景選取最合適的損失函數.

  • (5) 蒸餾的知識形式、方法和融合技術還需要 深入探索。 原始知識蒸餾將類間的關系信息作為知 識,但這在“代溝”較大的師生網絡中效果不佳. 為 了解決這一問題,后續的研究者尋找不同形式的“知 識”來充實知識的內涵,如關系知識. 其知識的來 源應該是多樣化的,可以來自于單個或多個的樣本 和網絡本身. 同樣,知識蒸餾的方法和融合技術也 能緩解甚至解決師生間的“代溝”問題,它們強調 充分地利用知識來提高模型的表征能力. 新的知 識形式、方法和融合技術的發現可能會伴隨著新的 應用場景,這將豐富知識蒸餾的理論框架和實踐的 應用.

  • (6) 模型壓縮和模型增強的深度融合. 模型壓 縮是將強大的復雜教師模型中的“知識”遷移到簡 單的學生模型中以滿足低資源設備的應用要求,而 模型增強用于獲取高性能的復雜網絡. 模型壓縮和 模型增強的融合是將教師模型中的“特權信息”遷 移或繼續強化輕量級學生模型的性能. 例如,Liu 等人[206]通過從文本翻譯模型中遷移“特權信息”來改 進輕量級的語音翻譯模型. 在未來的工作中,甚至 能將無標簽或其它領域數據的“特權信息”來繼續 加強一個輕量級學生模型的性能.

  • (7) 知識蒸餾在數據樣本增強上的應用. 深度 學習是數據驅動型的,往往需要大規模的數據集才 能避免過度擬合. 由于隱私和法律等原因,在一些 領域上,通常無法獲取大規模的原始數據集,如醫 療數據. 知識蒸餾需要足夠的數據,才能將教師網 絡中的知識遷移到學生網絡中. 換句話說,數據是 連接教師網絡和學生網絡的橋梁. 先前的研究已經 證明了知識蒸餾在數據樣本增強上的廣闊應用前景, 如通過知識蒸餾產生原始數據集的近似樣本[207]、 使用其它相關數據的知識來減輕對目標數據集的依 賴[208]以及教師和學生間部分網絡的共同訓練來提 高具有小樣本學生網絡的性能[114]. 未來的工作需 要繼續探索知識蒸餾在數據樣本增強上的應用場景 和高效的蒸餾方法來實現小樣本學習(Few-Shot Learning)或零樣本學習(zero-shot learning).

  • (8) 知識蒸餾在數據標簽上的應用. 給數據上 標簽需要特定領域的專業知識、大量的時間和成本. 可以利用知識蒸餾減少標注訓練數據的麻煩,解決 數據標簽的問題. 如果該領域存在著強大的教師網 絡,能通過知識蒸餾給無標簽的數據增加注釋. 具 體地,教師網絡對未標記數據進行預測,并使用它 們的預測信息充當學生模型數據的自動標注[209]. 以無標簽數據作為輸入的教師網絡會產生軟標簽, 這恰好能為學生網絡提供學習的指導信息. 即使該 領域沒有強大的教師網絡,也可以通過跨模態知識 蒸餾,將其它領域的知識充當無標簽數據的監督信 號[66]. 因此,知識蒸餾能夠減少對數據標簽的依賴, 需要繼續研究它在半監督或無監督學習上的應用.

付費5元查看完整內容

在過去的十年中,許多深度學習模型在機器智能的各個領域得到了良好的訓練并取得了巨大的成功,特別是在計算機視覺和自然語言處理方面。為了更好地利用這些訓練有素的模型在域內或跨域遷移學習情況下的潛力,知識蒸餾(KD)和域自適應(DA)被提出并成為研究熱點。它們的目的都是利用原始的訓練數據從訓練有素的模型中傳遞有用的信息。然而,在許多情況下,由于隱私、版權或機密性,原始數據并不總是可用的。最近,無數據知識遷移范式引起了人們的關注,因為它處理的是從訓練有素的模型中提取有價值的知識,而不需要訪問訓練數據。它主要包括無數據知識蒸餾(DFKD)和無源數據領域適應(SFDA)。一方面,DFKD的目標是將原始數據的域內知識從一個繁瑣的教師網絡轉移到一個緊湊的學生網絡中,進行模型壓縮和高效推理。另一方面,SFDA的目標是重用存儲在經過良好訓練的源模型中的跨領域知識,并使其適應于目標領域。本文從知識蒸餾和無監督領域適應的角度對無數據知識遷移的研究進行了全面的綜述,以幫助讀者更好地了解目前的研究現狀和思路。本文將分別簡要回顧這兩個領域的應用和挑戰。在此基礎上,對未來的研究提出了一些看法。

圖1. 知識蒸餾(KD)和無監督領域自適應(UDA)綜述

隨著深度學習的復興,深度神經網絡(DNN)在人工智能的各個領域取得了顯著的進展,包括計算機視覺(CV)[1]和自然語言處理(NLP)[2]。特別是計算機視覺領域已經開發了大量深度卷積神經網絡的應用(如圖像分類[3]、目標檢測[4]、語義分割[5]等),極大地促進了深度學習的繁榮。從LeNet[6]、AlexNet[1]到ResNet[7]和DenseNet[8],深度神經網絡的顯著成功主要依賴于超參數化的架構和大規模標注的訓練數據。在實踐中,DNN的應用可能面臨兩個問題:1)笨重的模型不可能部署在存儲和計算能力有限的移動設備上,如自動駕駛汽車[9]和實時人臉識別系統[10]; 2) 由于標注成本過高,整個標注數據集無法用于訓練,例如用于語義分割的像素級標注。

圖2. 無數據知識蒸餾(DFKD)和無源領域適應(SFDA)概述

為了解決模型的深度部署問題,對[11]模型進行壓縮以降低存儲和計算成本,包括剪枝[12]、量化[13]和知識蒸餾[14]。知識蒸餾(Knowledge精餾,KD)[14]是一種流行的模型壓縮方法,它將有價值的信息從一個繁瑣的教師網絡傳輸到一個緊湊的學生網絡中。作為如圖1(a)所示的通用師生知識傳遞框架,它可以與其他模型壓縮方法相結合,無需進行任何具體設計[15],[16]。學生網絡以訓練數據為輸入,模擬訓練良好的教師網絡,與人類的學習方案非常相似。大多數的蒸餾方法都是從教師網絡的中間特征圖或預測中提取和傳遞知識。在模型壓縮方面,近年來知識蒸餾技術的快速發展對半監督學習[17]、[18]、增量學習[19]、[20]、隱私保護[21]、[22]等產生了巨大的影響。

圖3. 2016 - 2021年無數據知識遷移工作發展

除了繁瑣的網絡架構外,大規模數據集的高成本標注也限制了深度學習的應用。例如,手動注釋cityscape[23]圖像進行語義分割需要大約90分鐘。解決這個問題的一種直觀的方法是,利用來自相關領域(源領域)的特定知識來研究被考慮的目標領域,這是受到人類研究能力的啟發。領域自適應[24]是一種很有前途的遷移學習范式,如圖1(b)所示。它旨在將知識從源領域轉移到目標領域,避免了勞動密集型的數據注釋。根據目標域數據的標注率,可以將域自適應進一步分為無監督域自適應、半監督域自適應和弱監督域自適應。實際上,只有UDA方法完全避免了標注的代價,本文主要考慮的是UDA的設置。

綜上所述,知識蒸餾和領域自適應是將有價值的知識從訓練良好的深度神經網絡遷移到域內或跨域網絡的兩個主要研究課題。上述方法都是基于數據驅動的,并依賴于原始數據或源數據可訪問的前提下進行蒸餾或域適應。然而,由于隱私或版權的原因,在很多實際案例中,原始的訓練數據是不可用的。例如,一些知名社區[26]-[29]發布了大量的預訓練的深度學習模型[4]、[5]、[7]、[25]。但并不是所有的訓練數據都可以用于壓縮或使其適應新的領域。此外,醫療或面部數據是公共或第三方機構無法訪問的,因為它涉及到患者或用戶的隱私。因此,如何利用訓練良好的模型(沒有訓練數據)進行知識遷移成為一個新的研究課題。將其概括為圖2所示的“無數據知識遷移(Data-Free Knowledge Transfer, DFKT)”。特別地,該方法還涉及兩個主要的研究領域:(1)沒有訓練數據的知識蒸餾方法稱為無數據知識蒸餾(data - free knowledge精餾,DFKD);(2)沒有源數據的域適應方法稱為無源數據域適應(source -free domain adaptation, SFDA)。DFKD的目標是將訓練數據集的原始信息提取并轉換為一個緊湊的學生模型,SFDA的目標是通過目標數據查詢和探索跨領域的知識。換句話說,DFKD在兩個模型之間傳遞域內知識,而SFDA通過體系結構共享模型傳遞跨域知識。

近年來,無數據知識轉移范式在深度學習的各個領域引起了人們的關注,特別是計算機視覺(包括圖像分類[30]-[32]、目標檢測[33]-[35]和超分辨率[36])。無數據知識轉移的時間軸如圖3所示。我們分別描述了DFKD和SFDA在上游和下游的發展。Lopes等人[37]在2016年首次提出了DNN的無數據知識蒸餾。它利用網絡激活的摘要來重建其訓練集。隨著生成式對抗網絡的興起,2019年以來,一些生成式DFKD方法如雨后春筍般涌現,試圖合成替代樣本進行知識轉移。還有一些研究是在[37]的基礎上,利用激活狀態總結[41]或批歸一化統計量(BNS)[32]、[42]從噪聲中恢復出原始圖像數據。此外,2021年還發布了兩個知識蒸餾綜述[43]、[44]。SFDA方面,Chidlovskii等人[45]在這方面做了開拓性的工作。2018年至2020年,研究人員主要關注分類[30]、[46]、[47]的無源域自適應。SFDA的語義分割算法[48]、[49]和目標檢測算法[33]、[35]從2020年開始研發。毫無疑問,未來將會有更多關于DFKT的研究發表。

雖然傳統的數據驅動的知識遷移一直是計算機視覺領域的一個長期挑戰,在模型壓縮和數據標注的成本降低方面取得了很大的成功,但大多數工作都忽視了數據隱私和商業版權問題,這些問題越來越受到關注。一些研究人員對傳統的數據驅動知識蒸餾[43]、[44]、[50]和領域適應[24]、[51]-[53]進行了全面、詳細的綜述,其中DFKD或SFDA只是冰山一角。然而,隨著DFKT的不斷成熟,相關的研究也越來越多,這使得研究和產業界都難以跟上新進展的步伐。有鑒于此,我們迫切需要對現有的工作進行調研,這對社區是有益的。在本綜述中,我們重點在一個統一的無數據知識遷移框架下,對現有的DFKD和SFDA方法進行分類和分析。我們分別討論了無數據知識蒸餾和無源領域自適應,并從數據重構算法和知識遷移策略兩個方面對它們進行了連接和比較。為了便于理解,我們根據DFKD和SFDA的實現對它們進行了分層分類,如圖4所示,并展示了我們調研的組織結構。總之,我們的貢獻有三方面:

  • 我們對無數據知識遷移進行了系統的概述,包括分類、定義、兩類方法的DFKD和SFDA以及各種應用。據我們所知,這是第一次對DFKT進行調研。

  • 從領域內和跨領域知識遷移的角度,提出了一種新的分類方法,將無數據的知識提煉和無源的領域適應結合起來。

  • 全面總結了每種方法的優勢或面臨的挑戰,并分析了一些有前景的研究方向。

付費5元查看完整內容

近年來,卷積神經網絡(CNN)憑借強大的特征提取和表達能力,在圖像分析領域的諸多應用中取得了令人矚目的成就。但是,CNN性能的不斷提升幾乎完全得益于網絡模型的越來越深和越來越大,在這個情況下,部署完整的CNN往往需要巨大的內存開銷和高性能的計算單元(如GPU)支撐,而在計算資源受限的嵌入式設備以及高實時要求的移動終端上,CNN的廣泛應用存在局限性。因此,CNN迫切需要網絡輕量化。目前解決以上難題的網絡壓縮和加速途徑主要有知識蒸餾、網絡剪枝、參數量化、低秩分解、輕量化網絡設計等。首先介紹了卷積神經網絡的基本結構和發展歷程,簡述和對比了五種典型的網絡壓縮基本方法;然后重點針對知識蒸餾方法進行了詳細的梳理與總結,并在CIFAR數據集上對不同方法進行了實驗對比;其后介紹了知識蒸餾方法目前的評價體系,給出多類型方法的對比分析和評價;最后對該技術未來的拓展研究給出了初步的思考。

//fcst.ceaj.org/CN/abstract/abstract2907.shtml

付費5元查看完整內容

摘要

近年來,深度神經模型在幾乎每個領域都取得了成功,甚至解決了最復雜的問題。然而,這些模型的尺寸非常大,有數百萬(甚至數十億)個參數,需要強大的計算能力,以至于無法部署在邊緣設備上。此外,性能提升高度依賴于大量的標記數據。為了實現更快的速度和處理由于缺乏標記數據而引起的問題,知識蒸餾(KD)被提出,知識蒸餾是將從一個模型學到的信息遷移到另一個模型。KD通常以所謂的“學生-教師”(S-T)學習框架為特征,被廣泛應用于模型壓縮和知識轉移。本文是關于KD和S-T學習的研究,這兩種學習方法是近年來研究比較活躍的。首先,我們旨在解釋KD是什么以及它如何/為什么起作用。然后,我們對KD方法和S-T框架在視覺任務中的最新進展進行了全面的調研。總的來說,我們調研了推動這一研究領域的一些基本問題,并全面概括了研究進展和技術細節。系統分析了KD在視覺應用中的研究現狀。最后,我們討論了現有方法的潛力和開放挑戰,并展望了KD和S-T學習的未來方向。

引言

深度神經網絡(DNNs)的成功與否,通常取決于DNN體系結構的精心設計。在大規模機器學習中,特別是在圖像和語音識別等任務中,大多數基于DNN的模型都被過度參數化,以提取最顯著的特征,確保泛化。這種笨重的模型通常深度和寬度都很大,訓練時需要相當多的計算量,很難實時操作。因此,為了獲得更快的速度,許多研究人員一直試圖利用訓練過的笨重模型來獲得輕量級的DNN模型,這些模型可以部署在邊緣設備上。也就是說,當這個笨重的模型經過訓練后,可以使用它學習一個更適合實時應用或部署[1]的小模型,如圖1(a)所示。

另一方面,DNNs的性能也嚴重依賴于非常大且高質量的標簽來訓練數據集。由于這個原因,許多人都在努力減少標記訓練數據的數量,同時又不太影響DNNs的性能。處理這樣缺乏數據的情況的一種流行方法是從一個源任務轉移知識,以促進對目標任務的學習。一個典型的例子是半監督學習,在這種學習中,一個模型只用一小組有標記的數據和一大組沒有標記的數據來訓練。由于未標記的樣本的監督代價未定義,應用一致性代價或正則化方法來匹配標記和未標記數據的預測是至關重要的。在這種情況下,知識在假定教師和學生[2]雙重角色的模型內轉移。對于未標記的數據,學生照常學習;然而,教師產生目標,然后學生使用這些目標進行學習。如圖1(b)所示,這種學習度量的共同目標是在沒有額外訓練的情況下,從學生身上形成一個更好的教師模型。另一個典型的例子是自監督學習(self-supervised learning),該模型是用輸入轉換(例如,旋轉、翻轉、顏色變化、裁剪)構建的人工標簽來訓練的。在這種情況下,來自輸入轉換的知識被轉移到監督模型本身,以提高其性能,如圖1?所示。

本論文是關于知識蒸餾(KD)和師生學習(S-T)的研究,這是近年來研究的熱點。一般來說,KD被廣泛認為是一種主要的機制,當只給予具有相同或不同類別[3]的小訓練集時,KD可以使人類快速學習新的復雜概念。在深度學習中,KD是一種有效的技術,被廣泛用于在進行建設性訓練的同時將信息從一個網絡轉移到另一個網絡。KD最初由[4]定義,由Hinton等人[1]推廣。KD被廣泛應用于兩個不同的領域:模型壓縮(見圖1(a))和知識轉移(見圖1(b)和?)。對于模型壓縮,一個較小的學生模型被訓練來模擬一個預先訓練過的更大的模型或模型集合。雖然基于目的定義了各種形式的知識,但KD的一個共同特征是通過它的S-T框架來表征的,其中提供知識的模型稱為教師,學習知識的模型稱為學生。

在本研究中,我們重點分析和分類現有的KD方法,并結合不同類型的S-T結構,用于模型壓縮和知識遷移。我們回顧和調研這一迅速發展的領域,并特別強調最近的進展。KD方法在視覺智能、語音識別、自然語言處理(natural language processing, NLP)等各個領域都有應用,但本文主要關注的是視覺領域的KD方法,因為大部分的演示都是在計算機視覺任務上進行的。利用視覺中的KD原型可以方便地解釋用于自然語言處理和語音識別的KD方法。由于目前研究最多的KD方法是用于模型壓縮,我們系統地討論了其技術細節、挑戰和潛力。同時,我們也關注了半監督學習、自我監督學習等知識轉移的KD方法,重點關注了以S-T學習作為學習度量方式的技術。

我們將探索推動這一研究領域發展的一些基本問題。具體來說,KD和S-T學習的理論原理是什么?是什么讓一種蒸餾方法比其他方法更好?使用多個老師比使用一個老師好嗎?更大的模型總是能造就更好的老師和更魯棒的學生嗎?只有在教師模型存在的情況下,學生才能學習知識嗎?學生能自學嗎?離線KD總是比在線學習好嗎?

在討論這些問題的同時,我們結合現有KD方法的潛力,并結合S-T框架展望KD方法的未來發展方向。我們特別強調最近開發的技術的重要性,如神經結構搜索(NAS),圖神經網絡(GNNs),和增強KD的門控機制。此外,我們也強調KD方法的潛力,以解決在特定的領域的挑戰性的問題,如軌道變化是在12個360°的視覺和基于事件的視覺。

本文的主要貢獻有三個方面:

(1)對KD和S-T學習方法進行了全面的概述,包括問題定義、理論分析、一系列具有深度學習的KD方法以及視覺應用。

(2) 對KD方法和S-T框架的最新進展進行了分層、結構化的系統綜述和分析,并對每個類別的潛力和挑戰提出了見解和總結。

(3) 討論問題和開放問題,確定新的趨勢和未來的方向,為該研究領域提供深刻的指導。

本文的組織結構如下。首先,在第二章我們解釋了為什么我們需要關注KD和S-T學習。

請解釋為什么我們需要在第二節中關注KD和S-T學習。第三章對KD進行了理論分析。從第4節到第8節,我們對一些現有的方法進行了分類,從**基于教師數量的KD、基于數據格式的KD、在線/離線KD、基于標簽的KD,到具有新穎學習指標的KD第三章對KD進行了理論分析。從第4節到第8節,我們對一些現有的方法進行了分類,從基于教師數量的KD、基于數據格式的KD、在線/離線KD、基于標簽的KD,到具有新穎學習指標的KD。在討論這些KD方法的技術細節的基礎上,我們也分析了它們的挑戰和潛力。在第9節中,根據分類法,我們將討論第1節中提出的問題的答案。第10節介紹了KD和S-T學習的未來潛力,并在第11節給出了結論。由于篇幅有限,關于KD方法相關的新學習指標和KD應用方法的詳細介紹在suppll材料的第8和9節中給出。這份手稿還包括分類法/比較表和一些插圖的數字,這是不包括在這里由于缺乏空間。

圖2展示了KD和S-T學習的分類圖。

付費5元查看完整內容

近年來,隨著深度學習的飛速發展,深度神經網絡受到了越來越多的關注,在許多應用領域取得了顯著效果。通常,在較高的計算量下,深度神經網絡的學習能力隨著網絡層深度的增加而不斷提高,因此深度神經網絡在大型數據集上的表現非常卓越。然而,由于其計算量大、存儲成本高、模型復雜等特性,使得深度學習無法有效地應用于輕量級移動便攜設備。因此,壓縮、優化深度學習模型成為目前研究的熱點,當前主要的模型壓縮方法有模型裁剪、輕量級網絡設計、知識蒸餾、量化、體系結構搜索等。通過對以上方法的性能、優缺點和最新研究成果進行分析總結,對未來研究方向進行了展望。

付費5元查看完整內容

摘要: 近年來, 卷積神經網絡(Convolutional neural network, CNNs)在計算機視覺、自然語言處理、語音識別等領域取得了突飛猛進的發展, 其強大的特征學習能力引起了國內外專家學者廣泛關注.然而, 由于深度卷積神經網絡普遍規模龐大、計算度復雜, 限制了其在實時要求高和資源受限環境下的應用.對卷積神經網絡的結構進行優化以壓縮并加速現有網絡有助于深度學習在更大范圍的推廣應用, 目前已成為深度學習社區的一個研究熱點.本文整理了卷積神經網絡結構優化技術的發展歷史、研究現狀以及典型方法, 將這些工作歸納為網絡剪枝與稀疏化、張量分解、知識遷移和精細模塊設計4個方面并進行了較為全面的探討.最后, 本文對當前研究的熱點與難點作了分析和總結, 并對網絡結構優化領域未來的發展方向和應用前景進行了展望.

付費5元查看完整內容

【簡介】近些年深度神經網絡幾乎在各個領域都取得了巨大的成功。然而,這些深度模型在尺寸上過于巨大,有幾百萬甚至上億的參數,造成了巨大的計算開銷,致使模型難以部署和落地。除此之外,模型的表現還高度依賴于大量的標注數據。為了使模型得到更加高效的訓練和處理標記數據不足的難題,知識蒸餾(KD)被用來遷移從一個模型到另一個模型學習到的知識。這個過程也經常被描述為student-teacher(S-T)學習框架,并且已經被廣泛應用到模型壓縮和知識遷移中。這篇論文主要介紹了知識蒸餾和student-teacher學習模型。首先,我們對于KD是什么,它是如何工作的提供了一個解釋和描述。然后,我們對近些年知識蒸餾方法的研究進展和典型用于視覺任務的S-T學習框架進行了一個全面的調研。最后,我們討論了知識蒸餾和S-T模型未來的發展方向和研究前景,以及目前這些方法所面臨的開放性挑戰。

介紹

深度神經網絡的成功主要依賴于精心設計的DNN架構。在大規模機器學習任務中,尤其是圖像識別和語音識別任務,大多數基于DNN的模型都是憑借大量的參數來提取特征從而保證模型的泛化能力。這種笨重的模型通常都有非常深和非常寬的特點,需要花費大量的時間進行訓練,而且不可能實時操作。所以,為了加速模型訓練,許多研究人員嘗試著利用預訓練的復雜模型來獲得輕量級的DNN模型,從而使得這些模型可以被部署應用。這是一篇關于知識蒸餾(KD)和student-teacher(S-T)學習模型的論文。一般來講,知識蒸餾被視作一種機制:當只給出小型的訓練集,其中包含相同或不同種類的樣本的時候,這種機制能夠使得人類快速學習新的,復雜的概念。在深度學習中,知識蒸餾是一個有效的方法,目前已經被廣泛的應用在了從一個網絡到另一個網絡的信息轉移上。知識蒸餾主要被應用在模型壓縮和知識遷移這兩個領域,對于模型壓縮,一個較小的學生模型被訓練來模仿一個預先訓練好的較大的模型。盡管知識和任務種類多樣,但是S-T框架是他們的一個相同點,其中提供知識的模型被稱作teacher,學習知識的模型被稱作student。我們對現有的知識蒸餾方法進行了重點分析和分類,其中還伴隨著各種類型的S-T結構的模型壓縮和知識轉移。我們回顧和調查了這一迅速發展的領域,強調了該領域的最新進展。雖然知識蒸餾方法已經應用于視覺智能、語音識別、自然語言處理等各個領域,但本文主要關注的是視覺領域的知識蒸餾方法,所以論文中關于知識蒸餾的大多數闡釋都是基于計算機視覺任務。由于知識蒸餾方法研究最多的領域是模型壓縮,所以我們系統地討論了該領域的技術細節、關鍵性挑戰和發展潛力。同時,重點介紹了在半監督學習、自監督學習等領域的知識遷移方法,重點介紹了以S-T學習框架為基礎的技術。

文章結構

section 2:探討知識蒸餾和S-T學習框架為什么會吸引如此多的關注。 section 3:關于知識蒸餾的理論分析。 section 4-section14:對目前的方法進行分類,并且分析了面臨的挑戰以及該領域的發展前景。 section 15:根據上面的分類結果,我們回答了section 2中提出的問題。 section 16:介紹了知識蒸餾和S-T框架的潛力。 section 17:總結。

付費5元查看完整內容
北京阿比特科技有限公司