BERT模型在NLP中目前取得如此好的效果,那下一步NLP該何去何從?
在BERT的表示學習下很多靠複雜網路結構的模型也隨之失效,同時很多的遷移學習和弱監督學習等方法也在NLP中失去了用武之地或者效果沒有那麼明顯,那下一步NLP該忘哪個方向去發展?除去NLP中的推理,知識圖譜等內容,還有什麼可以進一步嘗試的?
親,我覺得BERT只是開始。BERT是一個簡潔優雅大力出奇蹟的工作,我是非常欣賞的。我覺得可以把BERT比喻成NLP界「ResNet」,一系列更大的革命在等著我們。
1. 更大的BERT
一方面是BERT才十二層,相比CV的ResNet等上百層網路,把BERT提升到上百層上千層,會怎樣?
一方面transformer對長文本,實際上非常不友好,計算量非常大,如何讓BERT應付長文本的調整。
2. 更豐富的信息
此前BERT是基於字的,如果使用n-gram會怎麼樣,所以有n-gram BERT。
BERT是基於文本的,如果引入外部知識會怎麼樣,所以有了百度的ERNIE
3. 更快的BERT
BERT另外一大挑戰是如此大,如此重的模型,如何上線?
用小模型,如三層transformer就獲得十二層transformer的效果?這是模型蒸餾的角度。
用更少的參數?剪去多餘無效的參數?這是模型剪枝。
用更低的精度呢?INT8行不行?三值網路行不行?二值網路行不行?
精簡transformer呢?研究更高效的transformer?
BERT如今提出來已經很久,基於pre-trained model的研究可以說層出不窮,包括下游任務的應用,學到的權重的解釋,壓縮模型,knowledge學習等,最新的復旦邱老師關於Pre-trained 模型的綜述:
https://arxiv.org/pdf/2003.08271.pdf?arxiv.org裡面給出了預訓練模型的分類總結以及在未來的可能方向,相信能有所收穫。
目前可以嘗試的方向:
- Multi-task
- Multi-model (多模態,NLP結合圖片,知識,語音等)
- 領域相關的預訓練
- BERT在不同領域,不同任務的嘗試,每一層學習知識的理解。
- GNN(Graph Neural Network: GNN, GCN and GAT), RL (Reinforcement Learning),meta learning and few-shot learning. 結合知識圖譜,常識等內容。
- 模型可解釋性。
- NLP與其他任務的結合,如情感分類與問答,檢索,推薦等的結合,甚至結合圖像情感分類。
以下摘抄自:
阿里云云棲社區:通用句子向量漫談?zhuanlan.zhihu.com- 引入領域知識、語法句法知識、業務知識、常識,訓練更好的句子表徵。領域知識包含知識圖譜等結構化數據,給定一個知識圖譜和一個自然語言問題,如何將該問題轉化為機器能夠理解和執行的語義表示,受到了來自全世界研究者的廣泛關注和深入探索。
- Meta-learning。對於低資源的語言或長尾問題,樣本稀缺,Meta-learning作為解決Few-shot問題的方法之一已在CV領域取得了諸多進展,而在NLP領域仍存在廣闊的空間。
- 圖神經網路。圖作為一個可推理,研究人員開始研究如何將卷積神經網路遷移到圖數據上,湧現出ChevNet、MoNet、GCN、GAT等一系列方法,在基於圖的半監督分類和圖表示學習等任務中表現出很好的性能。句子本身是具有語法結構信息的,基於圖神經網路的句子表徵已經在一些特定的任務如事件抽取、關係抽取取得了不錯的效果,是否有進一步的擴展空間值得研究。
- 多模態。嬰兒在掌握語言功能前,首先通過視覺、聽覺和觸覺等感官去認識並瞭解外部世界。語言並不是人類在幼年時期與外界進行溝通的首要手段。因此,構建通用人工智慧也應該充分地考慮自然語言和其他模態之間的互動,並從中進行學習,這就是多模態學習。
- 可解釋性。詞、句子表徵一直都是大黑盒,雖然存在一些學者對向量維度進行可解釋信性研究,然而如何平衡可解釋和性能,如何將NLP模型預測結果解釋給客戶是一個方向。
目前的嘗試:
本人主要目前主要做一些Aspect Based Sentiment Classification的工作,也就對目前BERT結合該任務進行的一些嘗試,實驗可以發現目前在這個任務中,只要把Sentence和aspect看成兩句話,然後得到768維的表示輸入到一個MLP就可以在Restaurant14和Laptop14獲得84.5和79的準確率(直接在test上取最好),而目前沒有BERT的模型效果差不多隻有80-82和72-76之間。同時在BERT獲得詞向量基礎上疊加複雜的網路對效果的提升很小,目前ASC結合BERT的論文有三個:
- AEN_BERT / BERT_SPC: Attentional Encoder Network for Targeted Sentiment Classification. arXiv preprint 2019. [paper] [code]
- BERT_PT: BERT Post-Training for Review Reading Comprehension and Aspect-based Sentiment Analysis. NAACL 2019. [paper] [code]
- BERT-pair: Utilizing BERT for Aspect-Based Sentiment Analysis via Constructing Auxiliary Sentence. NAACL 2019. [paper] [code]
整理一份目前對於BERT等預訓練模型介紹的一些知乎文章:1.
張俊林:從Word Embedding到Bert模型—自然語言處理中的預訓練技術發展史?zhuanlan.zhihu.com
2.
夕小瑤:NLP的遊戲規則從此改寫?從word2vec, ELMo到BERT?zhuanlan.zhihu.com3.
如何評價 BERT 模型??www.zhihu.com
4.
量子位:全面超越人類!Google稱霸SQuAD,BERT橫掃11大NLP測試?zhuanlan.zhihu.com5.
李如:【NLP】Google BERT詳解?zhuanlan.zhihu.comBERT 中transfer模型通俗易懂的介紹以及和RNN,CNN實驗對比:
數據汪:BERT大火卻不懂Transformer?讀這一篇就夠了?zhuanlan.zhihu.com張俊林:放棄幻想,全面擁抱Transformer:自然語言處理三大特徵抽取器(CNN/RNN/TF)比較?zhuanlan.zhihu.com
BERT展望:
張俊林:Bert時代的創新:Bert應用模式比較及其它?zhuanlan.zhihu.com
BERT目前使用最方便的調用方式:
huggingface/pytorch-pretrained-BERT?github.com
我總結BERT所代表的趨勢是,深度學習從特定任務有監督訓練數據到非特定任務無標註文本數據的推廣,將觸手從有監督的小數據擴展到了沒有專門標註的大數據上。深度學習愈發成為從各類型文本數據中「萃取」有用信息的利器,將數據驅動的威力發揮得更加淋漓盡致。
沿著數據驅動的路線,有很多可以推進的方向。一方面,人們很自然想到在BERT基礎上研究特定任務的適配Fine-Tune模型,這在進入2019年的arxiv論文已經初見端倪,特別是在Few Shot Learning等場景下的小數據任務上效果尤為明顯。另一方面是在BERT思想的啟發下,是否可以在Mask LM和Next Sentence Prediction之外設計更多學習任務,將文本數據中的更多有用信息學習進來,例如百度ERNIE考慮實體的邊界信息,跨語言信息,文本的其他元信息或結構信息(如鏈接、作者、時間、標籤等等),相信在未來1-2年內都會如約而至。
由於我主要從事知識圖譜與自然語言處理的研究,所以對結構化知識格外感興趣。我總覺得深度學習僅從文本數據中真正地理解人類語言。我認為,將人類知識符號化表示出來並與深度學習融合,是實現可解釋、有理解能力的自然語言處理的必經之路。之前報告中經常舉如下這個例子,可以一定程度說明,大規模無標註文本中除了自身蘊藏的語言知識外,還關聯著各種類型的人類知識。由於這些知識並不完全在文本數據中,無法僅用數據驅動的深度學習來習得。
聚焦到以BERT為代表的文本預訓練模型而言,當務之急是如何將大規模的外部知識圖譜(如語言知識、常識知識、世界知識、行業知識等)融合進來,提升模型的可解釋性和魯棒性。我們在ACL 2019上的ERNIE(https://arxiv.org/abs/1905.07129)是非常初步的嘗試(這裡還有個與百度ERNIE重名的小插曲,詳情參見我在另一個問題下的回答:https://www.zhihu.com/question/324223170/answer/686289852)。
總之,我深信知識圖譜+深度學習大有可為,我目前設想的技術體系如下圖所示,希望能夠吸引更多朋友的興趣,共同探索這個充滿未知的領域。
推薦閱讀: