一文看盡2019年NLP前沿突破

2021-01-16 澎湃新聞

關注前沿科技 量子位

十三 發自 凹非寺

2019年,自然語言處理(NLP)都取得了哪些突破?

提到NLP,BERT可以說是家喻戶曉。

在情感分析、問答、句子相似度等多個 NLP 任務上都取得了優異的成績。

而且,無論是在類似於Kaggle這樣的競賽,或者媒體報導中,也總能看到它的身影。

它發表於2018年末,自那之後的一年,NLP和NLU(自然語言理解)領域有了較大的發展。

那麼,以BERT的發布作為時間節點,本文便梳理了一下在此之前和之後,NLP領域的重要項目和模型。

BERT之前的一些主要 NLP 項目時間表

在提出BERT模型之前,NLP領域中的主要項目按時間排序,如下圖所示:

Word2Vec模型發布於2013年1月,至今也是非常流行。

在任何NLP任務中,研究人員可能嘗試的第一個模型就是它。

https://arxiv.org/abs/1301.3781

FastText和GloVe分別於2016年7月和2014年1月提出。

FastText是一個開源的、免費的、輕量級的庫,它允許用戶學習文本表示和文本分類器。

https://fasttext.cc/

GloVe是一種無監督的學習算法,用於獲取單詞的向量表示。

https://nlp.stanford.edu/projects/glove/

Transformer於2017年6月提出,是一種基於 encoder-decoder 結構的模型。

在機器翻譯任務上的表現超過了 RNN,CNN,只用 encoder-decoder 和 attention 機制就能達到很好的效果,最大的優點是可以高效地並行化。

https://ai.googleblog.com/2017/08/transformer-novel-neural-network.html

ELMo於2018年2月提出,利用預訓練好的雙向語言模型,然後根據具體輸入從該語言模型中可以得到上下文依賴的當前詞表示,再當成特徵加入到具體的NLP有監督模型裡。

https://allennlp.org/elmo

還有一個叫Ulmfit,是面向NLP任務的遷移學習模型,只需使用極少量的標記數據,文本分類精度就能和數千倍的標記數據訓練量達到同等水平。

https://arxiv.org/abs/1801.06146

值得注意的是,ELMo和Ulmfit出現在BERT之前,沒有採用基於Transformer的結構。

BERT

BERT模型於2018年10月提出。

全稱是Bidirectional Encoder Representation from Transformers,即雙向Transformer的Encoder(因為decoder不能獲取要預測的信息)。

△論文地址:https://arxiv.org/abs/1810.04805

模型的主要創新點都在pre-train方法上,即用了Masked LM和Next Sentence Prediction兩種方法分別捕捉詞語和句子級別的表示。

谷歌甚至開始使用BERT來改善搜索結果。

奉上一份較為詳細的BERT模型教程:

http://jalammar.github.io/illustrated-bert/

預訓練權重相關內容可以從官方 Github repo 下載:

https://github.com/google-research/bert

Bert 也可以作為 Tensorflow hub 模塊:

https://tfhub.dev/google/collections/bert/1

文末還會奉上各種非常實用的庫。

BERT之後的一些主要 NLP 項目時間表

在谷歌提出BERT之後,NLP領域也相繼出了其他較為突出的工作項目。

Transformer-XL

Transormer-XL是Transformer的升級版,在速度方面比Transformer快1800多倍。

這裡的XL,指的是extra long,意思是超長,表示Transformer-XL在語言建模中長距離依賴問題上有非常好的表現。同時,也暗示著它就是為長距離依賴問題而生。

長距離依賴問題,是當前文本處理模型面臨的難題,也是RNN失敗的地方。

相比之下,Transformer-XL學習的依賴要比RNN長80%。比Vanilla Transformers快450%。

在短序列和長序列上,都有很好的性能表現。

https://arxiv.org/abs/1901.02860

GPT-2

GPT-2可以說是在BERT之後,媒體報導最為關注的一個NLP模型。

這是OpenAI發布的一個「逆天」的語言AI,整個模型包含15億個參數。

無需針對性訓練就能橫掃各種特定領域的語言建模任務,還具備閱讀理解、問答、生成文章摘要、翻譯等等能力。

而且,OpenAI最初還擔心項目過於強大,而選擇沒有開源。但在10個月之後,還是決定將其公布。

https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf

ERNIE

ERNIE是基於百度自己的深度學習框架飛槳(PaddlePaddle)搭建的,可以同時利用詞彙、句法和知識信息。

實驗結果顯示,在不同的知識驅動任務取得了顯著的改進,同時在其它常見任務上與現有的BERT模型具有可比性。

當前,ERNIE 2.0版本在GLUE排行榜上排名第一。

https://github.com/PaddlePaddle/ERNIE

XLNET

XLNet 是一個類似BERT的模型,是一種通用的自回歸預訓練方法。

它不使用傳統 AR 模型中固定的前向或後向因式分解順序,而是最大化所有可能因式分解順序的期望對數似然。

其次,作為一個泛化 AR 語言模型,XLNet不依賴殘缺數據。

此外,XLNet還改進了預訓練的架構設計。

https://arxiv.org/abs/1906.08237

RoBERTa

RoBERTa由Facebook提出。

它在模型層面沒有改變谷歌的BERT,改變的只是預訓練的方法。

在模型規模、算力和數據上,與BERT相比主要有以下幾點改進:

更大的模型參數量:模型使用 1024 塊 V100 GPU 訓練了 1 天的時間。

更大bacth size:RoBERTa在訓練過程中使用了更大的bacth size,嘗試過從 256 到 8000 不等的bacth size。

更多的訓練數據:包括CC-NEWS 等在內的160GB純文本。

https://arxiv.org/abs/1907.11692

Salesforce CTRL

CTRL全名是Conditional Transformer Language,包含16億個參數。

它具有強大且可控的人工文本生成功能,可以預測哪個訓練數據子集對生成的文本序列影響最大。

通過識別模型中最有影響力的訓練數據來源,為分析大量生成的文本提供了一種潛在的方法。

CTRL還可以通過微調特定任務或轉移模型已學習的表示形式來改進其他NLP應用程式。

https://blog.einstein.ai/introducing-a-conditional-transformer-language-model-for-controllable-generation/

ALBERT

ALBERT是谷歌發布的輕量級BERT模型。

比BERT模型參數小18倍,性能還超越了它,在SQuAD和RACE測試上創造了新的SOTA。

前不久,谷歌還對此進行了升級,發布了ALBERT 2和中文版本。

在這個版本中,「no dropout」、「additional training data」、「long training time」策略將應用到所有的模型。

從性能的比較來說,對於ALBERT-base、ALBERT-large和ALBERT-xlarge,v2版要比v1版好得多。

說明採用上述三個策略的重要性。

https://arxiv.org/abs/1909.11942

性能評測基準

評估這些語言模型的方法之一是Glue Benchmark。

它包括評估模型的各種NLP任務,如分類、問答等。

在Glue Benchmark剛剛發布的時候,BERT模型的性能位居榜首。

但截至2020年1月2日,在僅僅1年時間內,BERT已經排名到了19位。

現在還有一個 SuperGlue 基準測試,它包含了更難理解的語言任務。

對於評估問題回答系統,SQuAD是較為常用的。

BERT和基於transformer模型在此處的性能是較好的。

其它與BERT相關項目

DistilBERT

DistilBERT是HuggingFace發布的小型NLP transformer模型,與BERT的架構類似,不過它僅使用了 6600 萬參數,但在 GLUE 基準上實現了BERT 95% 的性能。

https://arxiv.org/abs/1910.01108

Megatron-LM

Megatron-LM是英偉達發布的NLP模型。

英偉達用自己的硬體與並行計算軟體相結合,當時創下了三項紀錄:

訓練速度只需53分鐘;

推理速度只需2.2ms;

包含83億參數。

https://github.com/NVIDIA/Megatron-LM

BioBERT

BioBERT是用於生物醫學文本挖掘的預訓練生物醫學語言表示模型。

在生物醫學語料庫上進行預培訓時,它在各種生物醫學文本挖掘任務上的表現,在很大程度上超過了BERT和之前的先進模型。

https://github.com/dmis-lab/biobert

CamemBERT

CamemBERT是一種基於RoBERTa 結構的法語語言模型。

https://camembert-model.fr/

NLP庫

下面是作者認為需要了解的一些NLP庫。

Spacy

Spacy 是一個流行的、快速的NLP程序庫,可以處理各種自然語言處理任務,如標記、詞性等。它還提供了預先訓練的NER等模型。

https://spacy.io/

HuggingFace Transformers

它是首批提供 BERT Pytorch實現的庫之一,最初被稱為「 Pytorch-pretrained-BERT」。

後來,他們增加了更多的模型,如GPT-2,XLNET等。

在不到一年的時間裡,它已經成為最流行的 NLP 庫之一,並且使得BERT和其他模型的使用變得更加容易。

https://github.com/huggingface/transformers

AllenNLP

AllenNLP是來自艾倫人工智慧研究所(Allen Institute of AI)的NLP庫,基於PyTorch。

https://allennlp.org/

Flair

Flair也是一個帶有 NER、 POS 等模型的 NLP 庫,還支持 BERT、 ELMO、 XLNET 等嵌入。

https://github.com/flairNLP/flair

GluonNLP

GluonNLP是Apache MXNet 上的NLP工具包,是最早包含預先訓練的BERT嵌入式的庫之一。

https://gluon-nlp.mxnet.io/

那麼,在2020年,NLP又會怎樣的突破呢?

傳送門

https://towardsdatascience.com/2019-year-of-bert-and-transformer-f200b53d05b9

延伸閱讀

英偉達「暴力碾壓」谷歌:53分鐘訓練完BERT,2.2毫秒完成推理,創下NLP三項新紀錄

谷歌ALBERT模型V2+中文版來了:之前刷新NLP各大基準,現在GitHub熱榜第二

全面超越人類!Google稱霸SQuAD,BERT橫掃11大NLP測試

逆天的語言AI模型來了!編故事以假亂真,問答翻譯寫摘要都行,橫掃各大語言建模任務

作者系網易新聞·網易號「各有態度」籤約作者

— 完 —

原標題:《一文看盡2019年NLP前沿突破》

閱讀原文

相關焦點

  • 一文看盡2019全年AI技術突破
    話不多說,一起來逐一盤點2019的那些AI技術吧: 自然語言處理(NLP):語言模型井噴,部署工具湧現 NLP在2019年實現了巨大的飛躍,該領域這一年取得的突破是無與倫比的。 報告認為,2018年是NLP的分水嶺,2019年本質上是在此基礎上進一步發展,讓該領域突飛猛進。
  • 2019,不可錯過的NLP「高光時刻」
    作者 | Elvis譯者 | 凱隱、夕顏【導讀】對自然語音處理(NLP)領域而言,2019年是令人印象深刻的一年,本文將回顧2019年NLP和機器學習領域的重要事件。內容 主要集中於 NLP 領域,但也會包括一些與 AI 有關的有趣故事,包括新發布模型、工程成果、年度報告以及學習資源等。文章較長,將近萬字,適合先馬後看,靜下心來細細研讀。
  • nlp領域發生了新的技術突破,用attention機制研究nlp領域
    近期,nlp領域發生了一系列的技術突破。包括:attention機制,cnn,adaptive attention network(an),兩層cnn相比較,an表現優於一層的cn。今天我們將從這兩種attention機制開始研究nlp領域突破性技術!
  • 一文看盡2018全年AI技術大突破
    2018年裡,NLP領域的突破接連不斷:ULMFiT、ELMo、最近大熱的BERT……遷移學習成了NLP進展的重要推動力。從一個預訓練模型開始,不斷去適應新的數據,帶來了無盡的潛力,甚至有「NLP領域的ImageNet時代已經到來」一說。
  • 2019 年 NLP 領域都發生了哪些大事件?
    使用人工智慧技術開展影像學研究也是 2019 年的一大趨勢。論文《Radiological images and machine learning: trends, perspectives, and prospects》很好地總結了這一研究領域的發展趨勢和前景。
  • 一文看盡2020全年AI技術突破
    Alphafold實現了在生物學上的重大突破,成為了CV和ML領域的裡程碑,被稱作是:「生物界的ImageNet時刻」。Agent57在其Arcade學習環境中(ALE)環境中採用了RL、模型學習、基於模型的訓練、模仿學習、遷移學習和內推力等一系列方法。
  • 斯坦福發布重磅NLP工具包StanfordNLP,支持中文等53種語言
    新智元報導 來源:stanfordnlp.github.io編輯:肖琴【新智元導讀】斯坦福團隊最新發布一個NLP任務的軟體包StanfordNLP,通過Python接口為53種語言提供標記、依存句法分析等NLP任務的重要工具
  • NLP領域最優秀的8個預訓練模型(附開源地址)
    這一突破,使得每個人都能夠輕鬆地完成任務,尤其是那些沒有時間、也沒有資源從頭開始構建自然語言處理模型的人們。對於想要學習或過渡到自然語言處理的初學者來講,它也堪稱完美。為什麼要使用預訓練模型?作者已盡其所能設計了基準模型。我們可以在自己的自然語言處理數據集上使用預訓練模型,而不是從頭構建模型來解決類似的自然語言處理問題。
  • 《國際科學技術前沿報告2019》速覽
    2019年,我們繼續部署這些學科領域戰略情報研究團隊,選擇相應科技創新領域的前沿學科、熱點問題或重點技術領域,開展國際發展態勢分析研究,完成這些研究領域的分析研究報告11份。本書將這11份前沿學科、熱點問題或技術領域的國際發展態勢分析研究報告彙編為《國際科學技術前沿報告2019》正式出版,以供科技創新決策部門和科研管理部門、相關領域的科研人員和科技戰略研究人員參考。
  • 一文看盡全球化企
    雖然日本的化學工業產值僅次於中美位於世界第三,但日本多年重視發展精細化工,把精細化工作為調整化工產業結構、提高產品附加值、增強國際競爭力的有效舉措,如今已經成為功能材料、高端化學品的重要生產國,在暗流湧動的全球化經濟體系下,這無疑是國家突破重圍的必由之路。今天我們來盤一下日本的十四家著名化企,看看他們再過去的2019年裡交了份怎樣的答卷。
  • 一文概述 2018 年深度學習 NLP 十大創新思路
    最近,他基於十幾篇經典論文盤點了 2018 年 NLP 領域十個令人激動並具有影響力的想法,並將文章發布在 Facebook 上。雷鋒網 AI 科技評論編譯如下:今年,我發現了 十個令人激動並具有影響力的想法,並將其匯總成了這篇文章。在未來,我們可能還會對它們有更多了解。對於每個想法,我都挑選 1-2 篇對該想法執行良好的論文。
  • 支持53種語言預訓練模型,斯坦福發布全新NLP工具包StanfordNLP
    Github: https://github.com/stanfordnlp/stanfordnlp … Paper: https://nlp.stanford.edu/pubs/qi2018universal.pdf … PyPI: https://pypi.org/project/stanfordnlp/ … 以下內容介紹了 StanfordNLP
  • 史丹福大學發布 StanfordNLP,支持多種語言
    雷鋒網 AI 科技評論按,近日,史丹福大學發布了一款用於 NLP 的 Python 官方庫,這個庫可以適用於多種語言,其地址是:https://stanfordnlp.github.io/stanfordnlp/,github 資源如下:這是 Stanford 官方發布的 NLP 庫,詳細信息請訪問:https://stanfordnlp.github.io/
  • 一文看盡我國新能源新材料
    負極材料行業市場集中度較高,我國負極材料的國際市場佔有率已處於領先水平,2019年中國企業的出貨量佔全球總出貨量的74%。代表性企業如貝特瑞新材料集團股份有限公司、上海杉杉科技有限公司、江西紫宸科技有限公司等在負極材料的研發和產業化方面已位於世界領先地位,可滿足動力電池企業對負極材料的使用需求。
  • 國內自然語言處理(NLP)研究組
    https://www.microsoft.com/en-us/research/group/natural-language-computing/www.microsoft.com百度自然語言處理百度自然語言處理 - 理解語言,擁有智能,改變世界nlp.baidu.com
  • Facebook自然語言處理新突破:新模型能力趕超人類&超難NLP新基準
    更多詳情,可以參考 Facebook 人工智慧在 2019 年 WMT 國際機器翻譯大賽中的表現(https://ai.facebook.com/blog/facebook-leads-wmt-translation-competition/)。自監督預訓練方法的改進Facebook 最近對自然語言處理(NLP)的最大突破——BERT, 也進行了優化和改進。
  • 深度學習最強資源推薦:一文看盡 GAN 的前世今生
    當 Ian Goodfellow 在 2014 年喝了一杯啤酒之後,在夢中產生了「生成對抗網絡」(GANs)的想法時,他可能沒想到這一領域進展如此之快:2019 年 1 月 15 日,Ian Goodfellow 在 twitter 中表示,過去 4 年半,GAN 在人臉生成方面的進展可以查看下面的資料:總結 2014 年 vanilla GAN 的每一個進步
  • 資料| CCF-NLP走進鄭州大學演講PPT
    內容簡介 「CCF-NLP走進高校」是由中國計算機學會自然語言處理專業委員會(CCF-NLP)發起,聯合AI研習社及各個知名高校開展的一系列高校「CCF-NLP 走進高校」第二期走進「鄭州大學」,一起聆聽鄭州大學NLP的前沿研究分享。
  • 用Spark-NLP建立文本分類模型
    Apache Spark MLlib是許多幫助彌合這一差距的工具之一,它提供了大多數機器學習模型,如線性回歸、Logistic回歸、支持向量機、隨機森林、K-means、LDA等,以執行最常見的機器學習任務。
  • 關於Spark NLP學習,你需要掌握的LightPipeline(附代碼)|CSDN博文...
    在機器學習中,常見的一種做法是運行一系列的算法來處理和學習數據。這種算法序列常被稱作做Pipeline。Pipeline具體來說是一個多階段的序列,每個階段由一個Transformer或者Estimator組成。各個階段按順序執行,並將輸入的DataFrame轉換和傳遞給下一個階段,數據如此按序的在pipeline中傳遞。