人工智能算法分析 課件 【ch11】人工智能大模型_第1頁
人工智能算法分析 課件 【ch11】人工智能大模型_第2頁
人工智能算法分析 課件 【ch11】人工智能大模型_第3頁
人工智能算法分析 課件 【ch11】人工智能大模型_第4頁
人工智能算法分析 課件 【ch11】人工智能大模型_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

人工智能算法分析新知識體系人工智能教材人工智能大模型第十一章人工智能大模型

概念與現(xiàn)狀0111.1.1人工智能大模型概念人工智能作為新一代產(chǎn)業(yè)變革的核心驅(qū)動力之一,其發(fā)展已經(jīng)從“大煉模型”逐步邁向“煉大模型”的階段。通過設(shè)計(jì)先進(jìn)的算法,整合盡可能多的數(shù)據(jù),匯聚大量算力,集約化地訓(xùn)練大模型,從而服務(wù)更多的企業(yè),成為當(dāng)下人工智能發(fā)展的趨勢。人工智能大模型指的就是那些模型參數(shù)上億的模型,對于人工智能算法或模型來說,不同大小和類型的模型的參數(shù)不相同,所具有的能力也不盡相同。大模型相較于小模型具有參數(shù)多、網(wǎng)絡(luò)規(guī)模大、功能強(qiáng)等優(yōu)點(diǎn)。因此,一些小模型解決不了的問題或小模型很難解決的問題可以使用大模型來解決。11.1.2人工智能大模型現(xiàn)狀近年來,越來越多的科研機(jī)構(gòu)和大型科研公司己經(jīng)投入人工智能大模型的研究浪潮中,如谷歌人工智能實(shí)驗(yàn)室在2017年提出的Transfonner,之后,OpenAI在Transfonner的基礎(chǔ)上又提出了GPT-1、GPT-2、GPT-3。因此,不管是在國內(nèi)還是國外,研究人員和團(tuán)隊(duì)從未停止過對深度學(xué)習(xí)大模型的開發(fā),而這也不斷促進(jìn)人工智能大模型發(fā)展。本章,我們將通過講述Transfonner和GPT,使讀者對人工智能大模型有全方位的認(rèn)識。Transformer0211.2.1背景減少順序計(jì)算的目標(biāo)是研究擴(kuò)展神經(jīng)GPU,所有這些都使用卷積神經(jīng)網(wǎng)絡(luò)作為基本構(gòu)建模塊,同時(shí)計(jì)算所有輸入位置和輸出位置的隱藏表示。在這些模型中,來自兩個(gè)任意輸入位置或輸出位置的信號相關(guān)聯(lián)所需要的操作數(shù)量隨著位置之間的距離的增加而增加,對于序列卷積是線性的,對于字節(jié)網(wǎng)絡(luò)是對數(shù)的。這使得學(xué)習(xí)遠(yuǎn)處位置之間的依賴關(guān)系變得更加困難。在Transformer中,這被減少到恒定的操作次數(shù),盡管代價(jià)是由于平均注意力加權(quán)位置而降低了有效分辨率,但是多頭注意力機(jī)制可以抵消這種影響。11.2.2模型結(jié)構(gòu)Transformer遵循這一整體架構(gòu),編碼器和解碼器采用堆疊式自注意層和點(diǎn)狀全連接層,如圖11.1所示。11.2.2模型結(jié)構(gòu)編碼器和解碼器堆疊編碼器由N=6個(gè)相同層堆疊組成。每層有兩個(gè)子層。第一種是多頭自注意力機(jī)制,第二種是簡單的全連接網(wǎng)絡(luò)。我們在兩個(gè)子層的每一個(gè)子層周圍使用了剩余連接,接著進(jìn)行標(biāo)準(zhǔn)化。也就是說,每個(gè)子層的輸出都進(jìn)行了標(biāo)準(zhǔn)化。為了促進(jìn)這些剩余連接,模型中的所有子層及嵌入層都產(chǎn)生維度為512的輸出。解碼器也由N=6個(gè)相同層堆疊組成。除了每個(gè)編碼器層中的兩個(gè)子層,解碼器還插入第三個(gè)子層,對編碼器堆拔的輸出執(zhí)行多頭注意力機(jī)制。與編碼器類似,我們在每個(gè)子層周圍使用剩余連接,然后進(jìn)行標(biāo)準(zhǔn)化。我們還修改了解碼器堆戰(zhàn)中的自注意力子層,以防止位置關(guān)注后續(xù)位置。這種掩蔽加上輸出嵌入偏移一個(gè)位置的事實(shí),確保了位置i的預(yù)測只能依賴小于1的位置處的己知輸出。0111.2.2模型結(jié)構(gòu)自注意力機(jī)制注意力函數(shù)可以描述為將查詢和一組鍵值對映射到輸出的一種函數(shù),其中,查詢、鍵、值和輸出都是向量。輸出被計(jì)算為值的加權(quán)和,其中,分配給每個(gè)值的權(quán)重由查詢與相應(yīng)鍵的兼容性函數(shù)來計(jì)算。(1)點(diǎn)積注意。我們稱我們的特別關(guān)注為“點(diǎn)積注意”,如圖11.2所示。輸入由維度的查詢和鍵,以及維度

的值組成。我們用所有鍵計(jì)算查詢的點(diǎn)積,除以在,并應(yīng)用softmax函數(shù)來獲得值的權(quán)重。0211.2.2模型結(jié)構(gòu)在實(shí)驗(yàn)中,我們同時(shí)計(jì)算注意函數(shù),并將查詢打包成一個(gè)矩陣Q。將鍵和值也打包成矩陣K和V。將輸出矩陣計(jì)算為常用的兩個(gè)注意函數(shù)是加法注意和點(diǎn)積(乘法)注意。點(diǎn)積注意與我們的算法相同(除了比例因子為)加法注意使用具有單個(gè)隱藏層的全連接網(wǎng)絡(luò)來計(jì)算兼容山雖然兩者在理論復(fù)雜性上相似,但在實(shí)踐中,點(diǎn)積注意要快得多,空間效率也更高,因?yàn)樗梢允褂酶叨葍?yōu)化的矩陣乘法代碼來實(shí)現(xiàn)。對于較小的

值,這兩種機(jī)制的表現(xiàn)相似,而對于較大的

值,加法注意優(yōu)于點(diǎn)積注意。我們懷疑,對于較大的

值,點(diǎn)積的大小會變大,從而將softmax函數(shù)推到梯度極小的區(qū)域?yàn)榱唆骠嬗绊?,我們將點(diǎn)積縮放。11.2.2模型結(jié)構(gòu)(2)多頭注意。我們發(fā)現(xiàn),用不同的、學(xué)習(xí)過的線性投影將查詢、鍵和值分別投影到維h次是有益的,而不是用

維的鍵、值和查詢執(zhí)行單一的注意力功能。在每個(gè)查詢、鍵和值的投影版本上,我們并行執(zhí)行注意力功能,產(chǎn)生

維輸出值。將這些連接在一起,再次投影,產(chǎn)生最終的值,如圖11.2所示。多頭注意力允許模型共同關(guān)注來自不同位置的不同表征子空間的信息。用一個(gè)單一的注意力頭平均抑制特定的注意力點(diǎn)。在這項(xiàng)工作中,我們使用h=8個(gè)平行的注意層,或稱頭部。對于其中的每一個(gè)頭部,我們使用。由于每個(gè)頭部的維數(shù)降低,因此總叫成本與全維數(shù)的單頭注意力相似。11.2.2模型結(jié)構(gòu)(3)Transformer中注意力的應(yīng)用。Transformer以以下三種不同方式使用多頭注意力。在“編碼器-解碼器注意”層中,查詢來自前一個(gè)解碼器層,鍵和值來自編碼器的輸出。這使得解碼器中的每個(gè)位置能夠覆蓋輸入序列中的所有位置。這模仿了序列到序列模型中典型的編碼器-解碼器注意機(jī)制。編碼器包含自注意力層。在自注意層中,所有的鍵、值和查詢都來自同一個(gè)地方,在這種情況下,它們是編碼器中前一層的輸出。編碼器中的每個(gè)位置可以關(guān)注編碼器的前一層的所布位置。類似地,解碼器中的自注意層允許解碼器中的每個(gè)位置關(guān)注解碼器中的所有位置。我們需要防止解碼器中向左的信息流,以保持自回歸特性。通過屏蔽(設(shè)置為-∞)softmax輸入中對應(yīng)于非法連接的所有值,在縮放的點(diǎn)積注意中實(shí)現(xiàn)這一點(diǎn)(見圖11.2)。11.2.2模型結(jié)構(gòu)全連接網(wǎng)絡(luò)除了注意子層,我們的編碼器和解碼器中的每個(gè)層都包含一個(gè)全連接網(wǎng)絡(luò),該網(wǎng)絡(luò)單獨(dú)且相同地應(yīng)用于每個(gè)位置。這包括兩個(gè)線性轉(zhuǎn)換,中間有一個(gè)ReLU激活雖然線性變換在不同的位置上是相同的,但是它們在不同的層之間使用不同的參數(shù)。另一種描述方式是內(nèi)核大小為1的兩個(gè)卷積。輸入輸出維度為

,內(nèi)層維度為。0311.2.2模型結(jié)構(gòu)嵌入和softmax類似其他序列轉(zhuǎn)導(dǎo)模型,我們使用學(xué)習(xí)嵌入將輸入標(biāo)記和輸出標(biāo)記轉(zhuǎn)換為維度為的向量。我們還使用通常學(xué)習(xí)的線性變換和softmax函數(shù)將解碼器輸出轉(zhuǎn)換為預(yù)測的下一個(gè)表示概率。在我們的模型中,在兩個(gè)嵌入層和softmax前的最大線性變換之間共享相同的權(quán)重矩陣。在嵌入層,我們將這些權(quán)重乘以

。0411.2.2模型結(jié)構(gòu)位置嵌入由于我們的模型不包含遞歸和卷積,為了讓模型利用序列的順序,必須注入一些關(guān)于序列中表示相關(guān)位置和絕對位置的信息。因此,我們在編碼器和解碼器堆枝底部的輸入嵌入中添加了“位置編碼飛位置編碼與輸入嵌入具有相同的維度

。因此兩者可以相加。位置編碼有許多選擇,有學(xué)習(xí)型和固定型等。在這項(xiàng)工作中,我們使用不同頻率的正弦和余弦函數(shù)05我們選擇這個(gè)函數(shù)是因?yàn)槲覀兗僭O(shè)它可以讓模型很容易地通過相對位置來學(xué)習(xí),因?yàn)閷τ谌魏喂潭ǖ钠苉,可以表示為

的線性函數(shù)。11.2.3為什么使用自注意力為了激發(fā)對自注意力的使用,我們認(rèn)為有以下三個(gè)迫切需要。第一個(gè)是每層的總計(jì)算復(fù)雜度。第二個(gè)是可以并行化計(jì)算量,以所需要的最小順序操作數(shù)來衡量。第三個(gè)是網(wǎng)絡(luò)中長距離依賴之間的路徑長度。自注意的副作用是可以產(chǎn)生更多可解釋的模型。我們檢查模型中的注意力分布,不僅單個(gè)的注意力頭清楚地學(xué)會執(zhí)行不同的任務(wù),許多注意力頭還表現(xiàn)出與句子的句法和語義結(jié)構(gòu)相關(guān)的行為。11.2.4案例分析下面我們講述如何使用Transformer模型來進(jìn)行文本分類,這也是當(dāng)前在自然語言處理分類領(lǐng)域的最佳模型。本案例基于Keras框架,因此我們需要首先安裝Keras深度學(xué)習(xí)框架,然后就可以進(jìn)行編程實(shí)踐了。首先建立Attentionkeras.py文件,具體程序如下所示:11.2.4案例分析11.2.4案例分析11.2.4案例分析11.2.4案例分析11.2.4案例分析11.2.4案例分析寫好Attentionkeras.py文件后,就可以對模型進(jìn)行訓(xùn)練了。首先,我們引入包,記載文本數(shù)據(jù),具體程序如下所示:11.2.4案例分析第一次運(yùn)行此程序時(shí),系統(tǒng)會自行下載文件,在下載過后就可以直接加載了,程序運(yùn)行結(jié)果如圖11.3所示。接著,我們需要對程序的運(yùn)行結(jié)果進(jìn)行數(shù)據(jù)歸一化處理,這個(gè)操作是很有必要的,有效避免由可能存在的巨大數(shù)據(jù)差造成的誤差。數(shù)據(jù)歸一化處理的具體程序如下所示:11.2.4案例分析運(yùn)行程序,可以得到如圖11.4所示的數(shù)據(jù)歸一化程序運(yùn)行結(jié)果。接著,定義好模型組件并預(yù)處理完數(shù)據(jù)后,就可以搭建一個(gè)簡單的Transformer模型來進(jìn)行訓(xùn)練了。定義一個(gè)Transformer.PY文件,具體程序如下所示:11.2.4案例分析然后,運(yùn)行程序,可以得到模型的結(jié)構(gòu)參數(shù),如圖11.5所示。11.2.4案例分析從圖11.5中可以看到我們定義的Transformer模型的結(jié)構(gòu)參數(shù)。在建立好Transformer模型后,就可以進(jìn)行訓(xùn)練并保存模型了。具體程序如下所示:運(yùn)行程序,可以得到分類任務(wù)結(jié)果,如圖11.6所示。GPT0311.3.1GPT-1介紹有效地從原始文本中學(xué)習(xí)的能力對于減輕自然語言處理(NLP)中對監(jiān)督學(xué)習(xí)的依賴至關(guān)重要。大多數(shù)深度學(xué)習(xí)方法需要大量手動標(biāo)記的數(shù)據(jù),這限制了它們在許多缺乏注釋資源的領(lǐng)域中的適用性。在這種情況下,那些可以利用未標(biāo)記數(shù)據(jù)中的語言信息的模型提供了收集更多注釋的寶貴替代方案,這既耗時(shí)又昂貴。此外,在可以考慮監(jiān)督學(xué)習(xí)的那些情況中,以無監(jiān)督方式學(xué)習(xí)良好的表示也可以顯著提高性能。迄今為止,最令人信服的證據(jù)是大量使用預(yù)先訓(xùn)練過的單詞嵌入來提高一系列NLP任務(wù)的性能。然而,利用來自未標(biāo)記文本的單詞級信息仍舊是一個(gè)挑戰(zhàn),這有兩個(gè)主要原因。第一,不清楚哪種類型的優(yōu)化目標(biāo)在學(xué)習(xí)對傳輸有用的文本表示方面最有效。0111.3.1GPT-1相關(guān)工作(1)NLP的半監(jiān)督學(xué)習(xí)。我們的工作大體上屬于自然語言半監(jiān)督學(xué)習(xí)范疇。這種模式己經(jīng)引起了人們的極大興趣,已經(jīng)應(yīng)用于序列標(biāo)記或文本分類等任務(wù)。然而,這些方法主要傳遞單詞級別的信息,而我們的目標(biāo)是捕獲更高級別的語義。(2)無監(jiān)督的預(yù)訓(xùn)練。無監(jiān)督的預(yù)訓(xùn)練是半監(jiān)督學(xué)習(xí)的一種特殊情況,其目標(biāo)是找到一個(gè)好的初始點(diǎn),而不是修改監(jiān)督學(xué)習(xí)目標(biāo)。我們還展示了我們的模型在更廣泛的任務(wù)上的有效性,包括自然語言推理、釋義檢測和故在完成。其他方法使用預(yù)先訓(xùn)練的語言或機(jī)器翻譯模型中的隱藏表示作為輔助功能,同時(shí)針對目標(biāo)任務(wù)訓(xùn)練受監(jiān)督模型。這涉及每個(gè)單獨(dú)目標(biāo)任務(wù)的大量新參數(shù),而在傳輸過程中,我們需要對模型體系結(jié)構(gòu)進(jìn)行最少的更改。0211.3.1GPT-1(3)輔助訓(xùn)練、目標(biāo)。使用增加的無監(jiān)督訓(xùn)練的目標(biāo)來替代半監(jiān)督學(xué)習(xí)。collobert和weston的早期工作使用了各種各樣的輔助NLP任務(wù),如POS標(biāo)記、分塊、命名實(shí)體識別和語言建模,以改進(jìn)語義角色標(biāo)記。最近,REI在輔助任務(wù)的目標(biāo)巾添加了一個(gè)輔助語言建模目標(biāo),并演示了序列標(biāo)記任務(wù)的性能提升。我們的實(shí)驗(yàn)也使用了一個(gè)輔助目標(biāo),但正如我們所展示的,無監(jiān)督的預(yù)訓(xùn)練已經(jīng)學(xué)習(xí)了與目標(biāo)任務(wù)相關(guān)的幾種語言。11.3.1GPT-1架構(gòu)我們的訓(xùn)練過程分為兩個(gè)階段。第一階段是在大語料庫上學(xué)習(xí)大容量語言模型。第二階段是微調(diào)階段,在這個(gè)階段,我們將使模型適應(yīng)帶有標(biāo)簽數(shù)據(jù)的特定任務(wù)。(1)無監(jiān)督職訓(xùn)練。給定無監(jiān)督表示集合,我們使用標(biāo)準(zhǔn)語言模型目標(biāo)來最大化以下似然函數(shù)03在實(shí)驗(yàn)中,我們使用多層Transformerdecoder作為語言模型,這是Transformer的變體。該模型在輸入上下文表征上應(yīng)用一個(gè)多頭自注意操作,隨后來用位置全連接層,通過這樣的操作,就可以在目標(biāo)表征上生成一個(gè)輸出分布11.3.1GPT-1最大化以下函數(shù)此外,研究發(fā)現(xiàn),將語言建模作為微調(diào)的輔助目標(biāo)有助于學(xué)習(xí)改進(jìn)監(jiān)督模型的泛化,以及加速收斂。這與先前的工作是一致的,他們也觀察到了這種輔助目標(biāo)的改進(jìn)性能。具體來說,優(yōu)化了以下目標(biāo)(權(quán)重為λ)總體而言,我們在微調(diào)過程中需要的唯一額外參數(shù)是及分隔符標(biāo)記的嵌入。(3)特定于任務(wù)的輸入轉(zhuǎn)換。對于一些任務(wù),如文本分類,我們可以直接按照上面的描述方式對模型的輸入進(jìn)行微調(diào)。而對于某些其他任務(wù),如問答或文本繼承,以及具有結(jié)構(gòu)化的輸入,如有序的句子對,或文檔、問題和答案的三元組而言,由于我們的預(yù)訓(xùn)練模型是針對連續(xù)的文本序列進(jìn)行訓(xùn)練的,因此我們需要進(jìn)行一些修改,以便將其應(yīng)用于這些任務(wù)。11.3.1GPT-1先前的工作提出了學(xué)習(xí)任務(wù)特定的體系結(jié)構(gòu),這些體系結(jié)構(gòu)是基于所傳輸?shù)臄?shù)據(jù)表示建立的。這種方法重新引入了大量特定于任務(wù)的定制,并且不將轉(zhuǎn)移學(xué)習(xí)用于這些額外的體系結(jié)構(gòu)組件。相反,我們使用遍歷式方法,在這里,我們將結(jié)構(gòu)化輸入轉(zhuǎn)換成一個(gè)有序的序列,我們預(yù)先訓(xùn)練的模型可以處理它。這些輸入轉(zhuǎn)換允許我們避免跨任務(wù)對體系結(jié)構(gòu)進(jìn)行廣泛更改。文字蘊(yùn)含:我們將前提P和假設(shè)H標(biāo)記序列連接起來,中間用一個(gè)分隔符標(biāo)記。相似度:對于相似度任務(wù)來說,兩個(gè)被比較的句子沒有固定的順序。為了反映這一點(diǎn),我們將輸入序列修改成兩個(gè)句子序列(中間有一個(gè)分隔符),并分別處理每個(gè)序列,以生成兩個(gè)序列表示,在送入線性輸出層之前按元素寬度添加。問答和常識性推理:我們得到一個(gè)上下文文檔Z,一個(gè)問題Q和一組可能的答案。我們將上下文文檔和問題與每個(gè)可能的答案連接起來,在每兩者之間添加一個(gè)分隔符標(biāo)記。這些序列中的每一個(gè)都是用模型來獨(dú)立處理的,然后通過一個(gè)softmax層進(jìn)行規(guī)范化,以在可能的答案上產(chǎn)生一個(gè)輸出分布。11.3.1GPT-2介紹我們懷疑單一領(lǐng)域數(shù)據(jù)集的單一任務(wù)訓(xùn)練的普遍性是當(dāng)前系統(tǒng)缺乏一般化的主要原因。在具有當(dāng)前架構(gòu)的魯棒系統(tǒng)方面的進(jìn)步可能需要在更廣泛的領(lǐng)域及任務(wù)上進(jìn)行訓(xùn)練和性能測試。最近,己經(jīng)有幾個(gè)基準(zhǔn)被用于研究此問題。當(dāng)前表現(xiàn)最佳的語言任務(wù)系統(tǒng)結(jié)合了預(yù)訓(xùn)練和監(jiān)督微調(diào)。這種方法歷史悠久,趨向于更靈活的遷移形式。首先學(xué)習(xí)單詞向量并將其用作特定任務(wù)體系結(jié)構(gòu)的輸入,然后轉(zhuǎn)移循環(huán)網(wǎng)絡(luò)的語境表示。最近的工作表明,不再需要特定任務(wù)的架構(gòu),只需要遷移帶有許多自我關(guān)注的塊就夠了。這些方法仍然需要監(jiān)督訓(xùn)練才能執(zhí)行任務(wù)。當(dāng)只有極少監(jiān)督數(shù)據(jù)或沒有監(jiān)督數(shù)據(jù)時(shí),另一項(xiàng)工作證明了語言模型執(zhí)行特定任務(wù)的前景,如常識推理和情感分析。0111.3.1GPT-2方法GPT-2方法的核心是語言建模。由于語言具有自然的順序排序,因此通常將符號上的聯(lián)合概率分解為條件概率的乘積02該方法允許從p(x)及形式的任何條件中進(jìn)行易處理的采樣和估計(jì)。近年來,那些可以計(jì)算這種條件概率的模型的表現(xiàn)力取得了顯著的成就,如像Transformer這樣的自注意架構(gòu)。學(xué)習(xí)執(zhí)行單個(gè)任務(wù)可以在概率框架中表示為估計(jì)條件分布p(outputIinput)。由于一般系統(tǒng)能夠執(zhí)行許多不同的任務(wù),即使輸入相同,它不僅要考慮輸入,還要考慮待執(zhí)行的任務(wù)。也就是說,它應(yīng)該對p(outputIinput,task)建模。11.3.1GPT-2在多任務(wù)和元學(xué)習(xí)設(shè)置中,它己經(jīng)被各種形式化。任務(wù)調(diào)節(jié)通常在架構(gòu)級別實(shí)施,如在一些研究中,任務(wù)使用特定的編碼器和解碼器,或者其在算法級別(如MAML的內(nèi)部和外部循環(huán))優(yōu)化框架。但正如McCann等人所舉例說明的那樣,語言提供了一種靈活的方式來將任務(wù)、輸入和輸出全部指定為一系列符號。例如,翻譯訓(xùn)練樣本可以寫為序列(翻譯為英語文本、法語文本)。同樣,閱讀理解訓(xùn)練的例子可以寫成符號(回答問題、文檔、問題、答案)。McCann等人證明了可以訓(xùn)練單個(gè)模型MQAN,用這種類型的格式推斷和執(zhí)行許多不同的任務(wù)。原則上,語言建模也能夠?qū)W習(xí)McCann等人的任務(wù),而無須確定哪些符號是待預(yù)測輸出的明確的監(jiān)督。由于監(jiān)督目標(biāo)與無監(jiān)督目標(biāo)相同,但僅在序列的子集上進(jìn)行評估,因此無監(jiān)督目標(biāo)的全局最小值也是監(jiān)督目標(biāo)的全局最小值。11.3.1GPT-2雖然從上述適當(dāng)?shù)脑O(shè)置到“其他語言”的混合是一大步,但Weston在對話的背景下認(rèn)為需要開發(fā)能夠直接從自然語言中學(xué)習(xí)的系統(tǒng),并能夠通過使用輸出來預(yù)測學(xué)習(xí)沒有獎勵信號的問答任務(wù)。雖然對話是一種有吸引力的方法,但我們擔(dān)心它過于嚴(yán)格。互聯(lián)網(wǎng)包含大量可被動獲取的信息,無須交互式通信。我們的推測是,具有足夠能力的語言模型將開始學(xué)習(xí)推斷和執(zhí)行自然語言序列中演示的任務(wù),以便更好地預(yù)測它們,而無論其獲得的方式如何。如果語言模型能夠做到這一點(diǎn),那么它實(shí)際上將執(zhí)行無監(jiān)督的多任務(wù)學(xué)習(xí)。我們通過在各種任務(wù)的zero-shot設(shè)置中分析語言模型的性能來測試是否是這種情況。11.3.1GPT-2(1)輸入表示。通用語言模型(LM)應(yīng)該能夠計(jì)算(并生成)任何字符串的長度概率。當(dāng)前的大規(guī)模LM包含像小寫字母轉(zhuǎn)化、標(biāo)記化和詞典外標(biāo)記之類的預(yù)處理步驟,這限制了可模型化字符串的空間。將Unicode字符串作為一系列UTF-8字節(jié)處理的方式很好地滿足了這一要求,如一些工作中所例證的那樣。當(dāng)前的字節(jié)級LM在十億字基準(zhǔn)等大規(guī)模數(shù)據(jù)集上比起字級LM來說不具備競爭力。我們在WebText上訓(xùn)練標(biāo)準(zhǔn)字節(jié)級LM的嘗試中觀察到了類似的性能差距。字節(jié)對編碼(BPE)是字符和宇級語言建模之間的可行的中間點(diǎn),其在頻繁符號序列的字級輸入和不頻繁符號序列的字符級輸入之間進(jìn)行的插值很有效。與其名稱相反,現(xiàn)在涉及的BPE通常在Unicode代碼點(diǎn)而不是在字節(jié)序列上實(shí)現(xiàn)和運(yùn)行。這些實(shí)現(xiàn)需要包括Unicode符號的完整空間,以便為所有Unicode字符串建模。在添加一些多符號的標(biāo)記之前,這種建模操作將使基本詞匯的容量超過130000個(gè)字,與通常一起使用的32000~64000個(gè)表示詞匯表相比,這是非常大的。11.3.1GPT-2相反,BPE的字節(jié)級版本僅需要容量大小為256字的基本詞匯表。然而,直接將BPE應(yīng)用于字節(jié)序列會導(dǎo)致次優(yōu)合井,這是因?yàn)锽PE使用基于貪婪頻率的啟發(fā)方式來構(gòu)建表示詞匯表。我們觀察到BPE包括許多版本的常見詞匯,如dog,因?yàn)樗鼈兂霈F(xiàn)在許多變種中,這將導(dǎo)致有限詞匯時(shí)隙和模型容量的次優(yōu)分配。為避免這種情況,我們會阻止BPE跨任何字節(jié)序列的字符類別的合井??崭袷且粋€(gè)例外,它顯著提高了壓縮效率,在多個(gè)詞匯標(biāo)記中僅添加了最少的單詞碎片。這種輸入表示允許我們將宇級LM的經(jīng)驗(yàn)益處與字節(jié)級方法的通用性結(jié)合起來。由于我們的方法可以為任何Unicode字符串分配概率,因此我們可以在任何數(shù)據(jù)集上評估我們的LM,而不管預(yù)處理、標(biāo)記化或詞匯大小。11.3.1GPT-2(2)模型。我們使用基于Trans島rmer的LM架構(gòu),該模型的細(xì)節(jié)基本遵循OpenAIGPT-1模型,僅進(jìn)行了少量修改。層標(biāo)準(zhǔn)化被移動到每個(gè)子鎖的輸入,類似預(yù)激活殘差網(wǎng)絡(luò),并且在最終自注意塊之后添加了額外的層標(biāo)準(zhǔn)化。使用修改的初始化方案,該方案考慮了具有模型深度的殘差路徑上的累積。我們在初始化時(shí)將殘差層的權(quán)重縮放,其中N是殘差層的數(shù)量。將詞匯量擴(kuò)大到50257。將上下文數(shù)量大小從512個(gè)增加到1024個(gè),并將批量尺寸設(shè)置為512。11.3.1GPT-3介紹具體來說,在多個(gè)自然語言處理數(shù)據(jù)集及兒個(gè)設(shè)計(jì)的新穎任務(wù)中對GP下3模型進(jìn)行了測試和評估。旨在快速測試GP下3對非訓(xùn)練集任務(wù)的適應(yīng)能力。對于每項(xiàng)任務(wù),都在3種條件下評估GPT-3:①少樣本學(xué)習(xí)或情境學(xué)習(xí)(In-contextLearning),允許存在盡可能多的演示填充模型的上下文窗口(典型數(shù)量為10~100);②“單樣本學(xué)習(xí)氣只允許一個(gè)演示;③“零樣本學(xué)習(xí)”,不允許演示,并且僅向模型提供自然語言的指令。原則上,GPT-3也可以在傳統(tǒng)的微調(diào)設(shè)定中進(jìn)行評估。通過添加自然語言任務(wù)描述及模型上下文中的示例數(shù)量,模型性能得以改善,少樣本學(xué)習(xí)的性能也隨模型增大而急劇提升。盡管在多參數(shù)、多任務(wù)條件下取得了不錯(cuò)的結(jié)果,但是對于研究的大多數(shù)任務(wù),模型大小和上下文中案例的數(shù)量趨勢仍然存在。我們強(qiáng)調(diào),這些“學(xué)習(xí)”曲線不涉及梯度更新或微調(diào),只是增加了作為條件的演示數(shù)量。0111.3.1GPT-3廣義上講,在NLP任務(wù)上,GPT-3在零樣本學(xué)習(xí)和單一樣本學(xué)習(xí)設(shè)置中取得了可喜的結(jié)果,而在少樣本學(xué)習(xí)中,有時(shí)它可以與最先進(jìn)的SOTA競爭,甚至超越(盡管SOTA是由微調(diào)模型取得的)SOTA。同樣,GPT-3在零樣本設(shè)置下的TriviaQA數(shù)據(jù)集上達(dá)到64.3%的準(zhǔn)確度,在單一樣本設(shè)置下的TriviaQA數(shù)據(jù)集上達(dá)到68.0%的準(zhǔn)確度,在少樣本設(shè)置的TriviaQA數(shù)據(jù)集上達(dá)到71.2%的準(zhǔn)確度,最后一個(gè)是最好的結(jié)果,相對于同樣設(shè)置下的微調(diào)模型。11.3.1GPT-3GP下3在旨在測試快速適應(yīng)性或即時(shí)推理的任務(wù)上也能顯示出單樣本或少樣本學(xué)習(xí)能力,包括解讀單詞、執(zhí)行算術(shù)運(yùn)算及在句子中使用僅看到一次定義的新穎單詞。在少樣本學(xué)習(xí)設(shè)置下,GPT-3可以生成人工合成的新聞文章,人類評估人員很難將其與人工再作的文章區(qū)分開。同時(shí),即使在GPT-3的規(guī)模上,我們也發(fā)現(xiàn)了其在一些任務(wù)上性能較差的現(xiàn)象。這包括自然語言推理任務(wù)(如ANLI數(shù)據(jù)集)和一些閱讀理解數(shù)據(jù)集(如RACE)。通過展示GPT-3的優(yōu)點(diǎn)和缺點(diǎn)的廣泛特征,包括這些局限性,我們希望能激發(fā)對語言模型的少樣本學(xué)習(xí)的研究。11.3.1GPT-2我們還對“數(shù)據(jù)污染”進(jìn)行了系統(tǒng)研究,當(dāng)在諸如CommonCrawl類的數(shù)據(jù)集上訓(xùn)練高容量模型時(shí),這是一個(gè)日益嚴(yán)重的問題,這可能潛在包含來自測試數(shù)據(jù)集的內(nèi)容,因?yàn)檫@些內(nèi)容通常存在于網(wǎng)絡(luò)中。在本書中,我們開發(fā)了系統(tǒng)的工具來測量數(shù)據(jù)污染并量化其失真影響。盡管我們發(fā)現(xiàn)數(shù)據(jù)污染對大多數(shù)數(shù)據(jù)集的GPT-3性能的影響不大,但我們確實(shí)確定了一些可能夸大結(jié)果的數(shù)據(jù)集,并且沒有報(bào)告這些數(shù)據(jù)集的結(jié)果或用星號標(biāo)記它們,而是根據(jù)嚴(yán)重程度而定。11.3.1GPT-3除上述所有功能外,我們還訓(xùn)練了一系列較小的模型(從1.25億個(gè)參數(shù)到130億個(gè)參數(shù)),以便將其在零樣本、單一樣本和少樣本設(shè)置下的性能與GPT-3進(jìn)行比較。概括地說,對于大多數(shù)任務(wù),我們發(fā)現(xiàn)在三種設(shè)置(零樣本、單一樣本、少樣本)下,模型容量都可以相對平滑地縮放。一個(gè)值得注意的模式是零樣本,單一樣本和少樣本性能之間的差距通常隨模型容量增大而增大,這可能表明較大的模型是更熟練的元學(xué)習(xí)者。最后,鑒于GPT-3顯示的廣泛功能,我們討論了有關(guān)對偏凡、公平和更廣泛的社會影響的擔(dān)憂,并嘗試就此方面對GPT-3的特征進(jìn)行初步分析。11.3.1GPT-3方法GPT-3的基本預(yù)訓(xùn)練方法(包括模型、數(shù)據(jù)和訓(xùn)練)與GPT-2中描述的過程相似,只是相對直接地?cái)U(kuò)大了模型、數(shù)據(jù)集、多樣性及訓(xùn)練時(shí)間。我們從明確定義和對比不同設(shè)置展開評估GPT-3模型,或者在原則上評估GPT-3模型。這些設(shè)置可以看作傾向于依賴多少特定于任務(wù)的數(shù)據(jù)范圍。對于GPT-3來說,它相較于GPT-2的變化如下。微調(diào):是近年來最常用的方法,包括通過在特定于所需任務(wù)的監(jiān)督數(shù)據(jù)集上進(jìn)行訓(xùn)練來更新預(yù)訓(xùn)練模型的權(quán)重,通常使用成千上萬的標(biāo)簽樣本。微謂的主要優(yōu)點(diǎn)是在許多基準(zhǔn)上均具有出色的性能:其主要缺點(diǎn)是需要為每個(gè)任務(wù)使用新的大型數(shù)據(jù)集,而且泛化能力很差,分布不均,且利用訓(xùn)練數(shù)據(jù)的虛假特征的潛力不夠。通常情況下,無須做調(diào)GPT-3,因?yàn)槲覀兙劢古c任務(wù)無關(guān)的性能,但是GPT-3原則上可以做調(diào),這是未來工作的方向。0211.3.1GPT-3少樣本:是我們在這項(xiàng)工作中使用的術(shù)語,是指模型設(shè)置條件,在推理時(shí)只給模型少量的示例任務(wù)樣本,但不允許權(quán)重更新。對于一個(gè)典型的數(shù)據(jù)集,一個(gè)示例具有一個(gè)上下文和一段待補(bǔ)全的文本,并給出K個(gè)示例的上下文和待補(bǔ)全文本的例子,據(jù)此進(jìn)行少樣本學(xué)習(xí),最后給出一個(gè)上下文,讓模型對其進(jìn)行補(bǔ)全。通常將K設(shè)置在10~100的范圍內(nèi),因?yàn)檫@是模型的上下文窗口可以容納的示例數(shù)量。少樣本的主要優(yōu)點(diǎn)是大大減少了對特定于任務(wù)的數(shù)據(jù)的需求,并減少了從龐大但狹窄的微調(diào)數(shù)據(jù)集中學(xué)習(xí)過窄分布的可能性;其主要缺點(diǎn)是,到目前為止,這種方法的結(jié)果要比SOTA微調(diào)模型差很多。同樣,仍然需要少量的任務(wù)特定數(shù)據(jù)。顧名思義,此處針對語言模型描述的少樣本學(xué)習(xí)與其他上下文中使用的少樣本學(xué)習(xí)(ML)都涉及基于廣泛任務(wù)分配的學(xué)習(xí)(在這種情況下,會隱含在預(yù)訓(xùn)練數(shù)據(jù)中),并迅速適應(yīng)新任務(wù)。11.3.1GPT-3單樣本與少樣本相同,除了對任務(wù)的自然語言描述,僅允許有一個(gè)示例樣本,區(qū)分單樣本、少樣本和零樣本的原因是,它與某些任務(wù)傳達(dá)給人類的方式最接近。零樣本與單樣本相似,不同之處在于不允許示例樣本,并且僅向模型提供了描述任務(wù)的自然語言指令。這種方法提供了最大的便利性、潛在魯棒性,避免了虛假相關(guān)(除非它們廣泛分布在預(yù)訓(xùn)練數(shù)據(jù)中),但這也是最具挑戰(zhàn)性的設(shè)置。在某些情況下,如果沒有先前的示例樣本,對于人類來說甚至可能很難理解任務(wù)的格式因此在某些情況下,這種設(shè)置是“不公平的”。11.3.1GPT-3模型和架構(gòu)GPT-3使用與GPT-2相同的模型和架構(gòu),包括其中修改的初始化、預(yù)歸一化和其中描述的可逆分詞,不同之處是我們在Transformer的各層中交替使用稠密和局部帶狀稀疏注意力模式,類似稀疏Transformer。為了研究ML性能對模型大小的依賴性,我們訓(xùn)練了8種不同大小的模型,范圍為1.25億個(gè)參數(shù)到1750億個(gè)參數(shù),跨度為三個(gè)數(shù)量級,最后一個(gè)模型稱為GPT-3。先前的工作建議,在有足夠的訓(xùn)練數(shù)據(jù)的情況下,驗(yàn)證損失的縮放比例應(yīng)近似隨著模型大小進(jìn)行幕次增長;許多不同規(guī)模的訓(xùn)練模型使我們能夠針對驗(yàn)證損失和節(jié)游語言任務(wù)測試假設(shè)。通過以上方法可以方便地構(gòu)建出GPT-3大模型。0311.3.4案例分析本小節(jié)選擇對GP下2模型進(jìn)行復(fù)現(xiàn),GPT-2采用12層的僅有解碼器的Transformer架構(gòu)。首先,回顧一下有關(guān)GPT-2的知識,這對于搭建GP下2模型是有極大幫助的。我們的模型基本上遵循了最初Transformer的工作原理。我們訓(xùn)練了一個(gè)12層的只解碼的Transformer,它有隱藏的自注意力頭(768維狀態(tài)和12個(gè)注意力頭)。對于位置全連接網(wǎng)絡(luò),我們使用了3072維的內(nèi)部狀態(tài)。我們使用Adam優(yōu)化方案,最大學(xué)習(xí)率為0.00025萬。學(xué)習(xí)率在前2000次更新中從零開始線性增加,并隨后使用余弦調(diào)度將其衰減為0。我們在64個(gè)隨機(jī)抽樣的小批量、512個(gè)令牌的連續(xù)序列上訓(xùn)練了100個(gè)階段。由于LayerNorm在整個(gè)模型中被廣泛使用,因此使用簡單的權(quán)重初始化策略即可。我們使用了一個(gè)字節(jié)對編碼詞匯表,還采用了L2正則化的改進(jìn)版本,在所有非偏倚或增益權(quán)重上w=0.01。對于激活函數(shù),我們使用高斯誤差線性單位(GELD)。11.3.4案例分析首先,需要導(dǎo)入一些庫函數(shù)和包:要注意用于描述Transformer的術(shù)語,注意力函數(shù)是一個(gè)查詢(Q)及一組鍵(K)值(V)對的函數(shù)。為了處理更長

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論