iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0
AI & Data

踏上AI的步伐系列 第 29

Day 29 AI的核心應用:自然語言處理(六)

  • 分享至 

  • xImage
  •  

語言模型

語言模型的基本概念

所謂語言模型(Language Model)指:透過對人類文字使用大量學習之後,一個能合理預測下一個詞句、能架構出順暢文句的一個模型。以下將介紹兩個十分強大的語言模型分別為BERT與GPT-3。

BERT:Transformer的雙向編碼器

1.BERT的基本概念
BERT(Bidirectional Encoder Representations from Transformers)指一個基於微調(Fine Tune)、雙向(Bidirection)、多層的(Multii-Layer)Transformer的Encoder,他基本上是一個利用無監督式學習的一個大型通用訓練語言模式。

2.BERT的主要模型架構與特色

  • 主要架構
    利用Transformer的Encoder模組可分為下列兩類:
    (1)BERT(Base):有12層,每層有12個Attention Head共有1.1億個參數。
    (2)BERT(Large):有24層,詞向量1024個維度,每層有16個Attention Head,共有3.4億個參數。

  • 訓練資料
    包括Wikipedia+Bookcorpus(11038本書)加上FB(Meta)共33億個詞。因此BERT讀了那麼多書,可以說是一個見多識廣、飽讀詩書並能觸類旁通的AI。

  • 訓練方式
    主要有兩個訓練方式:
    (1)詞層次(Word Level的克漏字填空(Masked Language Model, MLM):這是一個詞層次的訓練,此目的為訓練雙向的Transformer,其會在輸入的文本中隨機掩蓋每個句中15%的詞,然後訓練由左右兩邊的詞句來預測中間被掩蓋的詞,例如:「昨夜??風驟」,如此的訓練就可以得到中間詞前後左右雙向的依賴關係(Bidirection Relationship),並解決同詞異議的問題。
    (2)句子層次的下一句預測,即NSP(Next Sentence Prediction):了解句子與句子之間的關係是NLP非常重要的功能,許多任務都需要語言模型具備這種功能。在BERT的NSP Model中,在Input的句子後下一個句子視為正確的正樣本(Positive Sample),然後NLP再隨機由文本抽取一個其他句子視為錯誤的負樣本(Nagetive Sample),NSP就是利用這兩個正負樣本來不斷大量的進行二分類的訓練,直到BERT能正確的預測下一句為止。

BERT的主要優勢

再自然語言理解對40萬句子解讀時,BERT的正確率高達(80.4%)遠勝於其他模型架構。

  • Transformer的優勢:利用平行、聚焦,直接對應速度快的Transformer Model及其所具備的自我注意力機制優點。

  • 詞層次深入的理解詞義:BERT利用MLM以及SATT兩個重要機制進行深層雙向的詞向量抽取,這種方式當然比淺層的Word2 Vector、ELMO或者單項的GPT-2更能抽取更好的詞向量。

  • 句子層次的深入了解句子與句子之間的關係:BERT利用NSP Model來了解句子與句子之間合理的依賴關係而其他的語言模式都只有詞層次的訓練,並沒有句子層次的訓練。

  • 非監督式學習:BERT的訓練主要採用成本低、獲取容易、可大量蒐集、不用備註、不用做預處理的一般通用語料,例如Wikipedia+Bookcorpus(11038本書)加上FB(Meta)共33億個詞,非監督式學習數量無限大,不像Imagenet每個圖都要找人來標註。

BERT 的主要貢獻與應用

由於BERT強大的優勢,BERT對NLP的任務有下列貢獻:

  • 取代傳統複雜的NLP預處理工作:BERT在訓練時只需輸入原始文本,不需經過各種的預處理的麻煩工作(例如:斷詞等等),在BERT大量訓練以後,很自然的會理解其他重要的結構訊息。

  • 取代了部分的下游任務工作:由於BERT掌握了詞與詞、句與句之間的關係,因此原來許多下游任務(例如QA、Chatbot、機器翻譯、關鍵字擷取)要自己處理句子與句子的匹配、推理或同詞異義的解決等詞意方面的主要問題,BERT都可以透過各種自己已經有的訓練來先行處理與解決這些問題。

  • BERT缺點:訓練起來耗費大,訓練一個1.1億的參數12層的BERT就需要16個TPU整整4天,訓練24層3.4億個參數就需要64個TPU,但由於現在有開放碼的BERT Model只需利用Tensorflow、PyTorch就可以直接在輸入訓練好的BERT。


參考資料
人工智慧-概念應用與管理 林東清 著


上一篇
Day 28 AI的核心應用:自然語言處理(五)
下一篇
Day 30 AI的核心應用:自然語言處理(完)
系列文
踏上AI的步伐30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言