在上一期「LLM 005|大語言模型是如何利用Transformer理解語言的?」我們提到,Transformer是大語言模型理解語言的關鍵。
而Transformer架構兩個主要的後代是BERT以及GPT。
BERT是bidirectional encoder representations from transformers的縮寫,直譯為「來自Transformer的雙向編碼器表現」。
GPT是generative pretrained transformers的縮寫,直譯為「生成預訓練 Transformer」。
如此,BERT的T,GPT的T,兩者都是指Transformer。
BERT建構於原始的Transformer的編碼器子模組,
與GPT的訓練方式不同。
有別於GPT是為了生成任務而設計,BERT是為了「遮蔽詞預測 masked word prediction」而設計。
在遮蔽詞預測任務中,語言模型要根據給定的句子,去預測被藏起來的文字。
BERT這種透過遮蔽詞預測來訓練語言模型的策略,使得BERT能夠做「文本分類 Text Classification」的任務。
文本分類任務的例子有情緒分析 Sentiment Prediction與文件分類 Document Categorization。
BERT的這個文本分類能力一個具體應用,就是Twitter拿來偵測有毒的垃圾內容。
另一方面,GPT則聚焦在原始Transformer架構的解碼器部分。
GPT被設計為能解需要產生文本的任務,例如「機器翻譯 Machine Translation」,「文本總結 Text Summarization」,「小說寫作 Fiction Writing」,「寫程式碼 Writing Computer Code」等等。
GPT模型主要被設計與訓練來做「文本補全 Text Completion」工作。
GPT模型擅長「零樣本學習 Zero-Shot Learning」與「少樣本學習 Few-Shot Learning」的任務。
零樣本學習是指,不用任何先前特定範例,就能推廣至完全未見過的任務。
少樣本學習則是指學習的過程需要用戶提供一些範例。