0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

讓長短期記憶人工神經(jīng)網(wǎng)絡(luò)重返巔峰

深度學(xué)習(xí)自然語言處理 ? 來源:AINLP ? 作者:葉文杰 ? 2021-04-04 17:08 ? 次閱讀

1.開篇

去年年底,各大榜單上風(fēng)起云涌,各路英雄在榜單上為了分?jǐn)?shù)能多個0.01而不停的躁動,迫不及待地想要向外界秀秀自己的肌肉。

怎么回事呀,小老弟?

我們打開了中文NLP知名的評測網(wǎng)站CLUE,卻看到……

dbd9022a-88e9-11eb-8b86-12bb97331649.png

怎么全是Bert和它的兄弟?

遙想4年前,還全是RNN,LSTM和CNN的天下,怎么轉(zhuǎn)眼都不見了?LSTM不禁長嘆:年輕人,不講武德!欺負(fù)我這個25歲的老同志。

那么有沒有辦法讓LSTM重新煥發(fā)青春呢?有!知識蒸餾!

2.什么是知識蒸餾?

知識蒸餾的思想很簡單,就是讓一個教師模型來指導(dǎo)學(xué)生模型,讓學(xué)生模型學(xué)到教師模型的知識,而知識蒸餾的的核心也就是知識。

dc2489c0-88e9-11eb-8b86-12bb97331649.png

依據(jù)蒸餾所用的知識,可以把蒸餾分成三種:

Response-based Distillation:學(xué)學(xué)教師最后的輸出就夠我喝一壺了。

Feature-based distillation:中間層的知識也不能放過,畢竟神經(jīng)網(wǎng)絡(luò)最擅長的就是學(xué)習(xí)到層級信息。

Relation-based distillation:這些表面的知識完全不夠,還要深挖層與層之間的關(guān)系,樣本與樣本之間的關(guān)系。

而這些知識之所以有效,主要是因為隱含的特征 (dark knowledge) 無法在數(shù)據(jù)層面表示出來,模型可以學(xué)習(xí)到這些特征。One-hot 無法衡量類間的區(qū)別,知識蒸餾一定程度上起到了標(biāo)簽平滑的作用。比如說馬,驢和樹他們在標(biāo)注上都是不同的,通過one-hot表示呈現(xiàn)的區(qū)別也一致,很顯然,馬和驢的相似性強于馬和樹,而我們的標(biāo)注無法衡量這種相似性,但是我們的教師模型卻可以學(xué)到這樣的知識。

細(xì)看這些年的BERT蒸餾都是這些套路:

DistilBERT: 學(xué)學(xué)教師最后的輸出就夠我喝一壺了

PKDBERT: 中間層的我也都要學(xué)

TinyBERT: embedding層的知識呢?我全都要!

TinyBERT對于知識的態(tài)度

既然能用蒸餾訓(xùn)練出一個性能強悍的小BERT,那可不可以用同樣的方法來蒸餾LSTM,讓他煥發(fā)第二春呢?

3.師夷長技以制夷

蒸餾的第一步是要選取一個表現(xiàn)優(yōu)秀的教師模型,NER大榜的TOP1被RoBERTa搶先了,于是我們也選取RoBERTa作為我們的教師模型,在驗證集上得分81.55。同時,在同樣的訓(xùn)練集下訓(xùn)練雙向LSTM,得分68.56。兩者F1得分差距較大,直接嘗試response-baseddistillation:

模型 NER F1 (Valid)
Roberta 81.55
LSTM (Baseline) 68.56
LSTM (蒸餾) 71.01

得分有所提升,但是和榜單上那個78、79的相比還是有很大的距離。這可怎么辦?

這可怎么辦?

有什么能進(jìn)一步提升模型能力的方法,想想各類BERT都在幾個T的數(shù)據(jù)上用幾十塊GPU訓(xùn)練了幾百個小時,我們的LSTM只用個1萬訓(xùn)練集當(dāng)然不可能擊敗他們。我們也要用數(shù)據(jù)增強!

4.數(shù)據(jù)增強

CLUE NER的數(shù)據(jù)集是來源于清華大學(xué)開源的數(shù)據(jù)集THUCTC,所以我們嘗試使用THU-News數(shù)據(jù)集進(jìn)行增強。隨機(jī)采樣30萬條進(jìn)行測試。

dcf7dd3e-88e9-11eb-8b86-12bb97331649.png

這個0如此之純粹,讓人一度以為是不是跑錯了代碼,然后連續(xù)運行三次,得到的結(jié)果都是0!

我們趕緊拿到報告,找到里面的bad case(沒有一條不是bad case),發(fā)現(xiàn)結(jié)果很直白,所有的預(yù)測全是O(非實體)。趕緊找來增強數(shù)據(jù)集出來看看,看到了這個:

他?亦或是她?也許都會有。
總會有花花修的,¥%……&&() ———當(dāng)下沖動的想問問她姐姐是誰暴捶一頓……
今日懸念揭曉,幾家雀躍幾家驚訝,《精靈傳說》正式與大家見面,
help item/ヘ兒プアイテム)等等 。
credits作為zynga旗下游戲在facebook平臺上的主要支付方式。
成為勇士中的王者!
令附:
為了鼓勵大家多交朋友,目前android版本所有禮物都可以無限次免費贈送,現(xiàn)在就去吧!
《馬里奧賽車wii》wii任天堂株式會社
這是由大眾對文化價值觀認(rèn)同決定的。2010年有差不多接近1億左右的玩家,

THU-News新聞數(shù)據(jù)集-游戲部分

可以看出,大部分樣本一個實體都沒有,和我們的任務(wù)完全就不是相同的分布(skewed),用這種數(shù)據(jù)集來訓(xùn)練模型,訓(xùn)練出來的模型將所有的標(biāo)簽都認(rèn)為成O(非實體)。

5.那么怎么從這些雜亂的數(shù)據(jù)集中提取出可以用作增強的數(shù)據(jù)集呢?

如果讓人工來清洗數(shù)據(jù)集的話,對于數(shù)據(jù)增強需要幾十幾百倍的數(shù)據(jù),NER標(biāo)注數(shù)據(jù)有有一點難度。人工根本行不通!

鑒于我們在使用知識蒸餾訓(xùn)練模型,那能不能請教師模型來幫忙清洗數(shù)據(jù)?

dd66a390-88e9-11eb-8b86-12bb97331649.png

我們進(jìn)行了個大膽的嘗試,不對數(shù)據(jù)集進(jìn)行任何清洗,直接用教師模型對2000萬的雜亂數(shù)據(jù)集進(jìn)行推理,然后只保留了教師模型認(rèn)為包含實體的數(shù)據(jù):

至少包含一個實體 至少包含兩個實體
甚至吸引了剃了平頭的六番隊隊長朽木白哉~!哈哈哈(大誤~。 聯(lián)合導(dǎo)演兼主演吳亞橋擔(dān)當(dāng)形象大使的《劍網(wǎng)3》“收費游戲免費玩”高校威武計劃。
2008年12月“it時代周刊:2008年最具商業(yè)價值網(wǎng)站”; 游戲委員會稱,對游戲的審核需要很長時間,所以像蘋果和谷歌系統(tǒng)旗下的游戲,
嘟嘟的目標(biāo)是召集100名玩家在三江源辦一場變身舞會,在這里希望大家?guī)退黄疬_(dá)成愿望。 咪兔數(shù)位科技旗下《穿越火線online》全新改版“末世錄”正式上線!玩家不僅能體驗到全新的“
但這一次overkill依然把自己的作品托付給了一家日本公司:soe(索尼娛樂在線)。 北美區(qū)全球爭霸戰(zhàn)亞軍隊伍tsg對上韓國全球爭霸戰(zhàn)冠軍隊伍shipit,分別采取圣騎、戰(zhàn)士、
在最初階段,微軟發(fā)言人曾表示:“微軟決不允許他人修改自己的產(chǎn)品 dice已經(jīng)抓住使命召喚的這根軟肋了。
infi始終不給soccer拉后紅血單位的機(jī)會, tesl臺灣電競聯(lián)盟提供了720p以上的高畫質(zhì)在線直播、與我視傳媒共同合作,在i‘
阿里納斯因槍擊隊友事件被游戲除名 看完上面這個名單,你可能會說gbasp和ndsi也沒有《馬里奧》游戲首發(fā),
來自世界各地的媒體紛紛希望能夠在e3任天堂展位上,搶先試玩到這款新主機(jī),使得展位大排長龍。今日, 有玩家說:這真是索任結(jié)合啊,游戲是任天堂的,但是按鍵是索尼風(fēng)格的……
一統(tǒng)亂世》即將在明日正式登場。今次數(shù)據(jù)片改版將會開放多部族結(jié)盟的“聯(lián)盟系統(tǒng)”、爭奪地圖占領(lǐng)權(quán)的“ 最后todd透露,“我們不知道會為《上古卷軸5》制作什么樣的dlc,
始料不及《西游iii》你猜不到的結(jié)局 并且可以用這個地圖編輯器做出很多目前流行的地圖,塔防、dota等經(jīng)典地圖都可以在《星際2》

教師模型輔助清洗后的數(shù)據(jù)

教師模型為我們選擇的這份數(shù)據(jù)集干凈的多,不包含無實體,無意義的句子。但是作為交換,原來的2000萬數(shù)據(jù)集只剩下110萬左右。

利用篩選后的數(shù)據(jù)集訓(xùn)練模型,得到:

模型 數(shù)據(jù)集 蒸餾 NER F1 參數(shù)
Roberta-Large (教師模型) train 81.55 311.24M
LSTM (Baseline) train 68.56 9.66M (x32.21)
LSTM train 71.01 9.66M (x32.21)
LSTM train+10w增強 72.61 9.66M (x32.21)
LSTM train+20w增強 74.61 9.66M (x32.21)
LSTM train+30w增強 76.51 9.66M (x32.21)
LSTM train+40w增強 77.30 9.66M (x32.21)
LSTM train+50w增強 77.40 9.66M (x32.21)
LSTM train+60w增強 78.14 9.66M (x32.21)
LSTM train+110w增強 79.68 9.66M (x32.21)


CLUE NER 結(jié)果

ddbb38c4-88e9-11eb-8b86-12bb97331649.png

不同增強數(shù)據(jù)集增強效果

可以看出,隨著增強數(shù)據(jù)集數(shù)量的提升,學(xué)生模型效果也在逐步提升。使用110萬數(shù)據(jù)集,驗證集的分?jǐn)?shù)可以達(dá)到79.68。繼續(xù)增加數(shù)據(jù),效果應(yīng)該還會有進(jìn)一步提升。提交到榜單上,測試集的分?jǐn)?shù)可以達(dá)到78.299,CLUENER單項排第二名,眾多的BERT中擠出了一個LSTM。

nice!

6. 總結(jié)

利用少量的訓(xùn)練集訓(xùn)練教師模型,隨后收集增強數(shù)據(jù)集用來訓(xùn)練學(xué)生模型可以大幅提升學(xué)生模型的能力。這樣在業(yè)務(wù)的初期,只需要利用少量的標(biāo)注語料,便可達(dá)到一個相對可觀的一個效果,并且在服務(wù)部署方面使用小模型可以完成對GPU的一個釋放,實際測試中使用學(xué)生LSTMGPU加速比達(dá)到3.72倍,CPU加速比達(dá)到15倍。

而模型蒸餾這樣一個teacher-student的框架,可以十分靈活的選擇教師模型和學(xué)生模型選,比如教師模型可以通過集成選擇一個最好的效果,學(xué)生模型也可以任意嘗試各式的模型結(jié)構(gòu)比如CNN,LSTM,Transformers。當(dāng)然其他的模型壓縮方法,比如說剪枝,近秩分解也可以與這樣的一個框架結(jié)合。而對于數(shù)據(jù)增強,在實際業(yè)務(wù)中,我們無需去尋找額外的公開數(shù)據(jù)集,直接從實際業(yè)務(wù)中就能獲取大量的數(shù)據(jù)來進(jìn)行增強,這樣省去我們篩選數(shù)據(jù)的時間,也能更好的提升模型的效果。

這樣的一套框架在分類,意圖識別槽位提取,多模態(tài)等相應(yīng)業(yè)務(wù)中都取得了較好的效果,甚至在增強數(shù)據(jù)集到達(dá)一定程度時超過了教師模型的效果。

原文標(biāo)題:【知識蒸餾】讓LSTM重返巔峰!

文章出處:【微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1789

    文章

    46403

    瀏覽量

    236655
  • 自然語言處理
    +關(guān)注

    關(guān)注

    1

    文章

    591

    瀏覽量

    13468
  • nlp
    nlp
    +關(guān)注

    關(guān)注

    1

    文章

    483

    瀏覽量

    21978

原文標(biāo)題:【知識蒸餾】讓LSTM重返巔峰!

文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    BP神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)的區(qū)別

    BP神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡稱ANNs)之間的關(guān)系與區(qū)別,是神經(jīng)網(wǎng)絡(luò)領(lǐng)域中一個基礎(chǔ)且重要的話題。本文將從定義、結(jié)構(gòu)、算法、應(yīng)用及
    的頭像 發(fā)表于 07-10 15:20 ?609次閱讀

    如何理解RNN與LSTM神經(jīng)網(wǎng)絡(luò)

    在深入探討RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))與LSTM(Long Short-Term Memory,長短期記憶網(wǎng)絡(luò)
    的頭像 發(fā)表于 07-09 11:12 ?400次閱讀

    rnn是遞歸神經(jīng)網(wǎng)絡(luò)還是循環(huán)神經(jīng)網(wǎng)絡(luò)

    RNN(Recurrent Neural Network)是循環(huán)神經(jīng)網(wǎng)絡(luò),而非遞歸神經(jīng)網(wǎng)絡(luò)。循環(huán)神經(jīng)網(wǎng)絡(luò)是一種具有時間序列特性的神經(jīng)網(wǎng)絡(luò),能夠處理序列數(shù)據(jù),具有
    的頭像 發(fā)表于 07-05 09:52 ?437次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型包含哪些層次

    、多層感知機(jī)、卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、長短期記憶網(wǎng)絡(luò)等。 感知機(jī)(Perceptron) 感知機(jī)是
    的頭像 發(fā)表于 07-05 09:17 ?413次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型的分類有哪些

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks, ANNs)是一種模擬人腦神經(jīng)元網(wǎng)絡(luò)的計算模型,它在許多領(lǐng)域,如圖像識別、語音識別、自然語言處理、預(yù)測分析等有著廣泛的應(yīng)用。本文將
    的頭像 發(fā)表于 07-05 09:13 ?794次閱讀

    遞歸神經(jīng)網(wǎng)絡(luò)是循環(huán)神經(jīng)網(wǎng)絡(luò)

    。 遞歸神經(jīng)網(wǎng)絡(luò)的概念 遞歸神經(jīng)網(wǎng)絡(luò)是一種具有短期記憶功能的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),如時間序列、文本、語音等。與傳統(tǒng)的前饋
    的頭像 發(fā)表于 07-04 14:54 ?551次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本概念

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本概念、循環(huán)機(jī)制、長短時記憶網(wǎng)絡(luò)(LSTM)、門控循環(huán)單元(GRU)等方面進(jìn)行介紹。 循環(huán)神經(jīng)網(wǎng)絡(luò)的基本概念 循環(huán)神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 07-04 14:31 ?476次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理是什么

    循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,簡稱RNN)是一種具有短期記憶功能的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),如時間序列、文本序列等。與傳統(tǒng)的前饋
    的頭像 發(fā)表于 07-04 14:26 ?510次閱讀

    人工智能神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)是什么

    人工智能神經(jīng)網(wǎng)絡(luò)是一種模擬人腦神經(jīng)網(wǎng)絡(luò)的計算模型,其結(jié)構(gòu)和功能非常復(fù)雜。 引言 人工智能神經(jīng)網(wǎng)絡(luò)是一種模擬人腦
    的頭像 發(fā)表于 07-04 09:37 ?355次閱讀

    用于自然語言處理的神經(jīng)網(wǎng)絡(luò)有哪些

    自然語言處理(Natural Language Processing, NLP)是人工智能領(lǐng)域的一個重要分支,旨在計算機(jī)能夠理解和處理人類語言。隨著深度學(xué)習(xí)技術(shù)的飛速發(fā)展,神經(jīng)網(wǎng)絡(luò)模型在NLP領(lǐng)域
    的頭像 發(fā)表于 07-03 16:17 ?610次閱讀

    神經(jīng)網(wǎng)絡(luò)反向傳播算法的作用是什么

    ,廣泛應(yīng)用于各種神經(jīng)網(wǎng)絡(luò)模型中,如卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)和長短時記憶網(wǎng)絡(luò)(LSTM)等。
    的頭像 發(fā)表于 07-03 11:17 ?863次閱讀

    神經(jīng)網(wǎng)絡(luò)人工智能的關(guān)系是什么

    神經(jīng)網(wǎng)絡(luò)人工智能的關(guān)系是密不可分的。神經(jīng)網(wǎng)絡(luò)人工智能的一種重要實現(xiàn)方式,而人工智能則是神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 07-03 10:25 ?775次閱讀

    什么神經(jīng)網(wǎng)絡(luò)模型適合做分類

    神經(jīng)網(wǎng)絡(luò)是一種強大的機(jī)器學(xué)習(xí)模型,廣泛應(yīng)用于各種分類任務(wù)。在本文中,我們將詳細(xì)介紹幾種適合分類任務(wù)的神經(jīng)網(wǎng)絡(luò)模型,包括前饋神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)
    的頭像 發(fā)表于 07-02 11:14 ?463次閱讀

    人工神經(jīng)網(wǎng)絡(luò)的含義和用途是

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡稱ANNs)是一種受生物神經(jīng)網(wǎng)絡(luò)啟發(fā)而構(gòu)建的數(shù)學(xué)模型,它通過模擬人腦神經(jīng)元的連接和信息傳遞方式來實現(xiàn)對復(fù)雜數(shù)據(jù)的處
    的頭像 發(fā)表于 07-02 10:07 ?483次閱讀

    利用神經(jīng)網(wǎng)絡(luò)對腦電圖(EEG)降噪

    數(shù)據(jù)與干凈的EEG數(shù)據(jù)構(gòu)成訓(xùn)練數(shù)據(jù),并且分成訓(xùn)練、驗證和測試數(shù)據(jù)集。 繪制有噪聲EEG數(shù)據(jù)與干凈的EEG數(shù)據(jù) 顯然,傳統(tǒng)的任何算法很難將EEG數(shù)據(jù)從噪聲中濾出來。 定義神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),之所以選擇長短期記憶
    發(fā)表于 04-30 20:40