Categories
程式開發

BERT為什麼是NLP的革新者


本文最初發表在Towards Data Science 博客,由InfoQ 中文站翻譯並分享。

語言模型BERT可以大幅提升許多任務的性能,那麼它成功的背後是什麼呢?

什麼是BERT?

BERT,全稱Bidirectional Encoder Representation from Transformers,是一款於2018年發布,在包括問答和語言理解等多個任務中達到頂尖性能的語言模型。 它不僅擊敗了之前最先進的計算模型,而且在答題方面也有超過人類的表現。

BERT是一個可以將文字轉換為數字的計算模型。 這個過程是至關重要的,因為機器學習模型需要以數字而非文字為輸入,而一款可以將文字轉換為數字的算法讓人們可以直接使用原始的文本格式數據訓練機器學習模型。

BERT為什麼是NLP的革新者 1

BERT是可以將文字轉換為數字的計算模型,圖源Devlin等人,2019

BERT為何如此優秀?

對作者來說,BERT的優秀之處主要在於以下三點:

  • 第一:使用大量數據預訓練
  • 第二:可以處理文字語意
  • 第三:開源

1:BERT使用海量數據預訓練

BERT提供兩種不同大小模型,BERT-base(使用BookCorpus數據集訓練,約8億字)以及BERT-large(使用英文維基百科訓練,約25億字)。 兩種模型均使用了巨大的訓練集,而任何一個機器學習領域的人都明白,大數據的力量是相當無敵的。 正所謂“熟讀唐詩三百遍,不會做詩也會吟”,在見過25億單詞之後,再看到新單詞時你也能猜到它會是什麼意思。

因為BERT的預訓練非常優秀,所以即使是應用在小型數據集上也能保持不錯的性能。 舉例來說,作者最近參與了一個開發新冠(COVID-19)自動問答系統的項目,在沒有進一步微調的情況下,BERT-base在作者使用的數據集中的15個類別上,準確率達到58.1%。 更令人驚嘆的時,“COVID”這個詞甚至不在BERT的詞彙庫中,但它依然獲得了相當高的準確率。

2: BERT可以處理語意

之前的詞嵌入方法,無論一個詞處於什麼樣的語境下,都會返回同一個向量。 而BERT則會根據上下文,為同一個詞返回不同的向量。 例如,在下面的例子中,舊方法會為“trust”返回相同的嵌入。

我不能 相信 you.(我不能相信你。)

他們沒有 相信 left for their friend. (他們對自己的朋友已經沒有信任感。)

他有一個 相信 fund. (他有一個信託基金。)

相比之下,BERT可以處理語意,根據“trust”語境的不同返回不同的嵌入。 如果算法可以分辨出一個詞使用情況的不同,就能獲得更多的信息,性能也有可能得到提升。 另一個可以處理上下文的語言建模方法是艾莫

3:BERT是開源的

開源是個大加分項。 機器學習領域中的很多項目都被開源化,因為代碼開源可以讓其他的研究人員輕鬆應用你的想法,從而促進項目的發展。 BERT的代碼發佈在了GitHub上,同時還附有代碼使用相關的README文件,這些深入信息對於任何想要使用BERT的人來說有很大幫助。

在作者最開始使用BERT時,只花費了幾分鐘下載能運行的BERT模型,然後只用不到一小時的時間成功寫出可以用在數據集中的代碼。

一個非常強大的語言模型會同時具備上文中提到的全部三個方面,而這個模型可以在SQuAD、GLUE和MultiNLI等大名鼎鼎的數據集上會達到最頂尖的性能。 它所擁有的這些巨大優勢是讓它如此強大和適用的原因所在。

BERT利用大量數據進行預處理,用戶可以直接將其應用在自己相對較小的數據集上。 BERT有上下文嵌入,性能會很不錯。 BERT是開源的,用戶可以直接下載並使用。 它的應用範圍如此之廣,這就是為什麼說BERT徹底改變了NLP。

谷歌的研究人員,也是BERT的最初創造者,計劃利用它來理解谷歌搜索,並提高谷歌自動問答服務的準確性。 後來人們發現,BERT的用處不僅僅只局限於谷歌搜索。 BERT有望改善計算機語言學的關鍵領域,包括聊天機器人、自動問答、總結和文本情感分析。 自一年多前BERT的發布以來,其論文的引用已超過8,500次,其廣泛實用性不難看出。 此外,自BERT發表後,最大的國際NLP會議Association for Computational Linguistics(ACL)的投稿量也翻了一番,從2018年的1544篇直接增到2019年的2905篇。

BERT將繼續為NLP領域帶來革命性的變化,它為小型數據庫中各種類型的任務提供實現高性能的機會。

延伸閱讀:

Devlin et al.原論文(https://arxiv.org/pdf/1810.04805.pdf

ELMo,使用上下文嵌入的類似語言模型:
https://arxiv.org/pdf/1802.05365.pdf

原文鏈接

https://towardsdatascience.com/bert-why-its-been-revolutionizing-nlp-5d1bcae76a13