大型語言模型
出自 MBA智库百科(https://wiki.mbalib.com/)
大型語言模型,也叫大語言模型、大模型(Large Language Model,LLM;Large Language Models,LLMs)
目錄 |
大型語言模型(LLM)是指包含數千億(或更多)參數的語言模型,這些參數是在大量文本數據上訓練的,例如模型 GPT-3、PaLM、Galactica 和 LLaMA。具體來說,LLM 建立在 Transformer 架構之上,其中多頭註意力層堆疊在一個非常深的神經網路中。現有的 LLM 主要採用與小語言模型類似的模型架構(即 Transformer)和預訓練目標(即語言建模)。作為主要區別,LLM 在很大程度上擴展了模型大小、預訓練數據和總計算量(擴大倍數)。他們可以更好地理解自然語言,並根據給定的上下文(例如 prompt)生成高質量的文本。這種容量改進可以用標度律進行部分地描述,其中性能大致遵循模型大小的大幅增加而增加。然而根據標度律,某些能力(例如,上下文學習)是不可預測的,只有當模型大小超過某個水平時才能觀察到。[1]
2023年3月6日,來自谷歌與柏林工業大學的人工智慧研究人員小組推出了一個多模態具象化視覺語言模型(VLM)-PaLM-E,該模型的參數規模達到了5620億個,集成了用於控制機器人的視覺與語言。研究人員稱,這是有史以來規模最大的VLM,無需重新訓練即可執行各種任務。[2]
NLP到大型語言模型的進階歷程[3]
新浪微博資深演算法專家張俊林認為,要想探尋大型語言模型未來怎麼走,需要先回顧此前是怎麼一路變遷的。他將自然語言處理發展到大型語言模型的歷程分為五個階段:規則、統計機器學習、深度學習、預訓練、大型語言模型。
機器翻譯是NLP中難度最高、綜合性最強的任務。因此張俊林以機器翻譯任務為例來對比不同階段的特點以及技術棧、數據的變化,以此展示NLP如何一步步演進。
規則階段大致從1956年到1992年,基於規則的機器翻譯系統是在內部把各種功能的模塊串到一起,由人先從數據中獲取知識,歸納出規則,寫出來教給機器,然後機器來執行這套規則,從而完成特定任務。
統計機器學習階段大致從1993年到2012年,機器翻譯系統可拆成語言模型和翻譯模型,這裡的語言模型與現在的GPT-3/3.5的技術手段一模一樣。該階段相比上一階段突變性較高,由人轉述知識變成機器自動從數據中學習知識,主流技術包括SVM、HMM、MaxEnt、CRF、LM等,當時人工標註數據量在百萬級左右。
深度學習階段大致從2013-2018年,相對上一階段突變性較低,從離散匹配發展到embedding連續匹配,模型變得更大。該階段典型技術棧包括Encoder-Decoder、LSTM、Attention、Embedding等,標註數據量提升到千萬級。
預訓練階段是從2018年到2022年,相比之前的最大變化是加入自監督學習,張俊林認為這是NLP領域最傑出的貢獻,將可利用數據從標註數據拓展到了非標註數據。該階段系統可分為預訓練和微調兩個階段,將預訓練數據量擴大3到5倍,典型技術棧包括Encoder-Decoder、Transformer、Attention等。
大型語言模型階段從2023年起,目的是讓機器能聽懂人的命令、遵循人的價值觀。其特性是在第一個階段把過去的兩個階段縮成一個預訓練階段,第二階段轉換成與人的價值觀對齊,而不是向領域遷移。這個階段的突變性是很高的,已經從專用任務轉向通用任務,或是以自然語言人機介面的方式呈現。
隨後他介紹了一個研究工作的結論:在高資源語言上,ChatGPT機器翻譯效果與商用MT系統效果接近;在低資源語言上,目前ChatGPT機器翻譯效果與商用MT系統相比差得比較遠。
從這些階段中數據、演算法、人機關係的變化,可以觀察到NLP的發展趨勢。
數據方面,從少量標註數據、大量標註數據、海量非標註數據+少量標註數據到海量非標註數據,越來越多數據被利用起來,人的介入越來越少,未來會有更多文本數據、更多其它形態的數據被用起來,更遠的未來是任何我們能見到的電子數據,都應該讓機器自己從中學到知識或能力。
演算法方面,表達能力越來越強,規模越來越大,自主學習能力越來越強,從專用向通用,沿著這個趨勢往後,未來Transformer預計夠用,同時也需要替代Transformer的新型模型,逐步邁向通用人工智慧。
人機關係方面,人的角色逐漸從教導者轉向監督者,未來可能會從人機協作、機器向人學習,發展成人向機器學習,最後由機器拓展人類。
大型語言模型的涌現能力[1]
LLM 的涌現能力被正式定義為「在小型模型中不存在但在大型模型中出現的能力」,這是 LLM 與以前的 PLM 區分開來的最顯著特征之一。當出現這種新的能力時,它還引入了一個顯著的特征:當規模達到一定水平時,性能顯著高於隨機的狀態。以此類推,這種新模式與物理學中的相變現象密切相關。原則上,這種能力也可以與一些複雜的任務有關,而人們更關心可以應用於解決多個任務的通用能力。這裡簡要介紹了 LLM 的三種代表性的涌現能力:
上下文學習。GPT-3 正式引入了上下文學習能力:假設語言模型已經提供了自然語言指令和多個任務描述,它可以通過完成輸入文本的詞序列來生成測試實例的預期輸出,而無需額外的訓練或梯度更新。
指令遵循。通過對自然語言描述(即指令)格式化的多任務數據集的混合進行微調,LLM 在微小的任務上表現良好,這些任務也以指令的形式所描述。這種能力下,指令調優使 LLM 能夠在不使用顯式樣本的情況下通過理解任務指令來執行新任務,這可以大大提高泛化能力。
循序漸進的推理。對於小語言模型,通常很難解決涉及多個推理步驟的複雜任務,例如數學學科單詞問題。同時,通過思維鏈推理策略,LLM 可以通過利用涉及中間推理步驟的 prompt 機制來解決此類任務得出最終答案。據推測,這種能力可能是通過代碼訓練獲得的。
大型語言模型的關鍵技術[1]
LLMs 的關鍵技術,包括了縮放、訓練、能力激發、對齊調優、工具利用等。
縮放。縮放是增加 LLMs 模型容量的關鍵因素,最開始 GPT-3 將模型參數增至 1750 億,隨後 PaLM 進一步將模型參數增至 5400 億。大規模參數對於涌現能力至關重要。縮放不僅針對模型大小,還與數據大小和總計算量有關。
訓練。由於規模巨大,成功訓練一個具備強大能力的 LLMs 非常具有挑戰性。因此需要分散式訓練演算法來學習 LLMs 的網路參數,經常聯合使用各種並行策略。為了支持分散式訓練,DeepSpeed 和 Megatron-LM 等優化框架被用來促進並行演算法的實現和部署。此外,優化技巧對訓練穩定性和模型性能也很重要,例如重新啟動訓練損失尖峰和混合精度訓練。最近的 GPT-4 開發了特殊的基礎設施和優化方法,從而利用小得多的模型來預測大模型的性能。
能力激發。在大規模語料庫上經過預訓練後,LLMs 被賦予瞭解決一般任務的潛在能力。然而當 LLMs 執行某個特定任務時,這些能力可能不會顯式地表現出來。因此設計適合的任務指令或特定的上下文策略來激發這些能力非常有用,比如思維鏈 prompt 有助於通過中間推理步驟等解決複雜推理任務。此外還可以進一步對具有自然語言任務描述的 LLMs 進行指令調優,以提高對未見過任務的泛化能力。
對齊調優。由於 LLMs 被訓練用來捕獲預訓練語料庫的數據特征(包括高質量和低質量的數據),它們很可能生成對有毒、有偏見和有害的文本內容。為了使 LLMs 與人類價值觀保持一致,InstructGPT 設計了一種利用強化學習和人類反饋的高效調優方法,使得 LLMs 能夠遵循預期指令。ChatGPT 是在類似 InstructGPT 的技術上開發的,在產生高質量、無害的響應方面表現出了強大的對齊能力。
工具利用。LLMs 本質上是基於大規模純文本語料庫訓練的文本生成器,因此在數值計算等文本表達不佳的任務上表現沒那麼好。此外 LLMs 的能力受限於預訓練數據,無法捕獲最新信息。針對這些問題,人們提出使用外部工具來彌補 LLMs 的不足,比如可以利用計算器進行精確計算,使用搜索引擎檢索未知信息。ChatGPT 更是利用外部插件來聯網學習新知識,這種機制可以廣泛擴展 LLMs 的能力範圍。
ChatGPT的四個關鍵技術[3]
1、大規模預訓練模型:只有模型規模足夠大,才可能具備推理能力。中國人民大學高瓴人工智慧學院長聘副教授嚴睿談道,智能涌現不是故意設計出來的,而是大模型規模大到一定程度後,天然具備這樣的特性。
2、在代碼上進行預訓練:可能代碼把解決一個大的問題分解成若幹個小的問題,這種分佈解決問題的方式有助於自然語言推理。和自然語言模型相比,代碼語言模型需要更長的上下文的依賴。
3、Prompt/Instruction Tuning:GPT-3模型太大,已經沒辦法去精調了,只能用prompt,但是如果不精調,模型相當於還是一個語言模型,沒辦法適應人,只能由人去適應模型。讓人適應模型只能用指令的方式,再進行精調,這相比預訓練代價要小的多。所以指令上精調就可以把一些不太多的數據,把語言模型的任務掰到適應人類的回答問題。
4、基於人類反饋的強化學習(RLHF):這對於結果好壞的影響不是特別大,甚至會限制語言模型生成的能力,但這種方式可能更好地和人類在安全性、無毒無害等等方面的價值觀對齊。當模型上線後,它可以收集到更多用戶的反饋。
大型語言模型的三大技術路線[3]
大型語言模型研究的發展有三條技術路線:Bert模式、GPT模式、混合模式。其中國內大多採用混合模式,多數主流大型語言模型走的是GPT技術路線,直到2022年底在GPT-3.5的基礎上產生了ChatGPT。
可以看到,到2019年後,Bert路線基本上就沒有什麼標誌性的新模型出現了,而GPT技術路線趨於繁榮。從Bert往GPT走,模型越來越大,做的事越來越通用。
大型語言模型按照從數據到知識來劃分,數據可分為通用數據和領域數據,知識分為語言知識和世界知識;從任務類型來劃分,可以分為單一任務和多任務、理解類和生成類。
Bert模式有兩階段(雙向語言模型預訓練+任務Fine-tuning),適用於理解類、做理解類、某個場景的具體任務,專而輕。
GPT模式是由兩階段到一階段(單向語言模型預訓練+zero shot prompt/Instruct),比較適合生成類任務、多任務,重而通。
T5模式將兩者的方法結合,有兩階段(單向語言模型預訓練+Fine-tuning)。張俊林稱這種模式“形似GPT,神似Bert”,生成和理解都行,從效果上看較適合理解類任務,國內很多大型語言模型採用這種模式。
目前的研究結論是,如果模型規模不是特別大,面向單一領域的理解類任務,適合用T5模式。做生成類任務時,用GPT模式效果最好。
如果單獨考慮zero-shot,GPT模式效果最好;如果在預訓練後引入多任務fine-tuning,則T5模式效果好。不過張俊林認為這個結論存疑,因為目前的實驗Encoder-Decoder都是Decoder-only參數量的兩倍。
綜合來看,當前幾乎所有參數規模超過千億的大型語言模型都採取GPT模式。張俊林分析可能的原因有三點:1、Encoder-Decoder里的雙向attention,損害zero shot能力;2、Encoder-Decoder結構在生成Token時,只能對Encoder高層做attention,Decoder-only結構在生成Token時可以逐層Attention,信息更細粒度;3、Encoder-Decoder訓練“中間填空”,生成最後單詞Next Token,存在不一致性,Decoder-only結構訓練和生成方式一致。
大型語言模型在客戶聯絡領域的應用價值[2]
1. 提升自動回覆能力
大模型的工作邏輯始於對大量數據的持續訓練。充分、持續的訓練,能夠使大模型具備更加精準的語義理解能力和更強大的自然語言生成能力。
基於已經訓練成熟的大模型,智能客服系統的開發就有了更加堅實的底層支撐。它可以根據用戶輸入的問題提供快速和準確的響應,快速解決問題,節省了客服團隊大量的時間和資源,提高客戶體驗和滿意度。
2. 強化意圖識別能力
智能客服能否處理複雜問題,在行業內有一個通用的指標,就是意圖識別的準確率。
觀察客戶聯絡領域所處的現狀,大部分是把簡單、重覆、流程性的問題,交給機器人處理;複雜的、需要情感關懷的問題,則交由人工客服處理。而傳統的智能客服在意圖理解方面的能力,仍然相對薄弱。
ChatGPT的泛化為我們提供了處理複雜問題的新思路。
基於對文本、語音、圖像等多模態數據的分析,大模型對於意圖識別的準確性進一步提升。藉助大模型,智能客服能夠有效結合用戶的歷史對話、當前溝通內容等上下文語境,更精準地識別出用戶的需求和意圖。同時,藉助大模型所具備的深度學習能力,進行更加智能化的問答推薦,進而有效賦能企業的業務咨詢、留資引導、服務應答等環節。
3. 優化人機交互體驗
傳統機器人在處理複雜場景的時候,往往應變能力不夠靈活。一旦用戶問的問題在知識庫里沒有,或者超出了預設的流程,機器人就無法很好地應對了。但是,基於大模型超強的知識庫,上述情況就緩解了很多。
以ChatGPT為例來看,大模型的深度應用也開創了客戶使用體驗的新範本。其豐富的參數和強大的內容生成能力,能夠支持智能客服實現更加個性化的問答回覆,而非過往千篇一律的機械式問答。
4. 豐富實際應用場景
基於大模型所提供的底層能力,智能客服的滲透力和應用場景也將在未來得到進一步延伸。
ChatGPT的應用目前已經有相對確定的場景可以落地了,如扮演人工客服與客戶溝通專業知識、提供專業的問答知識建議、對溝通記錄進行質檢標記、主動分析座席工作行為、發起產品推介、閑聊寒暄以及更“人性化”的引導留資等。
此外,在情緒關懷方面也有很大的應用前景。
LLMs 本質上是基於大規模純文本語料庫訓練的文本生成器,因此在數值計算等文本表達不佳的任務上表現沒那麼好