阿克蘇網(wǎng)站建設(shè)正在播網(wǎng)球比賽直播
目錄
- 1. Understanding large language models
- 1.1 What is an LLM?
- 補(bǔ)充介紹
- 人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的關(guān)系
- 機(jī)器學(xué)習(xí) vs 深度學(xué)習(xí)
- 傳統(tǒng)機(jī)器學(xué)習(xí) vs 深度學(xué)習(xí)(以垃圾郵件分類為例)
- 1.2 Applications of LLMs
- 1.3 Stages of building and using LLMs
- 1.4 Introducing the transformer architecture
- 1.5 Utilizing large datasets
- 1.6 A closer look at the GPT architecture
- 1.7 Building a large language model
- 總結(jié):
1. Understanding large language models
大語(yǔ)言模型(LLMs) 如ChatGPT,依托深度學(xué)習(xí)和transformer架構(gòu),能夠在多種自然語(yǔ)言處理(NLP)任務(wù)中表現(xiàn)出色,尤其是在理解、生成和處理復(fù)雜語(yǔ)言方面。
與傳統(tǒng)的NLP模型不同,LLMs不僅能夠完成如文本分類和翻譯等特定任務(wù),還能處理更具挑戰(zhàn)性的任務(wù),如解析復(fù)雜指令和生成連貫的原創(chuàng)文本。這些模型的成功得益于大規(guī)模文本數(shù)據(jù)的訓(xùn)練和transformer架構(gòu)的應(yīng)用,使它們能夠捕捉語(yǔ)言中的深層次語(yǔ)境和細(xì)節(jié)。
正是這種技術(shù)進(jìn)步,推動(dòng)了NLP領(lǐng)域的變革,使得我們能夠使用更強(qiáng)大的工具與人類語(yǔ)言進(jìn)行互動(dòng)。接下來(lái)的討論將基于transformer架構(gòu),逐步實(shí)現(xiàn)一個(gè)類似ChatGPT的LLM,幫助理解LLMs的工作原理。
1.1 What is an LLM?
LLM(Large Language Model)是一種神經(jīng)網(wǎng)絡(luò),旨在理解、生成和回應(yīng)類人文本。這些模型通常是深度神經(jīng)網(wǎng)絡(luò),經(jīng)過(guò)大量文本數(shù)據(jù)的訓(xùn)練,數(shù)據(jù)量通常覆蓋了互聯(lián)網(wǎng)上的公共文本。
-
"Large"的含義:大語(yǔ)言模型中的“l(fā)arge”指的是兩個(gè)方面:
- 模型大小:通常這些模型擁有數(shù)十億甚至數(shù)百億個(gè)參數(shù)。參數(shù)是模型在訓(xùn)練過(guò)程中需要優(yōu)化的權(quán)重,用來(lái)預(yù)測(cè)文本中的下一個(gè)單詞。
- 訓(xùn)練數(shù)據(jù)集的規(guī)模:這些模型訓(xùn)練所使用的數(shù)據(jù)集通常非常龐大,包括了互聯(lián)網(wǎng)上的海量文本。
-
訓(xùn)練目標(biāo):大語(yǔ)言模型的核心任務(wù)之一是“下一個(gè)詞預(yù)測(cè)”。這是因?yàn)檎Z(yǔ)言本身具有序列性,模型通過(guò)學(xué)習(xí)上下文、結(jié)構(gòu)和文本之間的關(guān)系來(lái)理解語(yǔ)言。因此,盡管“下一個(gè)詞預(yù)測(cè)”看似是一個(gè)簡(jiǎn)單任務(wù),但它卻能生成非常強(qiáng)大的模型。
LLM通常使用Transformer架構(gòu),這是當(dāng)前自然語(yǔ)言處理領(lǐng)域最流行的架構(gòu)之一。Transformer的關(guān)鍵特點(diǎn)是它能夠在生成文本時(shí)選擇性地關(guān)注輸入文本的不同部分,從而幫助模型更好地理解語(yǔ)言的細(xì)微差別。
- Transformer的優(yōu)點(diǎn)是它能并行處理輸入序列中的所有部分,而不是像傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)那樣逐步處理,從而加速訓(xùn)練和提高性能。
LLM常被視為 生成性人工智能(Generative AI, GenAI) 的一種形式。生成性AI指的是利用深度神經(jīng)網(wǎng)絡(luò)創(chuàng)造新的內(nèi)容,比如文本、圖像或其他媒體形式。LLM的目標(biāo)是生成與人類語(yǔ)言相似的文本,因此它也屬于生成性人工智能的范疇。
補(bǔ)充介紹
人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的關(guān)系
-
人工智能(AI):人工智能是一個(gè)廣泛的領(lǐng)域,旨在讓機(jī)器具備類似人類的智能。這包括理解語(yǔ)言、識(shí)別模式和做出決策等任務(wù)。
-
機(jī)器學(xué)習(xí)(Machine Learning, ML):機(jī)器學(xué)習(xí)是人工智能的一個(gè)子領(lǐng)域,致力于開(kāi)發(fā)能夠從數(shù)據(jù)中學(xué)習(xí)并基于數(shù)據(jù)做出預(yù)測(cè)或決策的算法。
-
深度學(xué)習(xí)(Deep Learning, DL):深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)子領(lǐng)域,專注于使用多層神經(jīng)網(wǎng)絡(luò)(即深度神經(jīng)網(wǎng)絡(luò))來(lái)建模復(fù)雜的數(shù)據(jù)模式。
機(jī)器學(xué)習(xí) vs 深度學(xué)習(xí)
-
傳統(tǒng)機(jī)器學(xué)習(xí):在傳統(tǒng)的機(jī)器學(xué)習(xí)方法中,特征提取是由人工完成的。例如,在垃圾郵件過(guò)濾任務(wù)中,專家會(huì)手動(dòng)選擇特征(如特定詞匯的出現(xiàn)頻率、感嘆號(hào)的數(shù)量或郵件中的鏈接等)來(lái)訓(xùn)練模型。
-
深度學(xué)習(xí):深度學(xué)習(xí)則不需要人工提取特征。深度學(xué)習(xí)算法能夠自動(dòng)從原始數(shù)據(jù)中學(xué)習(xí)和提取特征,并建模更復(fù)雜的模式和關(guān)系。因此,深度學(xué)習(xí)可以處理更為復(fù)雜和多樣化的數(shù)據(jù)集,而無(wú)需依賴人工設(shè)計(jì)的特征。
傳統(tǒng)機(jī)器學(xué)習(xí) vs 深度學(xué)習(xí)(以垃圾郵件分類為例)
-
在傳統(tǒng)的機(jī)器學(xué)習(xí)中,模型訓(xùn)練依賴于人工選擇的特征。專家通過(guò)分析數(shù)據(jù)并挑選出重要的特征,來(lái)構(gòu)建訓(xùn)練數(shù)據(jù)集。
-
在深度學(xué)習(xí)中,模型通過(guò)對(duì)數(shù)據(jù)進(jìn)行訓(xùn)練,自動(dòng)學(xué)習(xí)到哪些特征最為重要,從而提高預(yù)測(cè)的準(zhǔn)確性,不需要人工干預(yù)。
1.2 Applications of LLMs
由于大語(yǔ)言模型(LLMs)具備解析和理解非結(jié)構(gòu)化文本數(shù)據(jù)的強(qiáng)大能力,它們?cè)诙鄠€(gè)領(lǐng)域中具有廣泛的應(yīng)用。以下是LLMs的一些主要應(yīng)用:
- 機(jī)器翻譯:LLMs被廣泛應(yīng)用于不同語(yǔ)言之間的翻譯任務(wù)。
- 文本生成:LLMs能夠生成新的文本,例如寫(xiě)作小說(shuō)、文章,甚至計(jì)算機(jī)代碼。
- 情感分析:分析文本中的情感傾向,例如判定評(píng)論或文章是正面、負(fù)面還是中立。
- 文本摘要:將長(zhǎng)篇文章或內(nèi)容進(jìn)行總結(jié),提取核心信息。
- 內(nèi)容創(chuàng)作:LLMs在創(chuàng)作內(nèi)容方面表現(xiàn)出色,如自動(dòng)寫(xiě)作小說(shuō)、文章等。
- 聊天機(jī)器人和虛擬助手:如OpenAI的ChatGPT和谷歌的Gemini(前身為Bard),這些應(yīng)用可以回答用戶問(wèn)題并增強(qiáng)傳統(tǒng)搜索引擎(如谷歌搜索或微軟Bing)的功能。
- 知識(shí)檢索:LLMs能夠高效地從大量的專業(yè)領(lǐng)域文本中提取知識(shí),例如醫(yī)學(xué)和法律領(lǐng)域。這包括查閱文檔、總結(jié)長(zhǎng)篇段落,并回答技術(shù)性問(wèn)題。
LLM的潛力與未來(lái):LLMs能夠自動(dòng)化幾乎所有涉及文本解析和生成的任務(wù),其應(yīng)用幾乎是無(wú)限的。隨著技術(shù)的不斷創(chuàng)新和新的使用場(chǎng)景的探索,LLMs有可能重新定義我們與技術(shù)的關(guān)系,使其更加對(duì)話化、直觀且易于訪問(wèn)。
1.3 Stages of building and using LLMs
從零開(kāi)始編寫(xiě)一個(gè)大語(yǔ)言模型(LLM)是一個(gè)非常好的練習(xí),它能幫助我們深入理解模型的工作原理和局限性。此外,構(gòu)建自己的LLM還為我們提供了預(yù)訓(xùn)練或微調(diào)現(xiàn)有開(kāi)源LLM架構(gòu)的知識(shí),使我們能夠?qū)⒛P蛻?yīng)用于特定領(lǐng)域的數(shù)據(jù)集或任務(wù)。
PyTorch與LLM
目前,許多大語(yǔ)言模型是使用PyTorch深度學(xué)習(xí)庫(kù)實(shí)現(xiàn)的,這也是我們將使用的工具。對(duì)于PyTorch的全面介紹,請(qǐng)參見(jiàn)附錄A。
研究表明,定制的大語(yǔ)言模型(特別是為特定任務(wù)或領(lǐng)域量身定制的LLMs)在性能上往往優(yōu)于通用的大語(yǔ)言模型(如ChatGPT),后者是為廣泛的應(yīng)用場(chǎng)景設(shè)計(jì)的。定制模型的例子包括BloombergGPT(專為金融領(lǐng)域設(shè)計(jì))和專為醫(yī)學(xué)問(wèn)答設(shè)計(jì)的LLMs(有關(guān)更多細(xì)節(jié),請(qǐng)見(jiàn)附錄B)。
定制LLM的另一個(gè)顯著優(yōu)勢(shì)是數(shù)據(jù)隱私。例如,企業(yè)可能不希望將敏感數(shù)據(jù)與第三方LLM提供商(如OpenAI)共享,因?yàn)榇嬖诒C苄詥?wèn)題。此外,開(kāi)發(fā)較小的定制LLM能夠直接在客戶設(shè)備(如筆記本電腦和智能手機(jī))上部署,這是像蘋(píng)果公司等公司正在探索的方向。這樣做不僅可以大幅減少延遲,還能降低服務(wù)器相關(guān)的成本。
定制LLM還給予開(kāi)發(fā)人員完全的控制權(quán),使他們可以根據(jù)需要更新或修改模型。
創(chuàng)建LLM的流程
創(chuàng)建LLM的通用流程包括預(yù)訓(xùn)練和微調(diào)。
- 預(yù)訓(xùn)練階段,指的是對(duì)模型進(jìn)行初步訓(xùn)練,通常是在一個(gè)大型、多樣化的數(shù)據(jù)集上訓(xùn)練,以開(kāi)發(fā)模型對(duì)語(yǔ)言的廣泛理解。此階段的模型被稱為預(yù)訓(xùn)練模型,例如GPT-3模型,它能夠執(zhí)行基本的文本補(bǔ)全任務(wù),并具有有限的少量樣本學(xué)習(xí)(few-shot learning)能力。
- 微調(diào)是對(duì)模型進(jìn)行進(jìn)一步訓(xùn)練,使其能夠執(zhí)行特定任務(wù)或應(yīng)用。微調(diào)階段,通常使用較小的標(biāo)注數(shù)據(jù)集,來(lái)訓(xùn)練模型專注于某些領(lǐng)域或任務(wù)。
預(yù)訓(xùn)練和微調(diào)的具體步驟
-
預(yù)訓(xùn)練:首先,我們需要使用大規(guī)模的文本數(shù)據(jù)對(duì)LLM進(jìn)行訓(xùn)練,這些數(shù)據(jù)通常是未標(biāo)注的文本(即“原始文本”)。在這個(gè)階段,模型使用自監(jiān)督學(xué)習(xí),通過(guò)預(yù)測(cè)文本中的下一個(gè)單詞來(lái)“生成”標(biāo)簽,從而學(xué)習(xí)語(yǔ)言的結(jié)構(gòu)和模式。
-
微調(diào):當(dāng)我們有了一個(gè)經(jīng)過(guò)預(yù)訓(xùn)練的LLM后,可以使用標(biāo)注數(shù)據(jù)進(jìn)行微調(diào)。微調(diào)分為兩類:
- 指令微調(diào):使用包含問(wèn)題和答案對(duì)的標(biāo)注數(shù)據(jù)集(如翻譯任務(wù)中的問(wèn)題和正確翻譯文本)。
- 分類微調(diào):使用包含文本和相應(yīng)類別標(biāo)簽的數(shù)據(jù)集(如垃圾郵件分類任務(wù)中的“垃圾郵件”和“非垃圾郵件”標(biāo)簽)。
微調(diào)后的LLM可以完成更多復(fù)雜的任務(wù),如文本分類、翻譯和問(wèn)答等。
通過(guò)從頭開(kāi)始構(gòu)建LLM,我們不僅能深入理解LLM的工作機(jī)制和局限性,還能獲得定制和優(yōu)化現(xiàn)有開(kāi)源LLM模型的能力,特別是針對(duì)特定領(lǐng)域的任務(wù)。同時(shí),定制LLM有助于解決數(shù)據(jù)隱私問(wèn)題,并可部署在本地設(shè)備上,減少延遲和服務(wù)器成本。在LLM的開(kāi)發(fā)過(guò)程中,預(yù)訓(xùn)練和微調(diào)是兩個(gè)關(guān)鍵步驟,前者通過(guò)大量數(shù)據(jù)訓(xùn)練模型,后者則通過(guò)特定任務(wù)的標(biāo)注數(shù)據(jù)進(jìn)行精細(xì)化訓(xùn)練。
1.4 Introducing the transformer architecture
現(xiàn)代大型語(yǔ)言模型(LLMs)依賴于Transformer架構(gòu),它是一種深度神經(jīng)網(wǎng)絡(luò)架構(gòu),最初在2017年的論文《Attention Is All You Need》中提出。理解LLMs需要先理解原始的Transformer,它最初是為機(jī)器翻譯任務(wù)設(shè)計(jì)的,旨在將英文文本翻譯為德語(yǔ)或法語(yǔ)。
Transformer架構(gòu)包括兩個(gè)子模塊:編碼器(Encoder)和解碼器(Decoder)。編碼器處理輸入的文本,并將其編碼成一系列數(shù)字表示(向量),這些向量捕捉了輸入文本的上下文信息。然后,解碼器利用這些編碼向量生成輸出文本。在機(jī)器翻譯任務(wù)中,編碼器會(huì)將源語(yǔ)言的文本編碼成向量,解碼器則解碼這些向量,生成目標(biāo)語(yǔ)言的文本。
關(guān)鍵的組件是自注意力機(jī)制(Self-attention),它允許模型根據(jù)每個(gè)詞或標(biāo)記之間的相對(duì)重要性來(lái)加權(quán)它們。這使得模型能夠捕捉到輸入數(shù)據(jù)中的長(zhǎng)程依賴關(guān)系和上下文關(guān)系,從而增強(qiáng)生成連貫且符合上下文的輸出的能力。
之后,Transformer架構(gòu)的變體,如BERT和GPT,在此基礎(chǔ)上進(jìn)行了改進(jìn),并被用于不同的任務(wù)。BERT專注于掩碼詞預(yù)測(cè),它的訓(xùn)練方式與GPT不同,BERT通過(guò)預(yù)測(cè)句子中被遮蔽的詞來(lái)訓(xùn)練,因此特別適合用于文本分類任務(wù),如情感分析和文檔分類。而GPT則主要關(guān)注生成任務(wù),如文本生成、機(jī)器翻譯和編寫(xiě)代碼等。
GPT模型被設(shè)計(jì)為文本補(bǔ)全任務(wù)的生成模型,并具備顯著的多功能性,能夠進(jìn)行零-shot學(xué)習(xí)和少-shot學(xué)習(xí)。零-shot學(xué)習(xí)指的是在沒(méi)有任何具體示例的情況下完成任務(wù),而少-shot學(xué)習(xí)則是在只提供少量示例的情況下進(jìn)行學(xué)習(xí)。
最終,Transformer和LLMs通常是可以互換使用的術(shù)語(yǔ),但并非所有Transformer模型都是LLMs,也并非所有LLMs都基于Transformer架構(gòu)。雖然LLMs的計(jì)算效率可以通過(guò)其他架構(gòu)(如循環(huán)神經(jīng)網(wǎng)絡(luò)或卷積神經(jīng)網(wǎng)絡(luò))進(jìn)行改進(jìn),但這些替代架構(gòu)能否與基于Transformer的LLMs競(jìng)爭(zhēng),以及它們是否會(huì)被實(shí)際采用,還需要進(jìn)一步觀察。
1.5 Utilizing large datasets
大型語(yǔ)言模型(LLMs),如GPT-3,如何使用龐大的、多樣化的訓(xùn)練數(shù)據(jù)集進(jìn)行預(yù)訓(xùn)練。這些數(shù)據(jù)集涵蓋了各種主題,包括自然語(yǔ)言和計(jì)算機(jī)語(yǔ)言。
例如,GPT-3的預(yù)訓(xùn)練數(shù)據(jù)集如下表所示:
數(shù)據(jù)集名稱 | 數(shù)據(jù)集描述 | 令牌數(shù)量 | 數(shù)據(jù)在訓(xùn)練中的比例 |
---|---|---|---|
CommonCrawl(過(guò)濾) | 網(wǎng)絡(luò)爬蟲(chóng)數(shù)據(jù) | 4100億 | 60% |
WebText2 | 網(wǎng)絡(luò)爬蟲(chóng)數(shù)據(jù) | 190億 | 22% |
Books1 | 基于互聯(lián)網(wǎng)的書(shū)籍語(yǔ)料 | 120億 | 8% |
Books2 | 基于互聯(lián)網(wǎng)的書(shū)籍語(yǔ)料 | 550億 | 8% |
Wikipedia | 高質(zhì)量文本 | 30億 | 3% |
數(shù)據(jù)集中的“令牌”是模型讀取的文本單位,令牌的數(shù)量大致等于文本中的單詞和標(biāo)點(diǎn)符號(hào)的數(shù)量。GPT-3模型的預(yù)訓(xùn)練數(shù)據(jù)集包含了大約3000億個(gè)令牌,盡管其中有4990億個(gè)令牌在數(shù)據(jù)集中。這些龐大的數(shù)據(jù)集使得模型能夠在語(yǔ)言語(yǔ)法、語(yǔ)義和上下文等多種任務(wù)中表現(xiàn)良好。
進(jìn)一步的GPT-3模型變體(如Meta的LLaMA)還擴(kuò)展了訓(xùn)練數(shù)據(jù)源,加入了如Arxiv研究論文和StackExchange代碼相關(guān)Q&A等數(shù)據(jù)。
GPT-3的預(yù)訓(xùn)練需要大量資源,估計(jì)成本為460萬(wàn)美元。然而,許多預(yù)訓(xùn)練模型作為開(kāi)源工具提供,可以用于文本的寫(xiě)作、提取和編輯。LLMs還可以通過(guò)較小的數(shù)據(jù)集進(jìn)行微調(diào),從而提高在特定任務(wù)中的表現(xiàn),并減少計(jì)算資源的需求。
我們將編寫(xiě)預(yù)訓(xùn)練代碼來(lái)學(xué)習(xí)如何在消費(fèi)級(jí)硬件上完成LLM預(yù)訓(xùn)練,并使用開(kāi)源模型的權(quán)重來(lái)省去高成本的預(yù)訓(xùn)練步驟,實(shí)現(xiàn)微調(diào)。
1.6 A closer look at the GPT architecture
-
GPT的起源和發(fā)展:
- GPT(生成式預(yù)訓(xùn)練模型)最早由OpenAI在論文《通過(guò)生成式預(yù)訓(xùn)練改進(jìn)語(yǔ)言理解》中提出。GPT-3是這個(gè)模型的擴(kuò)展版本,擁有更多的參數(shù),并在更大規(guī)模的數(shù)據(jù)集上進(jìn)行訓(xùn)練。
- ChatGPT的原始版本是通過(guò)對(duì)GPT-3進(jìn)行微調(diào)得到的,微調(diào)使用的是OpenAI在InstructGPT論文中提出的大規(guī)模指令數(shù)據(jù)集。
-
任務(wù)能力與訓(xùn)練方法:
- GPT模型的預(yù)訓(xùn)練任務(wù)非常簡(jiǎn)單——“預(yù)測(cè)下一個(gè)詞”。這個(gè)任務(wù)屬于一種“自監(jiān)督學(xué)習(xí)”,即模型通過(guò)預(yù)測(cè)文本中的下一個(gè)詞來(lái)自動(dòng)生成訓(xùn)練標(biāo)簽,因此可以使用大規(guī)模的無(wú)標(biāo)簽文本進(jìn)行訓(xùn)練。
- 通過(guò)這種方法,GPT不僅能完成文本補(bǔ)全,還能進(jìn)行拼寫(xiě)檢查、分類、翻譯等多種任務(wù)。這種多任務(wù)能力很特別,因?yàn)镚PT的訓(xùn)練目標(biāo)只是預(yù)測(cè)下一個(gè)詞,而并非專門(mén)針對(duì)特定任務(wù)。
-
自回歸生成過(guò)程:
- GPT使用的“解碼器”架構(gòu)是原始Transformer架構(gòu)的一部分,適用于自回歸生成。每次生成一個(gè)詞,該詞會(huì)成為下一次預(yù)測(cè)的輸入,這樣一輪接一輪地生成完整的文本,使生成結(jié)果更加連貫。
-
模型規(guī)模的擴(kuò)展:
- GPT-3具有96層Transformer層和1750億參數(shù),大大超越了最初的Transformer架構(gòu)(編碼器和解碼器各6層)。這種規(guī)模的增加提升了模型的理解和生成能力。
-
突現(xiàn)行為(Emergent Behavior):
- 由于GPT在多語(yǔ)言和多樣化的文本數(shù)據(jù)上訓(xùn)練,出現(xiàn)了“突現(xiàn)行為”——模型可以執(zhí)行一些沒(méi)有明確訓(xùn)練的任務(wù),如翻譯。這種能力表明,通過(guò)大規(guī)模數(shù)據(jù)的訓(xùn)練,模型可以自發(fā)地“學(xué)習(xí)”某些復(fù)雜的模式。
總結(jié)來(lái)說(shuō),GPT的架構(gòu)雖然簡(jiǎn)單,但通過(guò)大量數(shù)據(jù)的預(yù)訓(xùn)練,實(shí)現(xiàn)了多種自然語(yǔ)言處理任務(wù)。這些任務(wù)并不是專門(mén)設(shè)計(jì)的,而是基于模型在多語(yǔ)言、多情境數(shù)據(jù)中的訓(xùn)練,自發(fā)地涌現(xiàn)出的能力。
1.7 Building a large language model
大型語(yǔ)言模型開(kāi)發(fā)的三階段:構(gòu)建、預(yù)訓(xùn)練與微調(diào)
這張圖展示了從頭開(kāi)始構(gòu)建一個(gè)大型語(yǔ)言模型(LLM)的三個(gè)主要階段:
Stage 1:LLM 的基礎(chǔ)構(gòu)建
- 數(shù)據(jù)準(zhǔn)備和采樣(Data preparation & sampling):這一步驟主要是收集和處理數(shù)據(jù)。因?yàn)榇笮驼Z(yǔ)言模型需要大量的數(shù)據(jù)來(lái)進(jìn)行訓(xùn)練,所以這里的數(shù)據(jù)準(zhǔn)備包括采樣、清洗和標(biāo)注等過(guò)程。
- 注意力機(jī)制(Attention mechanism):實(shí)現(xiàn)并理解注意力機(jī)制是構(gòu)建 LLM 的關(guān)鍵步驟。注意力機(jī)制允許模型更好地理解句子中的重要詞匯及其關(guān)系。
- LLM 架構(gòu)設(shè)計(jì)(LLM architecture):這一步是設(shè)計(jì)模型的整體架構(gòu),包括層數(shù)、維度、編碼方式等。常見(jiàn)的架構(gòu)有 Transformer、GPT、BERT 等。
- 預(yù)訓(xùn)練(Pretraining):在完成前幾步之后,將模型在大量無(wú)標(biāo)簽數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練。這是為了讓模型學(xué)習(xí)到語(yǔ)言的基本結(jié)構(gòu)和詞匯關(guān)系。
在這個(gè)階段結(jié)束后,得到了一個(gè)基礎(chǔ)的 LLM,實(shí)現(xiàn)了數(shù)據(jù)采樣、注意力機(jī)制和架構(gòu)的基礎(chǔ)。
Stage 2:構(gòu)建基礎(chǔ)模型(Foundation Model)
- 訓(xùn)練循環(huán)(Training loop):這一階段的核心是建立訓(xùn)練循環(huán)。模型會(huì)在大量數(shù)據(jù)上進(jìn)行訓(xùn)練,逐步優(yōu)化參數(shù),使其在語(yǔ)言任務(wù)上表現(xiàn)得更好。
- 模型評(píng)估(Model evaluation):訓(xùn)練過(guò)程中,需要定期評(píng)估模型性能,查看是否收斂或是否需要調(diào)整超參數(shù)。
- 加載預(yù)訓(xùn)練權(quán)重(Load pretrained weights):在一些情況下,可以加載已有的預(yù)訓(xùn)練權(quán)重進(jìn)行微調(diào),避免從頭開(kāi)始訓(xùn)練。
在這個(gè)階段的末尾,得到了一個(gè)基礎(chǔ)模型(Foundation Model),可以用作進(jìn)一步任務(wù)的微調(diào)(fine-tuning)。
Stage 3:微調(diào)模型
- 微調(diào)分類器(Fine-tuning for classification):在一些任務(wù)中,基礎(chǔ)模型會(huì)被微調(diào)以實(shí)現(xiàn)分類功能。這里需要一個(gè)有標(biāo)簽的數(shù)據(jù)集,通過(guò)訓(xùn)練讓模型能夠準(zhǔn)確分類。
- 微調(diào)為助手模型(Fine-tuning for a personal assistant):在其他任務(wù)中,可以將基礎(chǔ)模型微調(diào)成一個(gè)助手或?qū)υ捘P?#xff0c;通過(guò)帶有指令的數(shù)據(jù)集訓(xùn)練,讓模型能夠回答問(wèn)題或提供交互支持。
最后,經(jīng)過(guò)微調(diào)后,得到了特定任務(wù)的模型,例如分類器或個(gè)人助手(聊天模型)。
總結(jié):
-
LLM對(duì)NLP的影響:LLM革新了自然語(yǔ)言處理(NLP)領(lǐng)域,從以往基于規(guī)則和簡(jiǎn)單統(tǒng)計(jì)方法轉(zhuǎn)向深度學(xué)習(xí)方法,提升了機(jī)器對(duì)人類語(yǔ)言的理解、生成和翻譯能力。
-
LLM的訓(xùn)練步驟:
- 預(yù)訓(xùn)練:在無(wú)標(biāo)簽的大規(guī)模文本數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練,采用預(yù)測(cè)句子下一個(gè)詞的方式。
- 微調(diào):在較小的有標(biāo)簽數(shù)據(jù)集上微調(diào),以執(zhí)行指令或分類任務(wù)。
-
架構(gòu)基礎(chǔ):LLM基于Transformer架構(gòu),其核心是注意力機(jī)制,使模型在逐詞生成時(shí)可以選擇性地訪問(wèn)輸入序列的全部信息。
-
Transformer架構(gòu)組成:原始架構(gòu)包括用于解析文本的編碼器和生成文本的解碼器。GPT-3和ChatGPT等生成型LLM僅使用解碼器模塊,簡(jiǎn)化了架構(gòu)。
-
大規(guī)模數(shù)據(jù)需求:LLM的預(yù)訓(xùn)練需要包含數(shù)十億詞的大規(guī)模數(shù)據(jù)集。
-
涌現(xiàn)能力:雖然LLM的預(yù)訓(xùn)練任務(wù)只是預(yù)測(cè)下一個(gè)詞,但模型在分類、翻譯和總結(jié)等任務(wù)上展現(xiàn)出涌現(xiàn)的能力。
-
微調(diào)效率:預(yù)訓(xùn)練后的LLM基礎(chǔ)模型可通過(guò)微調(diào)更高效地執(zhí)行下游任務(wù),在特定任務(wù)上表現(xiàn)優(yōu)于通用LLM。