TinyBERT:模型小7倍,速度快8倍,華中科大、華為出品

2020-12-12 騰訊網

機器之心報導

參與:張倩、杜偉

BERT 等大模型性能強大,但很難部署到算力、內存有限的設備中。為此,來自華中科技大學、華為諾亞方舟實驗室的研究者提出了 TinyBERT,這是一種為基於 transformer 的模型專門設計的知識蒸餾方法,模型大小還不到 BERT 的 1/7,但速度是 BERT 的 9 倍還要多,而且性能沒有出現明顯下降。目前,該論文已經提交機器學習頂會 ICLR 2020。

論文:https://arxiv.org/abs/1909.10351

在自然語言處理(NLP)領域,BERT 等預訓練語言模型極大地提升了諸多 NLP 任務的性能。但是,這類預訓練語言模型通常計算開銷大,內存佔用也大,因此很難在一些資源緊張的設備上有效執行。

為了在加快推理速度和降低模型大小的同時保持準確率,來自華中科技大學和華為諾亞方舟實驗室的研究者提出了一種新穎的 transformer 蒸餾法,這是為基於 transformer 的模型專門設計的知識蒸餾(knowledge distillation,KD)方法。通過這種新的 KD 方法,大型 teacherBERT 模型中編碼的大量知識可以很好地遷移到小型 student TinyBERT 模型中。

此外,研究者還提出了一種專門用於 TinyBERT 的兩段式學習框架,從而分別在預訓練和針對特定任務的學習階段執行 transformer 蒸餾。這一框架確保 TinyBERT 可以獲取 teacherBERT 的通用知識和針對特定任務的知識。

除了提出新的 transformer 蒸餾法之外,研究者還提出了一種專門用於 TinyBERT 的兩段式學習框架,從而分別在預訓練和針對特定任務的具體學習階段執行 transformer 蒸餾。這一框架確保 TinyBERT 可以獲取 teacherBERT 的通用和針對特定任務的知識。

實證研究結果表明,TinyBERT 是有效的,在 GLUE 基準上實現了與 BERT 相當(下降 3 個百分點)的效果,並且模型大小僅為 BERT 的 13.3%(BERT 是 TinyBERT 的 7.5 倍),推理速度是 BERT 的 9.4 倍。此外,TinyBERT 還顯著優於當前的 SOTA 基準方法(BERT-PKD),但參數僅為為後者的 28%,推理時間僅為後者的 31%左右。

Transformer 蒸餾

研究者提出的 Transformer 蒸餾是專門為 Transformer 網絡設計的知識蒸餾方法,下圖 1 為本文提出的 Transformer 蒸餾方法概覽圖:

圖 1:Transformer 蒸餾概覽圖。

在這篇論文中,student 和 teacher 網絡都是通過 Transformer 層構建的。為了表述清楚,研究者在詳解 TinyBERT 之前闡述了以下問題。

假定 student 模型有 M 個 Transformer 層,teacher 模型有 N 個 Transformer 層,從 teacher 模型中選擇 M 個 Transformer 層用於 Transformer 層蒸餾。n=g(m) 是 student 層到 teacher 層的映射函數,這意味著 student 模型的第 m 層從 teacher 模型的第 n 層開始學習信息。嵌入層蒸餾和預測層蒸餾也考慮進來,將嵌入層的指數設為 0,預測層的指數設為 M+1,並且對應的層映射分別定義為 0 = g(0) 和 N + 1 = g(M + 1)。下文實驗部分將探討不同的映射函數對性能的影響。在形式上,通過最小化以下目標函數,student 模型可以獲取 teacher 模型的知識:

其中 L_layer 是給定模型層(如 Transformer 層或嵌入層)的損失函數,λ_m 是表徵第 m 層蒸餾重要度的超參數。

研究者提出的 Transformer 層蒸餾包含基於注意力的蒸餾和基於隱狀態的蒸餾,具體可參考上圖 1(b)。基於注意力的蒸餾是為了鼓勵語言知識從 teacherBERT 遷移到 student TinyBERT 模型中。具體而言,student 網絡學習如何擬合 teacher 網絡中多頭注意力的矩陣,目標函數定義如下:

其中,h 是注意力頭數。A_i ∈ R^( l×l) 是與 teacher 或 student 的第 i 個注意力頭對應的注意力矩陣。

此外,(非歸一化)注意力矩陣 A_i 用作擬合目標,而不是其 softmax 輸出的 softmax(A_i),因為實驗表明前者的設置呈現更快的收斂速度和更佳的性能。除了基於注意力的蒸餾之外,研究者還對 Transformer 層輸出的知識進行蒸餾處理(具體可參考上圖 1(b)),目標函數定義如下:

其中 H^S∈R^l×d'和 H^T∈R^l×d 分別表示 student 和 teacher 網絡的隱狀態,由方程式 4 計算得到。標量值 d 和 d'分別表示 teacher 和 student 模型的隱狀態,並且 d'通常小於 d,以獲得更小的 student 網絡。

研究者還執行了嵌入層的蒸餾,與基於隱狀態的蒸餾類似,定義如下:

其中矩陣 E^S 和 H^T 分別表示 student 和 teacher 網絡的嵌入。在論文中,這兩種矩陣的形狀與隱狀態矩陣相同。矩陣 W_e 表示線性變化,它起到與 W_h 類似的作用。

除了模擬中間層的行為之外,研究者還利用知識蒸餾來擬合 teacher 模型的預測結果。具體而言,他們對 student 網絡 logits 和 teacher 網絡 logits 之間的 soft 交叉熵損失進行懲罰:

其中 z^S 和 z^T 分別表示 student 和 teacher 模型預測的 logits 向量,log_softmax() 表示 log 似然,t 表示溫度值。實驗表明,t=1 時運行良好。

通過以上幾個蒸餾目標函數(即方程式 7、8、9 和 10),可以整合 teacher 和 student 網絡之間對應層的蒸餾損失:

在實驗中,研究者首先執行的是中間層蒸餾(M ≥ m ≥ 0),其次是預測層蒸餾(m = M + 1)。

兩段式學習框架

BERT 的應用通常包含兩個學習階段:預訓練和微調。BERT 在預訓練階段學到的大量知識非常重要,並且遷移的時候也應該包含在內。因此,研究者提出了一個兩段式學習框架,包含通用蒸餾和特定於任務的蒸餾,如下圖 2 所示:

圖 2:TinyBERT 的兩段式學習圖示。

通用蒸餾可以幫助 student TinyBERT 學習到 teacher BERT 中嵌入的豐富知識,對於提升 TinyBERT 的泛化能力至關重要。特定於任務的蒸餾賦予 student 模型特定於任務的知識。這種兩段式蒸餾可以縮小 teacher 和 student 模型之間的差距。

通用蒸餾

在通用蒸餾中,研究者使用原始 BERT 作為 teacher 模型,而且不對其進行微調,利用大規模文本語料庫作為學習數據。通過在通用領域文本上執行 Transformer 蒸餾,他們獲取了一個通用 TinyBERT,可以針對下遊任務進行微調。然而,由於隱藏/嵌入層大小及層數顯著降低,通用 TinyBERT 的表現不如 BERT。

針對特定任務的蒸餾

研究者提出通過針對特定任務的蒸餾來獲得有競爭力的微調 TinyBERT 模型。而在蒸餾過程中,他們在針對特定任務的增強數據集上(如圖 2 所示)重新執行了提出的 Transformer 蒸餾。具體而言,微調的 BERT 用作 teacher 模型,並提出以數據增強方法來擴展針對特定任務的訓練集。

此外,上述兩個學習階段是相輔相成的:通用蒸餾為針對特定任務的蒸餾提供良好的初始化,而針對特定任務的蒸餾通過專注於學習針對特定任務的知識來進一步提升 TinyBERT 的效果。

實驗效果

為了驗證 TinyBERT 的效果,研究者在多個任務上將其與其他模型進行了比較。

在 GLUE 上的實驗效果

研究者在 GLUE 基準上評估了 TinyBERT 的性能,結果如下表 2 所示。模型大小和推理時間的效率見下表 3。

表 2:在 GLUE 基準上的評估結果。

表 3:基線模型和 TinyBERT 的模型大小和推理時間。層數量不包含嵌入和預測層。

實驗結果表明:1)TinyBERT 在所有 GlUE 任務中的表現都優於 BERTSMALL,平均性能提升了 6.3%,表明本文提出的 KD 學習框架可以有效地提升小模型在下遊任務中的性能;2)TinyBERT 顯著超越了 KD SOTA 基線(即 BERT-PKD 和 DistillBERT),比 BERT-PKD 高出 3.9%(見圖 2),但參數只有基線模型的 28%,推理時間只有基線模型的 31% 左右(見圖 3);3)與 teacher BERTBASE 相比,TinyBERT 的大小僅為前者的 13.3%,但速度卻是前者的 9.4 倍,而且性能損失不大。4)TinyBERT 與 Distilled BiLSTM_SOFT 模型效率相當,在 BiLSTM 基線公開的所有任務中均顯示出了明顯的性能提升。5)對於具有挑戰性的 CoLA 數據集,所有的蒸餾小模型與 teacher 模型的性能差距都比較大。TinyBERT 與基線模型相比實現了顯著的性能提升,如果利用更深、更寬的模型來捕獲更複雜的語言信息,它的性能還能進一步提升。

模型大小的影響

為了測試模型大小對性能的影響,研究者在幾個典型的 GLUE 任務中測試了不同大小 TinyBERT 模型的性能。結果如下表 4 所示:

表 4:提升寬度、深度之後的 TinyBERT 變體與基線的性能比較結果。

不同學習步驟的影響

本文提出的兩段式 TinyBERT 學習框架包含三個關鍵步驟:TD(特定於任務的蒸餾)、GD(通用蒸餾)和 DA(數據蒸餾)。每個學習步驟的影響如下表 5 所示:

表 5:不同學習步驟的控制變量研究。

不同蒸餾目標的影響

研究者還探索了不同目標對 TinyBERT 學習的影響,結果如下表 6 所示:

表 6:不同蒸餾目標對 TinyBERT 學習的影響。

映射函數對模型性能的影響

研究者探究了不同映射函數 n = g(m) 對於 TinyBERT 學習的影響,比較結果見下表 7:

表 7:不同映射策略的對比結果。

本文為機器之心報導,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

相關焦點

  • 從50倍遠景到400倍微觀拍攝,看清世界從華為和華中科技大學開始
    華為p30pro的50倍遠景拍攝華為從一家網絡通訊器材服務商蛻變為專業的移動硬體生產商,從手機製造的門外漢發展到國內唯一擁有自主手機CUP晶片的國產手機製造商。就像聯想集團曾經的總工程師倪光南院士分析了造成聯想和華為發展差異的重要原因,曾經聯想手機的市場佔有率屬於第一梯隊,整體的市值是華為的15倍,然而目前華為的估值超過4000億美元,而聯想則是80億美元,根據倪光南院士的說法是,華為把資本全用在了技術研發上,而聯想則是簡單的商業運作上,當華為P30pro上市的時候,50倍的數碼變焦讓歐美用戶驚嘆不易,紛紛吐槽蘋果手機已經變得很落後,加上5G領域的絕對領先
  • 華為諾亞方舟開源哪吒、TinyBERT模型,可直接下載使用
    機器之心整理 參與:一鳴 華為諾亞方舟實驗室開源了一批優秀預訓練語言模型,性能更好、使用更方便。 昨日,華為諾亞方舟實驗室的 NLP 團隊開源了兩個重要的預訓練語言模型——哪吒和 TinyBERT。這兩個模型可以直接下載、預訓練和微調。華為語音語義首席科學家劉群在微博上轉發了這一消息。
  • 【解密】華為作業系統專利解讀;比Wi-Fi快100倍,OPPO關於LiFi技術...
    1、【專利解密】華為桌上型電腦?華為作業系統專利解讀2、比Wi-Fi快100倍,OPPO關於LiFi技術專利曝光3、華為內摺疊手機專利曝光,配有手寫筆4、可用於自動駕駛汽車的VR頭戴式耳機!蘋果新專利曝光5、蘋果註冊AppleOriginalProductions.com域名
  • 華為P30拍照霸榜,徠卡四攝+超強50倍數碼變焦,賣的是手機還是望遠鏡?
    事實表明,華為果然不負眾望,除了繼續刷新DxO評測得分新高之外,搭載5倍潛望式光學變焦相機的華為P30Pro開啟了智慧型手機拍照新時代。uA8EETC-電子工程專輯北京時間3月26日晚9點,華為在法國巴黎舉辦P30系列發布會,一同亮相的還有智能手錶華為WatchGT、FreeLace藍牙耳機、FreeBuds Lite無線藍牙耳機、智能太陽眼鏡等。
  • 華為手機如何拍攝32倍960幀慢動作、熄屏快拍,不錯過精彩瞬間
    拍攝一閃即逝的事物總是把握不好節奏,總是錯過精彩瞬間,別著急,華為手機的熄屏快拍和慢動作幫你解決煩惱。抓拍精彩瞬間,慢放展示更多細節。熄屏快拍先來個簡單的,熄屏快拍。打開【相機】——【右上角的設置】——【滑動到底部】——【熄屏快拍】——【選擇啟動相機並拍照】。設置完成後即使手機沒有解鎖也可以雙擊音量下鍵快速抓拍。如何拍攝慢動作視頻華為手機的32倍960幀慢動作將美好的事物慢放,展示更多細節,回顧精彩瞬間。
  • 速度比WiFi快20倍的THz無線通信技術
    打開APP 速度比WiFi快20倍的THz無線通信技術 發表於 2019-03-14 10:38:10 當我們還在感嘆新一代802.11n Wi-Fi傳輸速度如此迅捷的時候,日本科學家已經開始研究下一代無線網絡的關鍵技術了。他們最近剛剛打破了Wi-Fi無線傳輸速度的世界紀錄,傳輸速率比目前的Wi-Fi傳輸高出20倍。
  • 快過千兆寬帶!聯通體驗用戶開通5G,速度超4G幾十倍
    據該博主透露,長沙聯通在1月10日邀請首批開通5G功能的用戶前往體驗,「下載速度比4G速度快40-60倍」,並且「超級快,比目前1000兆的寬帶都快多了,幾乎無延遲」。雖然這位博主沒有透露具體的下載速度,但是我們可以從千兆網絡的理論峰值1Gbps來估算,長沙聯通提供的5G測試至少達到了1Gbps的下載速率。
  • 華為拍照旗艦直降4400,8+512G跌至2599,還有麒麟980+50倍變焦!
    在最近幾年時間中,因為手機市場中的競爭愈發激烈,而伴隨著用戶對於手機的需求越來越高,所以市場中也是湧現出了拍照手機、性能手機等幾個流派,在拍照方面,華為作為國產老大哥,也是跟索尼合作定製出了專屬的徠卡主攝,依靠這徠卡主攝的存在,華為大多機型在DXO榜單中也是有著一席之地,如今隨著鏡頭模組的降價,華為也是受到了不小的影響,老牌拍照旗艦直降4400元,8+512G版本跌至2599,還有麒麟980+50倍變焦
  • 世界最小攝影棚閃光燈問世:回電速度快4倍
    不過保富圖可以說非常「固執」,儘管從外形上看A1完全可以被視為是一款熱靴式閃光燈產品,但公司仍然堅持將其稱為攝影棚閃光燈,如此一來保富圖A1就成為了世界上最小的攝影棚閃光燈。保富圖還表示,A1的官方回電速度僅為1.2s,這要比其他熱靴式閃光燈的回電速度快上4倍。
  • 華中科大菜場攤位費15年沒漲 低菜價引校外居民趕集
    原標題:華中科大菜場攤位費15年沒漲 低菜價引校外居民趕集 楚天都市報記者陳希攝影  楚天都市報訊記者黃士峰  昨日8時,光谷居民蔡女士來到華中科技大學集貿市場,花3.8元買了一斤有機花菜,這裡的有機花菜比附近菜場每斤便宜兩角錢
  • 臺灣5G下載速度全球排名第四!比4G快上6.4倍
    根據全球測速機構的統計,7月份到9月份全球15個國家和地區通過的5G網速測試,臺灣地區的5G下載速度達到了211.8Mbps,在全球排在第四位。與目前的4G相比,泰國的5G速度比4G提高了很多,其次是沙烏地阿拉伯和科威特等國家。
  • 「華中三傑」GDP總和13.65萬億,是東北三省2.6倍,河南以一敵三
    國家統計局數據顯示,在1999年即世紀之交那一年,河南省國內生產總值(即GDP)為4518億元,增長8.1%;湖北省GDP為3229億元,增長7.8%,湖南省GDP為3215億元,增長8.4%。1999年,中國國內生產總值為90564億元,華中三省總GDP為10962億元,佔全國比例為12.1%。
  • 斯坦福深度學習訓練及推理榜單:華為雲拿下雙料冠軍
    在訓練性能方面,ResNet50_on_ImageNet上的測試結果顯示,當採用128塊V100時,華為雲ModelArts上模型訓練時間僅需4分08秒,較其2018年12月創下的9分22秒紀錄快了一倍,比此前fast.ai在AWS平臺上的訓練速度快4倍;在推理性能方面,華為雲ModelArts識別圖片的速度是排名第二廠商的1.7倍,亞馬遜的4倍,谷歌的9.1
  • 貓的反應速度是蛇的7倍,試想一下貓的反應速度能躲子彈嗎?
    雖然很多科學家都對貓的速度做過測試,但是並沒有證據顯示,貓的反應速度被完全激發過,所以有可能比現實中的數據更快。很多時候我們都能看見,貓經常會將蛇玩弄於鼓掌之間,是蛇的速度不夠快嗎?世界上速度最快的森林貓速度可達每小時65公裡,這個速度也只能維持半分鐘左右,貓的衝刺速度和敏捷能力非常厲害,但是耐力是它的弱點,不過無論是家貓還是野貓捕食都是講究一擊必殺,迅速出擊,和老虎一樣更像是潛伏中的刺客,耐力對它來說影響不大。
  • 中國聯通開通5G,稱比4G速度快50倍
    另外該用戶在微博下方的評論中提到,雖然目前還沒有5G手機,但聯通公司有體驗設備,網速「比目前1000兆的寬帶都快多了,幾乎無延遲」、「5G下載速度比4G速度快40-60倍」,並表示湖南長沙這邊聯通已經覆蓋了5G。
  • 消息稱華為員工進駐新榮耀沒有 1.7 倍收入補償
    12月1日消息11 月中旬,華為官方發布聲明,為讓榮耀渠道和供應商能夠得以延續,華為投資控股有限公司決定整體出售榮耀業務資產,收購方為深圳市智信新信息技術有限公司。
  • 高通QC5快充方案發布:速度提升4倍
    快充算是最近一兩年手機上進步最快的關鍵技術之一,各類 40、50 乃至 65W 快充方案可謂百花齊放,此前小米、OPPO、iQOO、realme 還紛紛發布了百瓦級快充方案,將充電時間進一步壓縮至 20 分鐘以內,不過充電功率、速度提升越來越快的同時也帶來了一大問題——各家開發的私有協議快充難以通用
  • 華為扛不住了,華為P40一夜跌至新低,還是麒麟990+30倍數字變焦
    華為是一家國際大廠,在國際享有極高的聲譽。加上本持有5G技術,華為的5G手機的實力不容小覷。但是隨著各大廠商的5G手機紛紛出現,華為遭遇到了很大的挑戰,華為在5G市場的衝擊下開始扛不住了,華為P40近期在第三平臺降價售賣,直降910元,一夜跌至新低,但是作為華為的真香高端機,華為P40降價後,手機迎來了又一波華為熱!
  • 火箭能飛多快?最慢也是子彈速度的七倍多
    生活中,人們常用「火箭速度」來形容速度快,但是你知道火箭的飛行速度究竟有多快嗎?又是什麼因素影響火箭的飛行速度呢?據了解,發射不同的目標軌道,火箭的飛行速度是不一樣的。一般來說,發射高度500公裡的太陽同步軌道,火箭入軌時速度為7.6千米/秒;發射地球同步轉移軌道,火箭入軌時速度可以達到10.1千米/秒;而發射地月轉移軌道,火箭入軌時速度甚至可達10.8千米/秒。
  • 速度比飛機快4倍,超級高鐵,跨時代的交通工具
    本文參加百家號科學#了不起的前沿科技#系列徵文時速能達到4000公裡/小時,比飛機還快好幾倍?北京到上海只需要20分鐘?不管你信不信,神秘的超級高鐵可能就要來了,人類的技術發展真是日新月異,那今天小編就和大家科普下超級高鐵的故事。