吳致遠(yuǎn), 齊 紅, 姜 宇, 崔楚朋, 楊宗敏, 薛欣慧
(1. 吉林大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 長(zhǎng)春 130012; 2. 中國(guó)科學(xué)院 計(jì)算技術(shù)研究所, 北京 100190;3. 吉林大學(xué) 符號(hào)計(jì)算與知識(shí)工程教育部重點(diǎn)實(shí)驗(yàn)室, 長(zhǎng)春 130012)
深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類[1-2]、 物體檢測(cè)[3]、 語(yǔ)義分割[4]等視覺領(lǐng)域應(yīng)用廣泛. 目前大多數(shù)方法集中于提高特定數(shù)據(jù)集上的推斷準(zhǔn)確率, 使得網(wǎng)絡(luò)架構(gòu)日趨復(fù)雜化. 嵌入式和移動(dòng)設(shè)備由于受計(jì)算資源和存儲(chǔ)空間的限制, 對(duì)緊湊型神經(jīng)網(wǎng)絡(luò)需求迫切. 模型壓縮方法以較小精度損失為代價(jià), 大幅度減小網(wǎng)絡(luò)的參數(shù)規(guī)模與推斷開銷. 網(wǎng)絡(luò)減枝[5]、 參數(shù)量化[6]、 張量分解[7]等現(xiàn)有壓縮方法分別從冗余淘汰、 權(quán)重復(fù)用、 后端重構(gòu)等方面直接對(duì)成型的網(wǎng)絡(luò)進(jìn)行后端壓縮, 在一些小型數(shù)據(jù)集上取得了一定成效.
知識(shí)蒸餾是基于模型遷移學(xué)習(xí)的重要分支, 是一種在復(fù)雜神經(jīng)網(wǎng)絡(luò)提示下訓(xùn)練緊湊神經(jīng)網(wǎng)絡(luò)的技術(shù)[8], 為構(gòu)建高效準(zhǔn)確的緊湊型神經(jīng)網(wǎng)絡(luò)提供了一種與模型壓縮方法相異的新思路. 在知識(shí)蒸餾過程中, 復(fù)雜網(wǎng)絡(luò)和緊湊網(wǎng)絡(luò)分別扮演著“教師”和“學(xué)生”的角色. 教師網(wǎng)絡(luò)由于過參數(shù)化的特性, 易收斂到較優(yōu)的解[9], 但參數(shù)規(guī)模龐大, 推斷代價(jià)昂貴; 學(xué)生網(wǎng)絡(luò)雖可通過增加深度的方法在維持參數(shù)規(guī)?;静蛔兊那疤嵯绿嵘萘? 但局部解和難于訓(xùn)練的問題導(dǎo)致其直接訓(xùn)練后推斷效果通常較差, 難以滿足實(shí)際應(yīng)用過程中對(duì)推斷精度的要求. 知識(shí)蒸餾充分挖掘了大型網(wǎng)絡(luò)特征提取能力強(qiáng)、 預(yù)訓(xùn)練網(wǎng)絡(luò)階段性輸出語(yǔ)義信息豐富的特點(diǎn), 利用其輔助學(xué)生網(wǎng)絡(luò)進(jìn)行訓(xùn)練, 可有效提高學(xué)生網(wǎng)絡(luò)的收斂速度與精確度.
早期的知識(shí)蒸餾方案將教師網(wǎng)絡(luò)輸出調(diào)整后的軟標(biāo)簽與硬標(biāo)簽的加權(quán)平均作為學(xué)生網(wǎng)絡(luò)訓(xùn)練的監(jiān)督數(shù)據(jù)[10]. 由于不同類別之間的相似度不同, 高熵的軟標(biāo)簽?zāi)鼙扔矘?biāo)簽提供更豐富的語(yǔ)義監(jiān)督信息[11], 因此在教師網(wǎng)絡(luò)的指導(dǎo)下, 學(xué)生網(wǎng)絡(luò)通常能收斂到較好的解. 之后的工作開始致力于通過教師網(wǎng)絡(luò)的隱藏層輸出(稱為特征圖)提示學(xué)生網(wǎng)絡(luò)訓(xùn)練實(shí)現(xiàn)知識(shí)遷移. FitNet[12]采用卷積回歸的方法, 將教師網(wǎng)絡(luò)隱藏層輸出尺寸匹配到學(xué)生網(wǎng)絡(luò)中間尺寸, 用于訓(xùn)練窄而深的學(xué)生網(wǎng)絡(luò), 希望學(xué)生網(wǎng)絡(luò)學(xué)習(xí)一個(gè)基于教師網(wǎng)絡(luò)中間輸出變換的表示方案. He等[13]使用自編碼器重構(gòu)教師網(wǎng)絡(luò)的中間輸出, 通過最小化自重構(gòu)損失使編碼后的教師網(wǎng)絡(luò)中間特征能較好地恢復(fù)原本的語(yǔ)義信息, 并利用編碼的特征作為學(xué)生網(wǎng)絡(luò)前半部分訓(xùn)練的監(jiān)督數(shù)據(jù). 但來自學(xué)生網(wǎng)絡(luò)和教師網(wǎng)絡(luò)的特征圖通常具有不一致的上下文和不匹配的特征. 現(xiàn)有方法對(duì)教師網(wǎng)絡(luò)特征圖采取變換, 其結(jié)果通常不適合作為學(xué)生網(wǎng)絡(luò)用于預(yù)測(cè)最終目標(biāo)的中間特征. 教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)架構(gòu)不同導(dǎo)致二者參數(shù)線性空間和對(duì)應(yīng)階段數(shù)據(jù)分布式表達(dá)程度存在差異, 如果在各自架構(gòu)的基礎(chǔ)上, 參數(shù)收斂到了良好的空間, 二者推斷出的隱藏層特征圖所蘊(yùn)含的語(yǔ)義表示信息將存在較大的領(lǐng)域偏差, 因此將教師網(wǎng)絡(luò)特征圖經(jīng)過恰當(dāng)?shù)淖儞Q成為適合于學(xué)生網(wǎng)絡(luò)的監(jiān)督特征成為基于隱藏層輸出提示知識(shí)蒸餾的關(guān)鍵. 同時(shí), 教師網(wǎng)絡(luò)提供的用于監(jiān)督的特征確定了學(xué)生網(wǎng)絡(luò)訓(xùn)練時(shí)優(yōu)化的目標(biāo)導(dǎo)向, 但其常與實(shí)際應(yīng)用需求存在偏差.
文獻(xiàn)[12]提出了將回歸器損失與教師網(wǎng)絡(luò)中間輸出特征相關(guān)聯(lián), 收斂后的回歸器學(xué)習(xí)到的映射方案傾向于將教師網(wǎng)絡(luò)的隱藏層輸出特征轉(zhuǎn)化為某種兼顧教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)需求的中間表示. 改進(jìn)特征映射方案的歸納偏好有利于教師網(wǎng)絡(luò)傳遞更有價(jià)值的知識(shí), 文獻(xiàn)[13]提出了重構(gòu)特征自編碼器經(jīng)過訓(xùn)練后, 編碼器映射到學(xué)生網(wǎng)絡(luò)的特征能較好地恢復(fù)教師網(wǎng)絡(luò)特征的語(yǔ)義信息. 但學(xué)生網(wǎng)絡(luò)的隱藏層輸出無需恢復(fù)教師網(wǎng)絡(luò)的特征圖, 用于精確推斷的學(xué)生網(wǎng)絡(luò)監(jiān)督特征會(huì)使知識(shí)蒸餾更有效. 雖然采取領(lǐng)域自適應(yīng)方法, 通過顯式地在教師網(wǎng)絡(luò)監(jiān)督學(xué)生網(wǎng)絡(luò)訓(xùn)練的過程中加入對(duì)該問題理解的先驗(yàn)知識(shí), 可一定程度上緩解教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)特征圖中上下文和特征語(yǔ)義信息的不匹配性, 但類似方法都只是從人類的角度出發(fā), 通過加入人類對(duì)深度神經(jīng)網(wǎng)絡(luò)解決視覺問題的理解提升推斷效果, 所需的難以理解的抽象語(yǔ)義信息并未被充分挖掘.
利用神經(jīng)網(wǎng)絡(luò)自身在正確目標(biāo)驅(qū)動(dòng)下實(shí)現(xiàn)適合學(xué)生網(wǎng)絡(luò)監(jiān)督特征的自適應(yīng)搜尋, 并利用其作為學(xué)生網(wǎng)絡(luò)的提示, 有利于提升模型的收斂速度與準(zhǔn)確率. 基于此, 本文提出一個(gè)特征圖自適應(yīng)知識(shí)蒸餾模型. 首先, 使用特征圖適配器實(shí)現(xiàn)教師網(wǎng)絡(luò)特征圖與學(xué)生網(wǎng)絡(luò)特征圖的尺寸和通道數(shù)匹配、 特征同步變換以及監(jiān)督特征自適應(yīng)搜索. 其次, 在此基礎(chǔ)上, 提出特征圖自適應(yīng)知識(shí)蒸餾策略: 通過特征圖適配器替換方法構(gòu)建自適應(yīng)教師, 并在學(xué)習(xí)率限制條件下進(jìn)行訓(xùn)練, 在盡可能維持預(yù)訓(xùn)練教師網(wǎng)絡(luò)的特征提取與表達(dá)方案的同時(shí)提升監(jiān)督特征的泛化能力; 自適應(yīng)教師隱藏層輸出提示學(xué)生網(wǎng)絡(luò)訓(xùn)練, 實(shí)現(xiàn)教師網(wǎng)絡(luò)特征表示的知識(shí)遷移; 進(jìn)一步基于延拓法[14]和課程學(xué)習(xí)[15]的思想對(duì)學(xué)生網(wǎng)絡(luò)進(jìn)行約束訓(xùn)練, 以保證優(yōu)化的大部分時(shí)間花費(fèi)在效果良好的參數(shù)空間. 最后, 在數(shù)據(jù)集cifar-10上驗(yàn)證特征圖自適應(yīng)知識(shí)蒸餾模型的有效性. 實(shí)驗(yàn)結(jié)果表明, 該模型提高了0.6%的訓(xùn)練準(zhǔn)確率, 降低了6.5%的訓(xùn)練損失, 并且節(jié)省了94.4%的訓(xùn)練時(shí)間.
針對(duì)教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)之間上下文不一致和特征不匹配導(dǎo)致遷移效果較差的問題, 本文提出一個(gè)特征圖自適應(yīng)知識(shí)蒸餾模型, 其整體框架如圖1所示. 由圖1可見, 該模型由教師網(wǎng)絡(luò)、 學(xué)生網(wǎng)絡(luò)和特征圖適配器構(gòu)成. 教師網(wǎng)絡(luò)架構(gòu)復(fù)雜但推斷準(zhǔn)確, 且預(yù)先經(jīng)過訓(xùn)練; 學(xué)生網(wǎng)絡(luò)結(jié)構(gòu)緊湊, 未經(jīng)訓(xùn)練, 具有進(jìn)行高效準(zhǔn)確推斷的潛力. 由于網(wǎng)絡(luò)架構(gòu)的差異, 對(duì)應(yīng)階段教師網(wǎng)絡(luò)大于學(xué)生網(wǎng)絡(luò)的隱藏層特征圖分辨率. 特征圖適配器用于替換教師網(wǎng)絡(luò)的標(biāo)注模塊(替換后的教師網(wǎng)絡(luò)稱為自適應(yīng)教師), 以學(xué)習(xí)知識(shí)遷移策略, 為學(xué)生網(wǎng)絡(luò)提供合適的監(jiān)督特征.
圖1 特征圖自適應(yīng)知識(shí)蒸餾模型整體框架Fig.1 Whole framework of activation map adaptation knowledge distillation model
在適合用于學(xué)生網(wǎng)絡(luò)隱藏層監(jiān)督特征自適應(yīng)搜索過程中, 在學(xué)習(xí)率限制的條件下對(duì)自適應(yīng)教師進(jìn)行訓(xùn)練, 遷移知識(shí)的策略在訓(xùn)練過程中被特征圖適配器自動(dòng)學(xué)習(xí); 以特征圖適配器中間部分為界, 將自適應(yīng)教師一分為二, 用前部隱藏層輸出特征圖作為學(xué)生網(wǎng)絡(luò)優(yōu)化目標(biāo), 通過優(yōu)先學(xué)習(xí)簡(jiǎn)單的概念提升學(xué)生網(wǎng)絡(luò)后續(xù)優(yōu)化效果.
作為特征圖尺寸匹配、 特征同步變換及自適應(yīng)匹配的關(guān)鍵技術(shù), 特征圖適配器由過渡模塊與解析模塊堆疊形成, 其中下采樣和上采樣過渡模塊分列適配器的左、 右兩側(cè), 如圖2所示. 特征圖適配器用于替換教師網(wǎng)絡(luò)中的標(biāo)注模塊, 以構(gòu)建自適應(yīng)教師.
圖2 特征圖適配器Fig.2 Activation map adaptor
引入特征圖適配器有如下優(yōu)點(diǎn): 1) 特征圖適配器中間輸出與學(xué)生網(wǎng)絡(luò)提示斷點(diǎn)處的輸出尺寸相同, 因此可直接監(jiān)督學(xué)生網(wǎng)絡(luò)進(jìn)行訓(xùn)練, 由于特征圖適配器訓(xùn)練過程中以最小化預(yù)測(cè)損失為目標(biāo), 中間輸出的特征傾向于最有利于解析出高精確度的結(jié)果; 2) 特征圖適配器學(xué)習(xí)的內(nèi)容可近似為從給定基本特征到給定抽象特征的變換, 而給定的二者可視為學(xué)習(xí)過程中所依賴的先驗(yàn)知識(shí), 在訓(xùn)練過程中有幫助作用. 訓(xùn)練完畢, 自適應(yīng)教師所學(xué)得的特征表達(dá)具有遷移給學(xué)生的潛力. 監(jiān)督學(xué)生訓(xùn)練的過程即為幫助學(xué)生網(wǎng)絡(luò)搜尋良好初始權(quán)重的過程.
教師網(wǎng)絡(luò)提示數(shù)據(jù)與學(xué)生網(wǎng)絡(luò)待監(jiān)督隱藏層輸出尺寸相匹配是教師直接提示學(xué)生訓(xùn)練實(shí)現(xiàn)知識(shí)遷移的充要條件. 過渡模塊主要用于匹配特征圖尺寸. 面對(duì)相同問題, 在教師和學(xué)生網(wǎng)絡(luò)特征分布式表達(dá)程度相近階段, 前者的特征圖尺寸通常大于后者. 重構(gòu)擬在教師網(wǎng)絡(luò)提示階段前調(diào)整其卷積層的規(guī)格, 然后盡快恢復(fù)正常的特征圖大小. 因此, 過渡模塊設(shè)有用于下采樣和上采樣兩種類型, 并分別在提示階段前后被使用. 過渡模塊的總體設(shè)計(jì)思路如圖3所示.
圖3 過渡模塊Fig.3 Transition module
以采樣的形式直接對(duì)特征圖尺寸進(jìn)行匹配會(huì)導(dǎo)致晦澀的推斷語(yǔ)義表示, 因而需要采用某種機(jī)制對(duì)特征進(jìn)行提煉與修飾. 基于此, 本文提出增加解析模塊, 與過渡模塊的堆疊提高了自適應(yīng)教師的準(zhǔn)確性, 從而為后續(xù)的知識(shí)遷移提供更可靠的監(jiān)督特征.
1.2.1 構(gòu)建教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)
參數(shù)冗余的教師網(wǎng)絡(luò)常能收斂到良好的解, 且具有較高的推斷精度; 學(xué)生網(wǎng)絡(luò)具有部署在存儲(chǔ)和計(jì)算資源受限環(huán)境中的應(yīng)用需求, 參數(shù)規(guī)模和計(jì)算資源消耗是首要考慮的因素. 因此, 本文在研究過程中選擇已有推斷結(jié)果準(zhǔn)確的網(wǎng)絡(luò)架構(gòu)作為教師網(wǎng)絡(luò); 利用緊湊型模塊對(duì)優(yōu)秀網(wǎng)絡(luò)架構(gòu)的部分模塊進(jìn)行替換, 以此構(gòu)建學(xué)生網(wǎng)絡(luò).
1.2.2 訓(xùn)練自適應(yīng)教師
有效知識(shí)蒸餾有兩個(gè)前提條件: 整體或部分學(xué)生網(wǎng)絡(luò)接受尺寸匹配的監(jiān)督數(shù)據(jù); 該數(shù)據(jù)能更好地反映階段或全局優(yōu)化目標(biāo). 為此, 本文采取如下策略訓(xùn)練教師網(wǎng)絡(luò):
1) 標(biāo)注教師網(wǎng)絡(luò)中間的部分模塊, 標(biāo)注塊的前、 后部分分別記為TF和TB; 在學(xué)生網(wǎng)絡(luò)相應(yīng)的階段設(shè)置提示斷點(diǎn), 將學(xué)生網(wǎng)絡(luò)分成兩部分, 分別記為SF和SB;
2) 使用特征圖適配器替換教師網(wǎng)絡(luò)的標(biāo)注塊, 重構(gòu)后的教師網(wǎng)絡(luò), 即自適應(yīng)教師, 記為AT; 要求以兩個(gè)過渡模塊為分割線的適配器前半部分(記為AF)的輸出尺寸與學(xué)生網(wǎng)絡(luò)的SF輸出尺寸相同;
3) 凍結(jié)TF的權(quán)重, 對(duì)TB采用小學(xué)習(xí)率, 使用增強(qiáng)數(shù)據(jù)對(duì)自適應(yīng)教師進(jìn)行訓(xùn)練; 對(duì)于整個(gè)自適應(yīng)教師, 只有特征圖適配器采用正常學(xué)習(xí)率進(jìn)行訓(xùn)練.
對(duì)于圖像分類任務(wù), 定義N,M分別為批處理大小和待分類類別的數(shù)量.本文采用交叉熵作為自適應(yīng)教師的訓(xùn)練損失.多分類問題的交叉熵?fù)p失Llog定義為
(1)
其中yic為輸出結(jié)果第i個(gè)樣本的第c個(gè)類別的分類置信度,ylabel和ypred分別表示數(shù)據(jù)集標(biāo)簽及網(wǎng)絡(luò)的推斷結(jié)果.
1.2.3 基于隱藏層提示的蒸餾
延拓法和課程學(xué)習(xí)思想表明, 選取正確的初始化權(quán)重對(duì)于訓(xùn)練階段的參數(shù)優(yōu)化具有正面影響; 學(xué)習(xí)復(fù)雜概念時(shí)優(yōu)先學(xué)習(xí)簡(jiǎn)單的概念有利于提升最終的學(xué)習(xí)效果. 基于此, 本文采用隱藏層提示策略, 即把經(jīng)過TF和AF映射后的監(jiān)督數(shù)據(jù)(yTF-AF)作為SF(輸出記為ySF)的優(yōu)化目標(biāo), 以最小化像素平均相對(duì)熵?fù)p失LPAKL實(shí)現(xiàn)教師網(wǎng)絡(luò)知識(shí)遷移給學(xué)生網(wǎng)絡(luò)的前半部分:
(2)
其中P為SF的隱藏層輸出特征圖,ypos為隱藏層輸出特征圖pos位置對(duì)應(yīng)的灰度值,KL為Kullback-Leibler散度.
1.2.4 約束優(yōu)化
知識(shí)遷移完成后仍需通過進(jìn)一步優(yōu)化實(shí)現(xiàn)精確的推理. 與常規(guī)訓(xùn)練時(shí)網(wǎng)絡(luò)權(quán)重接收隨機(jī)初始化的情況不同, 本文中學(xué)生網(wǎng)絡(luò)預(yù)先經(jīng)過部分訓(xùn)練, 存儲(chǔ)有可靠與泛化性的推斷語(yǔ)義表示. 為充分利用其中有用的信息, 本文以交叉熵作為損失函數(shù), 先在凍結(jié)SF的前提下進(jìn)行訓(xùn)練, 然后采用小學(xué)習(xí)率對(duì)學(xué)生網(wǎng)絡(luò)整體進(jìn)行訓(xùn)練, 以防止破壞其中潛藏的結(jié)構(gòu)化知識(shí).
算法1特征圖自適應(yīng)知識(shí)蒸餾.
輸入:WT,WS,WAF,WAB,n,m,i,j,g,LP,LH,X,ypred;
本文采用在計(jì)算機(jī)視覺表示學(xué)習(xí)中廣泛使用的數(shù)據(jù)集cifar-10進(jìn)行實(shí)驗(yàn)驗(yàn)證. 該數(shù)據(jù)集為圖像分類數(shù)據(jù)集, 種類覆蓋了客觀世界中常見的物體, 例如飛機(jī)、 汽車和鳥等. 數(shù)據(jù)集cifar-10的尺寸為32×32×3; 類別數(shù)為10; 訓(xùn)練集為50 000; 測(cè)試集為10 000.
2.2.1 網(wǎng)絡(luò)架構(gòu)
本文采用MuxNet[2]作為教師網(wǎng)絡(luò), 該網(wǎng)絡(luò)預(yù)先經(jīng)過訓(xùn)練. 通過對(duì)ResNet20[1]進(jìn)行修改實(shí)現(xiàn)學(xué)生網(wǎng)絡(luò)的架構(gòu): 在網(wǎng)絡(luò)的分類器前增加一個(gè)殘差模塊, 并使用Ghost Module替換所有的卷積層. 修改后的網(wǎng)絡(luò)為輕量級(jí)網(wǎng)絡(luò), 且具有高精度推斷潛力. 教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)架構(gòu)如圖4所示, 其中標(biāo)明了教師網(wǎng)絡(luò)待替換模塊和學(xué)生網(wǎng)絡(luò)遷移斷點(diǎn). 學(xué)生網(wǎng)絡(luò)的參數(shù)列于表1, 其中Ghost Basic Block為Ghost Module[16]替換Basic Block[1]中卷積層后的緊湊型模塊. 未經(jīng)特殊說明, 本文中卷積層均采用一個(gè)像素的0填充.
圖4 教師和學(xué)生網(wǎng)絡(luò)架構(gòu)Fig.4 Architecture of teacher and student network
表1 學(xué)生網(wǎng)絡(luò)參數(shù)
2.2.2 解析模塊的選擇
綜合考慮網(wǎng)絡(luò)容量和特征分布式表達(dá)程度, 本文采用殘差模塊[17]作為解析模塊. 特征圖適配器的參數(shù)列于表2, 其中分組卷積均采用16個(gè)通道為一組的編組方式.
表2 特征圖適配器參數(shù)
2.2.3 數(shù)據(jù)增強(qiáng)與網(wǎng)絡(luò)訓(xùn)練
自適應(yīng)教師采用隨機(jī)梯度下降法進(jìn)行訓(xùn)練, 動(dòng)量和批處理大小分別設(shè)為0.9和128. 采用用于正則化的權(quán)重衰減策略, 衰減率設(shè)為3×10-6. 教師網(wǎng)絡(luò)的訓(xùn)練采取如下策略: 首先采用弱增強(qiáng)的訓(xùn)練數(shù)據(jù)對(duì)教師網(wǎng)絡(luò)進(jìn)行訓(xùn)練; 然后逐步提高數(shù)據(jù)增強(qiáng)的強(qiáng)度, 并采用進(jìn)一步優(yōu)化策略, 如隨機(jī)旋轉(zhuǎn)、 隨機(jī)裁剪、 水平隨機(jī)翻轉(zhuǎn)以及色彩、 亮度、 明暗對(duì)比度擾動(dòng)的數(shù)據(jù)增強(qiáng)策略. 訓(xùn)練過程中, 先采用3×10-3的學(xué)習(xí)率, 然后迭代逐步降至10-4. TB的學(xué)習(xí)率始終為常規(guī)學(xué)習(xí)率的10%.
在知識(shí)遷移階段, 在實(shí)際操作過程中將教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)的隱藏層輸出均標(biāo)準(zhǔn)化為均值0、 方差1, 通過最小標(biāo)準(zhǔn)化后二者輸出的相對(duì)熵對(duì)學(xué)生網(wǎng)絡(luò)進(jìn)行提示. SB的訓(xùn)練同樣采用3×10-3的學(xué)習(xí)率, 微調(diào)整個(gè)網(wǎng)絡(luò)時(shí)采用3×10-5的學(xué)習(xí)率, 其他超參數(shù)與訓(xùn)練自適應(yīng)教師時(shí)相同. 為形成對(duì)比, 本文對(duì)于未經(jīng)知識(shí)遷移的學(xué)生網(wǎng)絡(luò)采用相同的訓(xùn)練策略.
損失與正確率隨迭代次數(shù)的變化曲線分別如圖5和圖6所示. 由圖5和圖6可見, 在相同訓(xùn)練條件下, 采用特征圖自適應(yīng)模型經(jīng)過知識(shí)遷移后的學(xué)生網(wǎng)絡(luò)明顯具有更快的收斂速度、 更低的推斷損失及更高的準(zhǔn)確率. 遷移后的網(wǎng)絡(luò)在100次迭代前即達(dá)到了較高的推斷精度, 即正確率達(dá)78.2%; 而未經(jīng)遷移的網(wǎng)絡(luò)在相同條件下需超過1 800次迭代才能達(dá)到相近的效果. 在2 500次迭代的訓(xùn)練尺度下, 經(jīng)過知識(shí)蒸餾的網(wǎng)絡(luò)的準(zhǔn)確率和損失都有所改進(jìn), 分別提高了0.6%和降低了6.5%. 實(shí)驗(yàn)結(jié)果表明, 本文提出的特征圖自適應(yīng)知識(shí)蒸餾模型可有效提升緊湊型神經(jīng)網(wǎng)絡(luò)的推斷精度和收斂速度.
圖5 損失隨迭代次數(shù)的變化曲線Fig.5 Change curves of loss with number of iterations
圖6 正確率隨迭代次數(shù)的變化曲線Fig.6 Change curves of accuracy with number of iterations
綜上所述, 為提升用于嵌入式和移動(dòng)設(shè)備的緊湊型神經(jīng)網(wǎng)絡(luò)的推斷精確度和收斂速度, 本文提出了一個(gè)特征圖自適應(yīng)知識(shí)蒸餾模型. 該模型的核心思想是利用本文提出的特征圖適配器替換教師網(wǎng)絡(luò)的部分模塊, 在訓(xùn)練過程中自適應(yīng)地學(xué)習(xí)遷移知識(shí)的策略. 實(shí)驗(yàn)結(jié)果表明, 該模型能產(chǎn)生有效用于學(xué)生網(wǎng)絡(luò)監(jiān)督的跨模型知識(shí), 對(duì)于學(xué)生網(wǎng)絡(luò)正確率的提高、 損失的降低、 訓(xùn)練速度的提升具有顯著作用.