大模型原理與技術 課件匯 魏明強 chap6 大模型微調(diào)- chap14 基于大模型的航空航天裝備制造_第1頁
大模型原理與技術 課件匯 魏明強 chap6 大模型微調(diào)- chap14 基于大模型的航空航天裝備制造_第2頁
大模型原理與技術 課件匯 魏明強 chap6 大模型微調(diào)- chap14 基于大模型的航空航天裝備制造_第3頁
大模型原理與技術 課件匯 魏明強 chap6 大模型微調(diào)- chap14 基于大模型的航空航天裝備制造_第4頁
大模型原理與技術 課件匯 魏明強 chap6 大模型微調(diào)- chap14 基于大模型的航空航天裝備制造_第5頁
已閱讀5頁,還剩260頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

大模型微調(diào)-第6章智周萬物?道濟天下o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2o

大模型訓練包括“預訓練”和“微調(diào)”兩個關鍵階段在預訓練階段,大模型通過在大量數(shù)據(jù)上進行訓練學習,已經(jīng)掌握了豐富的語言規(guī)則、知識信息以及視覺模式。然而,在大規(guī)模(公開)數(shù)據(jù)上通過自監(jiān)督學習訓練出來的模型雖然具有較好的“通識”能力(稱為基礎模型),卻往往難以具備“專業(yè)認知”能力(稱為專有模型/垂直模型)。大模型的預訓練成本非常昂貴,龐大的計算資源和數(shù)據(jù)讓普通用戶難以從頭開始訓練大模型。充分挖掘這些預訓練大模型的潛力,針對特定任務的微調(diào)不可或缺。大模型微調(diào)是將預訓練好的大模型參數(shù)作為起點,利用少量有標簽的數(shù)據(jù)進一步調(diào)整大模型參數(shù),以適應特定的任務,使得大模型不僅僅停留在理解通用知識的層面,更能夠針對特定問題提供精準的解決方案。

大模型微調(diào)4o

有監(jiān)督微調(diào)分為:全參數(shù)微調(diào)和參數(shù)高效微調(diào)全參數(shù)微調(diào)指的是在特定任務上對整個預訓練模型的所有參數(shù)進行更新。這種技術簡單直接,可以使模型適應新的任務。但是隨著模型參數(shù)規(guī)模變得越來越大,更新所有參數(shù)需要大量的計算資源。同時,當特定任務的數(shù)據(jù)量不足時,全參數(shù)微調(diào)容易導致過擬合。參數(shù)高效微調(diào)(Parameter-EfficientFine-Tuning,PEFT)是指固定預訓練模型的大部分參數(shù),僅微調(diào)少量或額外的模型參數(shù)來達到與全參數(shù)微調(diào)接近的效果,甚至在某些情況下比全參數(shù)微調(diào)有更好的效果,更好地泛化到域外場景。

大模型微調(diào)o

指令微調(diào)過少量的、精心設計的指令數(shù)據(jù)來微調(diào)預訓練后的大模型,使其具備遵循指令和進行多輪對話的能力,以提高其在處理命令式語言和指令性任務時的性能和適應性。o

基于人類反饋的強化學習(ReinforcementLearningHumanForward,RLHF)微調(diào):以人類的偏好作為獎勵信號,通過強化學習與人類反饋相結合的方式,指導模型的學習和優(yōu)化,從而增強模型對人類意圖的理解和滿足程度。主要包括:獎勵模型微調(diào)和強化學習微調(diào)兩個階段。獎勵模型微調(diào)階段通過學習人類對模型輸出的評價(如喜好、正確性、邏輯性等)提供一個準確評價模型行為的標準。強化學習微調(diào)階段則基于獎勵模型來指導優(yōu)化模型的行為。通過這種方式,基于人類反饋的強化學習微調(diào)能夠有效地將人類的智慧和偏好整合到模型訓練過程中,提高模型在特定任務上的性能和可靠性。o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2參數(shù)高效微調(diào)-增量式微調(diào)o

參數(shù)高效微調(diào)參數(shù)高效微調(diào)(PEFT)是在保持模型性能的同時,以最小的計算成本對模型進行微調(diào),以適應特定任務或數(shù)據(jù)集的技術?,F(xiàn)有的參數(shù)高效微調(diào)可以大體分為增量式微調(diào)、指定式微調(diào)、重參數(shù)化微調(diào)三大類。o

增量式微調(diào)增量式(Addition-based)微調(diào)是在預訓練模型基礎上,僅僅調(diào)整少量添加的額外可訓練的層或參數(shù),使模型能夠快速地適應新任務或數(shù)據(jù)集的技術。根據(jù)添加的額外參數(shù)的位置或方式不同,增量式微調(diào)技術可以分為適配器微調(diào)和前綴微調(diào)。適配器微調(diào)通常是指在預訓練模型的中間層或特定層中插入額外的小型網(wǎng)絡模塊(適配器),進行特定任務的優(yōu)化。前綴微調(diào)指的是在模型的輸入端添加一個連續(xù)的任務特定向量序列(稱為前綴),這個向量序列與原始輸入一起進入模型,在參數(shù)微調(diào)時模型能夠“關注”這個前綴,從而引導模型生成更符合任務需求的輸出。參數(shù)高效微調(diào)-增量式微調(diào)-適配器(Adapter)微調(diào)o

適配器微調(diào)適配器微調(diào)(AdapterTuning)是一種在預訓練后的大模型中間層中,插入適配器(小型網(wǎng)絡模塊)來適應新任務的技術。在微調(diào)時將大模型主體凍結,僅訓練特定于任務的參數(shù),即適配器參數(shù),減少訓練時算力開銷。以Transformer架構為例,如左圖所示:o

圖解:在多頭注意力的投影和第二個前饋網(wǎng)絡的輸出之后分別插入適配器模塊。其中,每個適配器模塊主要由兩個前饋(Feedforward)子層組成,第一個前饋子層以Transformer塊的輸出作為輸入,將原始輸入維度(高維特征)投影到(低維特征)。在兩個前饋網(wǎng)絡中,安插了一個非線性層。在輸出階段,通過第二個前饋子層還原輸入維度,映射回原始維度,作為適配器的輸出。同時,通過一個跳躍連接將Adapter的輸入重新加到最終的輸出中,這樣可以保證,即使適配器一開始的參數(shù)初始化接近0,適配器也由于跳躍連接的設置而接近于一個恒等映射,從而確保訓練的有效性。加入適配器后的Transformer層主體架構以及適配器模塊結構,微調(diào)時處理適配器的參數(shù),其余參數(shù)均凍住參數(shù)高效微調(diào)-增量式微調(diào)-前綴(Prefix)微調(diào)o

前綴微調(diào)前綴微調(diào)(PrefixTuning)在資源有限、任務多樣化的場景下具有顯著的優(yōu)勢。它是基于提示詞前綴優(yōu)化的微調(diào)技術,其原理是在輸入token之前構造一段與任務相關的虛擬令牌作為前綴(Prefix),然后訓練的時候只更新前綴的參數(shù),而預訓練模型中的其他參數(shù)固定不變。以Transformer架構為例,如上圖所示:o

圖解:圖中展示了使用前綴微調(diào)技術實現(xiàn)表格轉(zhuǎn)換成文本(Table-to-Text)、總結(Summarization)和翻譯(Translation)這三個下游任務。以表格轉(zhuǎn)換成文本任務為例,輸入任務是一個線性化的表格“name:Starbucks|type:coffeeshop”,輸出是一個文本描述“Starbucksservescoffee.”。在輸入序列之前添加了一系列連續(xù)的特定任務向量表示的前綴參與注意力計算。前綴微調(diào)能夠有效地訓練上游前綴以指導下游語言模型,實現(xiàn)單個基礎模型同時支持多種任務的目標。前綴微調(diào)適用于涉及不同用戶個性化上下文的任務中。通過為每個用戶單獨訓練的前綴,能夠避免數(shù)據(jù)交叉污染問題,從而更好地滿足個性化需求。參數(shù)高效微調(diào)-增量式微調(diào)-前綴(Prefix)微調(diào)針對不同的模型結構,前綴微調(diào)需要構建不同的前綴,如下圖所示:o

回歸架構模型:在輸入之前添加前綴,得到z=[PREFIX;x;y],合適的上文能夠在固定預訓練模型的情況下引導生成下文,如GPT-3的上下文學習。o

編碼器-解碼器架構模型:編碼器和解碼器都需要增加前綴,得到z=[PREFIX;x;PREFIX0;y]。編碼器端增加前綴用來引導輸入部分的編碼,解碼器端增加前綴用來引導后續(xù)token的生成?;貧w架構模型和編碼器-解碼器架構模型構造前綴的方式對比示意圖o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2參數(shù)高效微調(diào)-指定式微調(diào)o

指定式微調(diào)適配器微調(diào)和前綴微調(diào)通過引入少量額外的可訓練參數(shù),實現(xiàn)了高效的參數(shù)微調(diào)。然而,當模型規(guī)模較大時,會導致部署困難及參數(shù)修改方式不夠靈活等。為了避免引入額外參數(shù)帶來的復雜性增加問題,可以選取部分參數(shù)進行微調(diào),這種方法稱為指定式(Specification-based)微調(diào)。指定式微調(diào)將原始模型中的特定參數(shù)設為可訓練狀態(tài),同時將其他參數(shù)保持凍結狀態(tài)。o

代表性方法之一:BitFit(Bias-termsFine-tuning)一種更為簡單、高效的稀疏微調(diào)策略,訓練時只更新偏置的參數(shù)或者部分偏置參數(shù)。對于每個新任務,BitFit僅需存儲偏置參數(shù)向量(這部分參數(shù)數(shù)量通常小于參數(shù)總量的0.1%)以及特定任務的最后線性分類層。如下圖所示,在每個線性或卷積層中,權重矩陣W保持不變,只優(yōu)化偏置向量b。對于Transformer模型而言,凍結大部分Encoder參數(shù),只更新偏置參數(shù)跟特定任務的分類層參數(shù)。涉及的偏置參數(shù)有注意力模塊中計算Query、Key、Value與合并多個注意力結果時涉及的偏置參數(shù)、MLP層中的偏置參數(shù)、歸一化層的偏置參數(shù)。BitFit需要更新的偏置參數(shù)示意圖o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2參數(shù)高效微調(diào)-重參數(shù)化微調(diào)o

重參數(shù)化微調(diào)(Reparametrization-based)重參數(shù)化微調(diào)通過轉(zhuǎn)換現(xiàn)有的優(yōu)化過程,將其重新表達為更有效的參數(shù)形式。在微調(diào)任務中,微調(diào)權重與初始預訓練權重之間的差異經(jīng)常表現(xiàn)出“低本征秩”的特性。這意味著它們可以被很好地近似為一個低秩矩陣。低秩矩陣具有較少的線性獨立列,可以被理解為具有更低“復雜度”的矩陣,并且可以表示為兩個較小矩陣的乘積。這一觀察引出了一個關鍵的點,即微調(diào)權重與初始預訓練權重之間的差異可以表示為兩個較小矩陣的乘積。通過更新這兩個較小的矩陣,而非整個原始權重矩陣,可以大幅提升計算效率?;诖怂枷耄椭冗m配(Low-RankAdaptation:LoRA)微調(diào)方法被提出,并引發(fā)了廣泛關注。o

LoRA微調(diào)LoRA微調(diào)指通過在預訓練模型中引入低秩結構來實現(xiàn)高效的參數(shù)微調(diào)。其核心思想是通過低秩分解來修改模型的權重矩陣,使其分解為較低維度的因子,從而減少在微調(diào)過程中需要更新的參數(shù)數(shù)量。參數(shù)高效微調(diào)-重參數(shù)化微調(diào)-LoRA全參數(shù)微調(diào)與LoRA微調(diào)的參數(shù)構成示意圖

參數(shù)高效微調(diào)-重參數(shù)化微調(diào)-LoRA變體o

自適應預算分配的參數(shù)高效微調(diào)(AdaptiveBudgetAllocationforParameter-EfficientFine-Tuning:AdaLoRA)由于LoRA為所有的低秩矩陣指定了唯一秩的設置,忽視了不同模塊、不同層參數(shù)在特定任務中的重要性差異,導致大模型的效果存在不穩(wěn)定性。針對這一問題,自適應預算分配的參數(shù)高效微調(diào)(AdaLoRA)方法被提出,它在微調(diào)過程中根據(jù)各權重矩陣對于下游任務的重要性來動態(tài)調(diào)整秩的大小,以減少可訓練參數(shù)數(shù)量的同時保持或提高性能。o

量化高效(EfficientFine-TuningofQuantizedLLMs:QLoRA)微調(diào)量化高效微調(diào)(QLoRA)是大模型微調(diào)中一種提升模型在硬件上運行效率的技術。隨著大模型參數(shù)量的不斷增加,如擁有660億一個參數(shù)的超大模型LLaMA,其顯存占用高達300GB。在這樣的情況下,傳統(tǒng)的16bit量化壓縮存儲微調(diào)所需的顯存甚至超過了780GB,使得常規(guī)的LoRA技術難以應用。面對這一挑戰(zhàn),QLoRA微調(diào)基于LoRA微調(diào)的邏輯,通過凍結的4bit量化預訓練模型來傳播梯度到低秩適配器。下圖展示了不同于LoRA微調(diào)和全參數(shù)微調(diào)QLoRA的創(chuàng)新之處,即它巧妙地結合了量化技術和適配器方法,以在資源受限的情況下提高模型的可訓練性和性能。o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2參數(shù)高效微調(diào)-混合微調(diào)

UniPELT方法示意圖參數(shù)高效微調(diào)-小結不同參數(shù)高效微調(diào)方法對比示意圖左圖展示了4種微調(diào)方法在Transformer模塊上的應用方式:適配器微調(diào):設計適配器結構,在模型的適當位置插入適配器,僅微調(diào)適配器部分的參數(shù)。前綴微調(diào):在輸入序列之前添加一個連續(xù)向量,僅微調(diào)前綴部分的參數(shù)。BitFit:僅調(diào)整模型的偏置參數(shù)。LoRA微調(diào):引入低秩分解的矩陣,新增的矩陣權重可以與原始權重合并。適配器微調(diào)、前綴微調(diào)屬于增量式微調(diào)方法,它們通過引入額外的結構來微調(diào)參數(shù);BitFit屬于指定式微調(diào)方法,專注于調(diào)整模型中的部分參數(shù);LoRA微調(diào)屬于重參數(shù)化微調(diào)方法,將原始權重重參數(shù)化為原始矩陣與新增低秩矩陣的乘積權重之和。參數(shù)高效微調(diào)-小結名稱優(yōu)點缺點適用場景適配器微調(diào)較低的計算成本和較好的性能增加模型層數(shù),導致模型的參數(shù)數(shù)量和計算量增加,影響模型的效率,延長推理時間。當訓練數(shù)據(jù)不足或者適配器的容量過大時,可能會導致適配器過擬合訓練數(shù)據(jù),降低模型的泛化能力適用于處理小數(shù)據(jù)集前綴微調(diào)只微調(diào)預訓練模型的前綴,就能達到與全參數(shù)微調(diào)相當?shù)男阅?,減少了計算成本和過擬合的風險前綴token會占用序列長度,有一定的額外計算開銷適用于各種需要添加特定前綴的自然語言處理任務,如文本分類、情感分析等BitFit訓練參數(shù)數(shù)量極小

(約

0.1%)在大部分任務上的效果差于適配器微調(diào)、LoRA微調(diào)等方法適用于處理小規(guī)模到中等規(guī)模的數(shù)據(jù)集LoRA微調(diào)無推理延遲,可以通過可插拔的形式切換到不同的任務,易于實現(xiàn)和部署,簡單且效果好低秩矩陣中的維度和秩的選擇對微調(diào)效果產(chǎn)生較大影響,需要超參數(shù)調(diào)優(yōu)適用于需要快速收斂且對模型復雜度要求較高的任務,如機器翻譯和語音識別等UniPELT多種微調(diào)方法混合涉及模型的不同部分,使得模型的魯棒性更好相比于單個微調(diào)方法訓練參數(shù)數(shù)量大,推理更耗時在低數(shù)據(jù)場景中相對于單個微調(diào)方法提升更顯著參數(shù)高效微調(diào)方法能夠有效減少微調(diào)所需的計算資源和時間,保持模型的整體性能穩(wěn)定,不會對整個模型結構做出重大改變,可以在實際應用中幫助研究者更加輕松地優(yōu)化大模型。參數(shù)高效微調(diào)方法具體分為增量式微調(diào)方法、指定式微調(diào)方法、重參數(shù)化微調(diào)方法以及多方法并用的混合微調(diào)方法。下表總結了常用的參數(shù)高效微調(diào)方法的優(yōu)缺點及適用場景。在實際應用中,需要根據(jù)預訓練模型、具體任務和數(shù)據(jù)集等因素選擇合適的微調(diào)方法。o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2指令微調(diào)o

指令微調(diào)(InstructionTuning)模型在訓練階段存在一個關鍵問題,即訓練目標和用戶目標之間的不匹配問題。例如,大模型通常在大型語料庫上,通過最小化上下文詞預測誤差進行訓練,而用戶希望模型有效且安全地遵循他們的指令。為了解決這個問題,研究人員提出了指令微調(diào)技術,使大模型與人的任務指導或示例進行交互,根據(jù)輸入和任務要求進行相應調(diào)整,從而生成更準確、更合理的回答或輸出。指令微調(diào)利用<指令,輸出>數(shù)據(jù)集,以監(jiān)督的方式進一步訓練大模型,彌合大模型的預測目標與用戶讓大模型遵循人類指令的目標之間的差距,讓大模型更好地適應特定應用場景或任務,提高輸出的質(zhì)量和準確度。這里,指令代表人類提供給大模型的指令,即指定任務的自然語言文本序列,如“寫一篇關于某某主題的發(fā)言稿”“為游客出一份某某景點的旅游攻略”等;輸出代表遵循指令的期望輸出。也就是說,指令微調(diào)其實是一種特殊的有監(jiān)督微調(diào)技術,特殊之處在于其數(shù)據(jù)集的結構,即由人類指令和期望輸出組成的配對,這種結構使得指令微調(diào)專注于讓模型理解和遵循人類指令。指令微調(diào)主要包含構建指令數(shù)據(jù)集和指令微調(diào)兩個關鍵步驟,如下圖所示:指令微調(diào)的通用架構指令微調(diào)-指令數(shù)據(jù)集構建o

指令數(shù)據(jù)集兩種構建方法:來自帶注釋的自然語言數(shù)據(jù)集的數(shù)據(jù)集成(DataIntegration),即從帶注釋的自然語言數(shù)據(jù)集,使用模板(Template)技術將文本標簽對(Text-labelPairs)轉(zhuǎn)換為<指令,輸出>對(Instruction-OutputPairs)。例如,F(xiàn)lan和P3數(shù)據(jù)集就是通過數(shù)據(jù)集成策略構建的。利用大模型基于指令生成輸出,例如,可以使用GPT-3.5-Turbo或GPT-4等大模型收集輸出。此方法包含兩個步驟:(1)通過人工收集的方式得到指令,或者先手寫少量指令然后用大模型來擴充指令;(2)將收集到的指令輸入大模型中以獲得輸出。InstructWild和Self-Instruct等數(shù)據(jù)集就是通過這種技術構建的。另外,對于多回合會話指令微調(diào)數(shù)據(jù)集,可以讓大模型扮演不同的角色(如用戶、AI助手)來生成會話格式的消息。目前,根據(jù)上述兩種方法構建的指令數(shù)據(jù)集一般可以分為三類:①泛化到未見任務:這類數(shù)據(jù)集通常包含多樣化的任務,每個任務都有專門的指令和數(shù)據(jù)樣例。模型在這類數(shù)據(jù)集上訓練后,可以泛化到未見過的新任務上。②在單輪中遵循用戶指令:這類數(shù)據(jù)集包含指令及其對應的響應,用于訓練模型單輪回復用戶指令。訓練后,模型可以理解指令并做出回復。③像人類一樣提供幫助:這類數(shù)據(jù)集包含多輪閑聊對話。訓練后,模型可以進行多輪交互,像人類一樣提供幫助??傮w來說,第一類數(shù)據(jù)集側重任務泛化能力,第二類數(shù)據(jù)集側重單輪指令理解能力,第三類側重連續(xù)多輪對話能力。研究人員可以根據(jù)所需的模型能力選擇不同類型的數(shù)據(jù)集進行指令調(diào)優(yōu)。o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2指令微調(diào)-指令微調(diào)技術o

指令微調(diào)階段基于構建好的高質(zhì)量指令數(shù)據(jù)集對基礎大模型進行微調(diào)。指令微調(diào)的架構參考參數(shù)高效微調(diào)技術,即利用一小部分參數(shù)的更新來使得模型達到訓練效果。其主要技術如下表所示:o

參數(shù)高效微調(diào)技術方法原理優(yōu)勢缺點LoRA將模型權重分解為低秩分量進行更新,使調(diào)優(yōu)局限在相關任務子空間減少調(diào)優(yōu)的參數(shù)數(shù)量,降低計算內(nèi)存低秩分解可能削弱模型表征能力HINT使用超網(wǎng)絡根據(jù)指令和少量樣例生成參數(shù)化模塊進行模型調(diào)優(yōu)可以處理長指令,避免重復計算調(diào)優(yōu)模塊性能可能弱于全量調(diào)優(yōu)Qlora對模型權重進行量化,只調(diào)整低秩適配器參數(shù)減少參數(shù)內(nèi)存,兼容量化量化會損失部分精度LOMO融合梯度計算和更新,避免完整梯度存儲減少梯度內(nèi)存占用需要精心設計保證收斂穩(wěn)定Delta-tuning將調(diào)優(yōu)參數(shù)限制在低維流形上。提供理論分析,參數(shù)高效。低維流形假設可能不夠準確o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2基于人類反饋的強化學習微調(diào)經(jīng)過有監(jiān)督微調(diào),大模型已經(jīng)初步具備完成各種任務的能力。但有監(jiān)督微調(diào)的目的是使得模型輸出與標準答案完全相同,不能從整體上對模型輸出質(zhì)量進行判斷。因此,模型不適用于解決自然語言及跨模態(tài)生成的多樣性問題,也不能解決微小變化的敏感性問題。強化學習將模型輸出文本作為一個整體進行考慮,其優(yōu)化目標是使得模型生成高質(zhì)量回復。基于人類反饋的強化學習(ReinforcementLearningfromHumanFeedback,RLHF)是一種特殊的技術,用于與其他技術(如無監(jiān)督學習、有監(jiān)督學習等)一起訓練AI系統(tǒng),使其更加人性化?;谌祟惙答伒膹娀瘜W習微調(diào)如下圖所示,其在多種常見的大語言模型(InstructGPT、ChatGPT等)上取得了很好的表現(xiàn)?;谌祟惙答伒膹娀瘜W習微調(diào)基于人類反饋的強化學習微調(diào)原始網(wǎng)絡數(shù)據(jù),萬億級別token/word;公開數(shù)據(jù)集,比如CommonCrawl、Github代碼數(shù)據(jù)、維基百科等;數(shù)據(jù)量大、質(zhì)量低名稱預訓練算法/任務/目標函數(shù)獎勵建模有監(jiān)督微調(diào)強化學習數(shù)據(jù)集訓練模型備注模型準備:隨機初始化的GPT。語言建模經(jīng)典的預訓練任務Next-Token-Prediction基線模型GPT3:幾千張V100GPU訓練幾個月,花費幾百萬美元。LLaMA:2048個A100GPU訓練了21天,花費500萬美元。模型準備:第一階段預訓練好的GPT模型語言建模預測下一個token模型準備:采用SFT訓練好的模型,訓練RM模型的時候,SFT模型參數(shù)凍結。二值分類預測與偏好一致的獎勵模型準備:監(jiān)督微調(diào)模型+訓練好的獎勵模型,強化學習對監(jiān)督微調(diào)后的模型繼續(xù)訓練。強化學習生成最大化獎勵的tokens比較模式獲取數(shù)據(jù)集,數(shù)據(jù)是問題模板+響應回答,回答由監(jiān)督微調(diào)模型生成,生成多個回答,人工標注這些回答的排序,排序標注可能會很難且漫長,存在耗費幾個小時完成一個提問的回答排序。低數(shù)量、高質(zhì)量監(jiān)督微調(diào)模型獎勵模型,即一個打分模型,用來給GPT輸出的responses打分排序有監(jiān)督微調(diào)后的GPT模型大約100張GPU訓練幾天即可完成,例如:基于LLaMA訓練的Vicuna-13B大約不到100張GPU訓練幾天。大約不到100張GPU訓練幾天例如:ChatGPT,Claude少量但是高質(zhì)量的提問、回答數(shù)據(jù),數(shù)量大約1w~10w條與RM模型訓練時一樣為比較模式,數(shù)據(jù)也是問題模板+響應回答的形式,回答由監(jiān)督微調(diào)模型生成,并且生成多個,由獎勵模型對其進行打分指導(強化學習)基于人類反饋的強化學習(ReinforcementLearningfromHumanFeedback,RLHF)完整流程如下圖所示,包括預訓練、有監(jiān)督微調(diào)、獎勵建模以及最后一步強化學習微調(diào),接下來主要介紹獎勵建模和強化學習微調(diào)部分。基于人類反饋的強化學習微調(diào)-獎勵建模o

獎勵建模獎勵模型源于強化學習中的獎勵函數(shù),能對當前的狀態(tài)刻畫一個分數(shù),來說明這個狀態(tài)產(chǎn)生的價值有多少。不同于基線模型和有監(jiān)督微調(diào)模型,獎勵模型本身并不能直接提供給用戶使用,而是通過模型擬合人類打分結果,給出關于結果質(zhì)量的反饋。香蕉是什么?A:一種酸水果C:一種猴子愛吃的...B:裝飾品...D:香蕉是一種黃色...從問題庫中選擇問題重復生成4次回答人工排序利用排序結果訓練獎勵模型DCAB>>=獎勵模型DCAB>>=(a)利用人工排序結果訓練獎勵模型排序后的輸出生成文本獎勵模型人工排序文本

........(b)獎勵模型訓練詳圖獎勵建模首先利用有監(jiān)督微調(diào)模型生成回答數(shù)據(jù),然后對這些回答進行人工排序,如圖(a)所示;然后基于數(shù)據(jù)和排序結果訓練獎勵模型,如圖(b)所示。獎勵模型的數(shù)據(jù)集以問題模板+響應回答的形式,由有監(jiān)督微調(diào)模型生成多個響應回答,然后人工標注這些響應回答之間的排名順序。獎勵模型通過由人類反饋標注的偏好數(shù)據(jù)來學習人類的偏好,是一種模擬人類評估的過程。將有監(jiān)督微調(diào)模型最后一層的非嵌入層去掉,剩余部分作為初始的獎勵模型。訓練模型的輸入是問題和答案,輸出是一個標量獎勵值(分數(shù))。樣本質(zhì)量越高,獎勵值越大。基于人類反饋的強化學習微調(diào)-獎勵建模

o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2基于人類反饋的強化學習微調(diào)-策略優(yōu)化

基于人類反饋的強化學習微調(diào)-PPO微調(diào)模型結構x:Adogis...初始化大模型........微調(diào)大模型(強化學習策略)........強化學習更新(例如:PPO算法)

獎勵模型文本

........

+凍住參數(shù)提示文本數(shù)據(jù)集基線文本y:afurrymammal××××××××RLHF微調(diào)文本y:man’sbestfriend××××××××基于人類反饋的強化學習微調(diào)-策略優(yōu)化

o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2基于人類反饋的強化學習微調(diào)-案例講解

基于人類反饋的強化學習微調(diào)-案例講解

o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2思考參數(shù)高效微調(diào)、指令微調(diào)以及基于人類反饋的強化學習微調(diào)技術,構成了將預訓練的基礎大型模型有效應用于垂直領域的基石。目前,大模型通過微調(diào)技術已經(jīng)取得了顯著進展。以人類所能理解的方式解釋大模型的行為,是可信地使用它們的基礎。然而,大模型仍然存在許多難以解釋的方面,這引發(fā)了人們對其應用和可信度的疑問。首先,當前大模型的工作原理很大程度上是一個黑盒,這意味著無法準確理解其內(nèi)部運行機制。雖然有監(jiān)督微調(diào)技術可以提升模型性能,但現(xiàn)有理論無法充分解釋“自監(jiān)督預訓練+有監(jiān)督微調(diào)+人類反饋對齊”方式所產(chǎn)生的大模型的強大能力和幻覺錯誤。因此,需要更多的基礎理論和方法來解釋大模型的行為,以使其更可信地應用于實際問題中。其次,針對大模型系統(tǒng)的可信度問題也需要深入思考。盡管大模型在許多任務中表現(xiàn)出色,但仍然需要解決如何確保在關鍵應用中使用這些模型時的可靠性和安全性。這可能涉及對模型的驗證和審計,以及對模型輸出的解釋和解釋能力的提高。最后,需要建立更深入的理解,以解釋大模型智能涌現(xiàn)現(xiàn)象。這些現(xiàn)象指的是模型在面對新任務或環(huán)境時表現(xiàn)出的出乎意料的智能和創(chuàng)造力。通過深入研究這些現(xiàn)象背后的原理,人們可以更好地理解模型的工作方式,并為未來的研究和應用提供更多的啟示,以更好地發(fā)揮大模型的潛力,推動AI技術的發(fā)展和應用。o

大模型微調(diào)概述l

研究背景o

參數(shù)高效微調(diào)技術l

增量式(Addition-based)微調(diào)技術l

指定式(Specification-based)微調(diào)技術l

重參數(shù)化(Reparametrization-based)微調(diào)技術l

混合微調(diào)技術o

指令微調(diào)技術l

指令數(shù)據(jù)集構建l

指令微調(diào)技術o

基于人類反饋的強化學習微調(diào)技術l

獎勵建模l

強化學習微調(diào)-策略優(yōu)化l

案例講解o

思考o

習題

目錄2理論習題:1、在機器學習背景下,解釋什么是大模型微調(diào)?答:大模型微調(diào)是指在一個預訓練好的大型模型基礎上,通過使用新的數(shù)據(jù)集或任務進行額外訓練,以使模型適應新的任務或領域。2、大模型微調(diào)包含哪些步驟?答:大模型微調(diào)的一般步驟包括選擇預訓練模型、調(diào)整模型結構、選擇合適的學習率,然后使用新的數(shù)據(jù)集進行訓練。3、大模型微調(diào)可能會面臨哪些挑戰(zhàn)和考慮因素?答:挑戰(zhàn)和考慮因素可能包括新任務的數(shù)據(jù)分布、模型過擬合的風險、計算資源等。4、遷移學習與大模型微調(diào)在概念上有何關聯(lián)?答:遷移學習是指通過從一個任務學到的知識來改善不同但相關任務的性能,而大模型微調(diào)通常是遷移學習的一種方式。5、如何在大模型微調(diào)后評估模型性能?答:可以使用新任務的評估指標,比如準確度、精確度、召回率等,來評估大模型微調(diào)后的性能。監(jiān)控模型在微調(diào)過程中的表現(xiàn)也是重要的。6、解釋基于類人反饋的強化學習,以及它與傳統(tǒng)的強化學習方法有何不同?提供一個實際的應用場景。答:基于類人反饋的強化學習是一種強化學習方法,其中智能體通過模仿類人的行為來學習任務。與傳統(tǒng)的強化學習方法不同,基于類人反饋的方法強調(diào)通過參考類人的經(jīng)驗來提高學習效率。例如,在機器人領域,一個機器人可以通過觀察并模仿人類執(zhí)行特定任務的方式,加速學習過程。7、大模型微調(diào)中需要針對有用性和無害性收集大量數(shù)據(jù),有用性和無害性分別表示什么意思?答:數(shù)據(jù)收集主要針對有用性和無害性,有用性是指在數(shù)據(jù)收集過程中,讓標注人員使用模型,期望模型幫助用戶完成純粹基于文本的任務(比如回答問題、撰寫編輯文檔、討論計劃和決策)。無害性是指在數(shù)據(jù)收集過程中,讓標注人員通過一些敵對性的詢問,比如計劃搶銀行,引誘模型給出一些違背規(guī)則的有害性回答。實踐習題:1、安裝部署PEFT環(huán)境,隨機初始化一組預期收益率和協(xié)方差,計算并繪制資產(chǎn)的有效邊界。2、使用適配器微調(diào)大型語言模型的場景,假設你已經(jīng)加載了預訓練的BERT模型,現(xiàn)在想要添加一個適配器層用于微調(diào)情感分類任務。請列出至少兩個實現(xiàn)適配器微調(diào)的步驟,并提供相應的Python代碼片段。3、使用前綴微調(diào)方法微調(diào)大型語言模型以執(zhí)行中文翻譯成英文的任務。假設你已經(jīng)加載了預訓練的T5模型,現(xiàn)在想通過前綴微調(diào)使其適應中文翻譯成英文的任務。原文本:“這是一個關于大模型微調(diào)的問題,希望通過前綴微調(diào)的方式來適應中文翻譯成英文的任務。”4、使用LoRA微調(diào)大型語言模型以執(zhí)行文本摘要任務。假設你已經(jīng)加載了預訓練的BERT模型,現(xiàn)在想通過LoRA微調(diào)使其適應文本摘要任務。原文本:“自然語言處理(NaturalLanguageProcessing,簡稱NLP)是人工智能領域中與計算機和人類語言之間交互的研究。NLP的目標是使計算機能夠理解、解釋、生成人類語言,使計算機與人的交互更加自然。它涉及到文本處理、語音處理、機器翻譯等多個方面的任務?!笔褂肔oRA微調(diào)方法,將上述文本進行摘要生成,提取出主要信息。智周萬物?道濟天下

謝謝!Thanks!大模型提示工程智周萬物?道濟天下o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

目錄23

目錄o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程o

提示工程(PromptEngineering)作為數(shù)據(jù)、技術、業(yè)務之間的橋梁,可以幫助大模型更好地理解和回答用戶的請求,是大模型場景落地的關鍵所在。o

大模型提示工程就是設計、改進、完善提示的技術,通過巧妙設計的提示詞(prompt),引導模型生成更豐富、智能的表示,使模型能夠更準確、可靠地回答問題、執(zhí)行任務以及提供更有價值的信息。o

本章將介紹大模型提示工程技術的原理、不同提示策略的細節(jié),以及實際應用中的挑戰(zhàn)與解決方案。掌握這一技術將使讀者更好地理解大模型運作機制,更靈活地設計和調(diào)整提示,實現(xiàn)更卓越的性能和創(chuàng)造力。學習目標:掌握大模型提示工程的基本原理和了解多樣的提示技術;

提示工程簡介49

目錄o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

零樣本提示10o

零樣本指的是模型能夠在沒有樣本的情況下學習數(shù)據(jù)的特征。研究者們最初在深度學習領域提出了這兩種概念,然而在提示工程領域,零樣本這個概念被引申,即無需為模型提供任何背景知識,只需通過直接的輸入指令執(zhí)行任務。

零樣本提示的優(yōu)勢在于其適用于各種領域和任務,無需昂貴的微調(diào)。因此,在快速構建原型、測試新想法或在新領域中使用大模型時非常有用。在設計零樣本提示詞的時候,除了描述具體的需求或任務,還可以將其他隱藏的信息輸送給模型。一條標準的零樣本提示詞應該針對以下4點做出具體的描述:背景角色指令輸出

零樣本提示10o

和與人類溝通工作任務一樣,提示詞需要清楚交代大模型任務的上下文背景,使傳達的信息精準(Precise)和簡潔(Concise)。為了確保提示詞的背景清晰精準,需要避免歧義。

零樣本提示10o

在提示詞中設定一個角色,是最常用的提示詞技巧,可以幫助LLM更精確地理解到它·166·第7章大模型提示工程在任務中所需承擔的職責,以提升回答的質(zhì)量。

零樣本提示10o

指令即為希望LLM完成的任務,指令需要做到具體(Concrete)和完備(Complete)。提示詞的指令要足夠具體。

零樣本提示10o

在零樣本提示詞設計中,可以對輸出形式提出要求,讓LLM的輸出更加可控,提示詞中可提出的要求包括但不限于字數(shù)要求、輸出格式(如表格式、對話式)、回答風格(如嚴謹·170·第7章大模型提示工程的、口語化的)等。14

目錄o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

少樣本提示10o

少樣本提示(Few-shotPrompting)

通過給予模型一些有限的樣本示例或者其余關鍵信息,指導模型理解和生成特定任務下的文本。通過學習給定的樣本中的回答模式以及內(nèi)在邏輯,模型可以在類似需求的任務上進行推理。o

少樣本提示強調(diào)在已有數(shù)據(jù)的基礎上進行任務指導,這與零樣本提示有著本質(zhì)上的不同。o

少樣本提示不僅可以幫助大模型生成高質(zhì)量的回答,在大型圖像生成模型中也起到強大的指導作用。o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

目錄2

鏈式思考提示10o

面對復雜提問場景時,人們往往希望得到有條理的思考過程,并逐步深入考慮各個方面,最終得到復雜問題的解答。然而大模型在這類推理能力方面的表現(xiàn)始終不佳,容易出現(xiàn)回答不連貫、缺乏邏輯推理或信息斷層等問題。o

部分研究者們認為,之前的大語言模型的推理模式單純依賴全局提示詞并直接輸出結果,而忽略了其中的思考過程,人類在面對復雜問題時,常常會將問題拆分為若干個中間問題,通過逐步追問并解決中間問題來進行推理。o

受人類的這種思維模式啟發(fā),研究者們提出直接通過人工干預模型輸出中間推理步驟,迫使模型學習中間推理過程,也就是鏈式思考提示。S思維鏈拓展10o

自一致性(Self-Consistency):旨在改進“思維鏈提示中的樸素貪婪算法”。具體來說,當模型在處理復雜文本時,為了提高結果的準確性,通過少量樣本的思維鏈抽樣出多個不同的推理路徑,選擇最一致的答案。換句話說,即通過CoT的方式,模型輸出多個不同的推理過程和答案,最終通過投票方式選擇最佳答案。o

思維樹(TreeofThoughts:ToT):以樹的形式展開思維鏈,允許回溯,基于中心任務產(chǎn)生多個推理分支。ToT在具體執(zhí)行時回答四個問題:思維分解、思維生成、狀態(tài)計算以及搜索算法。確保每個階段都得到系統(tǒng)的解決。o

思維圖譜(GraphofThoughts:GoT):GoT無縫地將CoT和GoT推廣到更復雜的思維模式,而無需依賴于任何模型更新。具體來說,GoT將LLM生成的信息建模為任意圖,其中信息單元(即“Thought”)是圖的頂點,邊對應于這些頂點的依賴關系。o

思維算法(AlgorithmofThoughts:AoT):一種通過算法推理路徑推動LLM的新策略,開創(chuàng)上下文學習新模式,其改進了ToT和GoT計算效率低的缺陷,消除了冗余查詢的需求。具體來說,AoT通過不斷演化和改進思考過程,維持一個不斷發(fā)展的思維上下文鏈,靈活適應不同的問題和情景,并且能夠根據(jù)需要自動調(diào)整和優(yōu)化。o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

目錄2

思維樹提示10o

受思維鏈的啟發(fā),研究人員進一步提出了思維樹(TreeofThought:ToT)框架,通過將復雜問題分解為容易解決的具體問題,為大模型推理提供了一個更完備的提示框架。o

思維樹提示的主要應用場景是在需要更為有組織和分步執(zhí)行的任務中:系統(tǒng)會將一個問題分解,并生成潛在的推理步驟或“思維”候選者的列表。對這些“思維”進行評估,根據(jù)實施難度,預期結果分配成功率。深入挖掘每個想法,完善其在現(xiàn)實世界中的意義,其中包括:潛在實施場景、實施策略、潛在障礙等。進行最終決策。這種技術有助于大語言模型實現(xiàn)更加有條理的思考和文本生成,特別適用于面對復雜問題或任務的情境。o

提示工程簡介o

零樣本提示o

少樣本提示o

鏈式思考提示o

思維樹提示o

自動提示工程

目錄2

自動提示工程10o

為了減少創(chuàng)建和驗證指令有效性時所耗費的成本,研究人員試圖搭建一個自動生成和選擇提示的框架。目前,已有研究者提出了自動提示工程(AutomaticPromptEngineer:APE)o

APE的工作流程,通常包括以下幾個步驟:數(shù)據(jù)收集:APE需要收集與目標領域或任務相關的大規(guī)模數(shù)據(jù)集。這些數(shù)據(jù)集可以是文本、圖像、甚至是多模態(tài)的數(shù)據(jù)。模型訓練:在數(shù)據(jù)收集階段之后,使用這些數(shù)據(jù)集來訓練大規(guī)模的語言模型,如GPT。訓練過程通常采用無監(jiān)督學習,其中模型通過對大量文本數(shù)據(jù)的自我預測來學習語言的潛在規(guī)律和語義表示。提示生成:一旦訓練完畢,APE可以利用已訓練的模型生成提示。提示可以是針對特定任務的問題回答、文本摘要、語言翻譯等形式。通過輸入用戶的查詢或上下文信息,模型可以生成與之相關的提示內(nèi)容。評估和迭代:生成的提示需要進行評估和校準,以確保其質(zhì)量和準確性。通過與人工標注的數(shù)據(jù)或人類專家的比對,可以對生成的提示進行評估并進行必要的調(diào)整和迭代。

自動提示工程10o

自動提示工程工作流程:智周萬物?道濟天下

謝謝!Thanks!高效大模型策略智周萬物?道濟天下o

大模型效率概述l

研究背景l(fā)

研究內(nèi)容o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率

目錄2o

大模型效率概述l

研究背景l(fā)

研究內(nèi)容o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄o

由于更大的參數(shù)規(guī)模需要更高的計算成本和內(nèi)存需求,大模型的訓練和微調(diào)會受到嚴重限制o

訓練這些模型需要大量的數(shù)據(jù)和資源,給數(shù)據(jù)獲取、資源分配和模型設計帶來挑戰(zhàn),探索不同架構或策略的成本變得過高o

大規(guī)模參數(shù)使大模型不適合部署在資源受限的環(huán)境中,如邊緣設備隨著模型參數(shù)規(guī)模的增大,大模型不僅提高了現(xiàn)有任務的性能,而且還出現(xiàn)了很多新功能

大模型效率面臨的問題4o

大模型效率概述l

研究背景l(fā)

研究內(nèi)容o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

大模型效率及其評估指標o

本章將“大模型效率”定義為大模型產(chǎn)生特定性能時所需的資源,與性能成正相關,與資源成負相關o

評估大模型效率的關鍵指標l

參數(shù)數(shù)量l

模型大小l

浮點運算次數(shù)l

推理時間/token生成速度l

內(nèi)存占用l

碳排放o

高效大模型策略旨在不影響模型性能的情況下優(yōu)化計算和內(nèi)存資源,這些評估指標將是高效大模型策略的重要依據(jù)和體現(xiàn)

大模型效率及其評估指標o

評估大模型效率的關鍵指標l

參數(shù)數(shù)量參數(shù)數(shù)量是直接影響模型學習能力和復雜性的關鍵因素。這些參數(shù)包括權重和偏差等參數(shù),在訓練或微調(diào)階段是可以學習的。更大的參數(shù)數(shù)量通常使模型能夠?qū)W習到更復雜的數(shù)據(jù)模式和新功能,但會影響訓練和推理計算的時間。l

模型大小模型大小定義為存儲整個模型所需的磁盤空間,通常以千兆字節(jié)(GB)或兆字節(jié)(MB)等為單位。模型大小會受到多個因素的影響,其中最主要的因素是參數(shù)數(shù)量,其他因素有參數(shù)數(shù)據(jù)類型和特定的體系結構。模型大小會直接影響存儲需求,提前考慮模型大小對在存儲受限環(huán)境下的部署尤其重要。l

浮點運算次數(shù)浮點運算次數(shù)是指單次前向傳播過程中浮點運算(如加減乘除法)的次數(shù)(計算量),用于估算大模型的計算復雜度。較高的浮點運算次數(shù)通常意味著模型有著更高的計算要求,在資源有限的環(huán)境中部署這種模型將是一個挑戰(zhàn)。系統(tǒng)的并行優(yōu)化以及不同的架構也都會影響最終的整體計算效率。

大模型效率及其評估指標o

評估大模型效率的關鍵指標l

推理時間/token生成速度推理時間也稱為延遲,是大模型在推理階段從輸入到生成響應所需的時間,單位通常為毫秒或秒。推理時間是在實際部署的設備上進行評估的,考慮了特定的硬件和優(yōu)化條件,提供了現(xiàn)實世界性能的實用衡量標準。token生成速度是指模型在每秒內(nèi)可以處理的token數(shù),它能夠用來規(guī)范推理時間,是反映模型速度和效率的關鍵性能指標。l

內(nèi)存占用內(nèi)存占用是指在推理或訓練期間加載和運行模型所需的隨機存取存儲器的內(nèi)存大小,通常以MB或GB為單位。內(nèi)存占用的內(nèi)容不僅包括模型參數(shù),還包括其他運行時必需數(shù)據(jù),如中間變量和數(shù)據(jù)結構。較大的內(nèi)存占用會限制模型的可部署性,尤其是在資源受限的環(huán)境中,需要優(yōu)化技術來降低占用,如模型剪枝或量化。l

碳排放碳排放通常以模型從訓練到推理的過程中排放的二氧化碳量來衡量,反映了訓練和運行該模型對環(huán)境的影響。碳排放受到各種因素的影響,包括所用硬件的能源效率、電力來源,以及模型訓練和運行的持續(xù)時間。可以通過模型優(yōu)化、硬件加速和算法改進等方式提高能效,還可以為數(shù)據(jù)中心(如蘋果公司的云上貴州數(shù)據(jù)中心、騰訊的七星洞數(shù)據(jù)中心)選擇更環(huán)保的能源,從而減少碳排放。o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

高效大模型策略o

提高大模型效率的關鍵方向l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

預算效率o

大模型性能受到各種因素的影響,包括訓練數(shù)據(jù)、模型大小、體系結構、計算資源和訓練策略等。通過調(diào)整這些因素來達到滿足預期的最佳性能,能夠降低資源的消耗以提高效率。但如果采用試錯方法會在調(diào)試中浪費大量的資源,而且通常無法找到最高效的設計方案。為此,可以通過提前預測大模型的性能來調(diào)整大模型的設計和資源安排??s放定律研究了在某些系統(tǒng)中,隨著系統(tǒng)規(guī)模的增大,某些特定指標或行為會發(fā)生可預測的變化。通過縮放定律可以提前預測大模型性能,以便更有效地規(guī)劃和分配資源,進而提高大模型效率。l

縮放定律表明,大模型性能(假設目標函數(shù)為L)主要取決于三個因素:模型參數(shù)的數(shù)量N、數(shù)據(jù)集大小D及訓練的計算預算C。模型的性能會隨著模型參數(shù)的數(shù)量N、數(shù)據(jù)集大小D和訓練的計算預算C的增加而持續(xù)增加。當任意兩個因素不受瓶頸限制時,模型的性能與第三個因素之間存在冪律關系。但如果固定模型參數(shù)的數(shù)量N或數(shù)據(jù)集大小D中的一個,而增加另一個,模型的性能的提升幅度會因受到懲罰而有所減少。o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

數(shù)據(jù)效率o

據(jù)效率策略從數(shù)據(jù)利用方面提高大模型效率。大模型對數(shù)據(jù)的需求是無止境的,但海量的數(shù)據(jù)給大模型訓練不僅延長了訓練時間,而且由于耗電大、存儲容量大而導致訓練成本急劇上升。有效的數(shù)據(jù)使用方法對大模型的訓練和驗證都至關重要,能夠在降低資源消耗的同時提升模型性能,從而提高大模型效率。l

數(shù)據(jù)過濾-將訓練重點指向信息量更大的樣本,較少集中在信息價值較小的樣本上。-通過重復數(shù)據(jù)消除、數(shù)據(jù)下采樣減少訓練集中的冗余,提高數(shù)據(jù)質(zhì)量。l

主動學習/重要性采樣-用較少的標注來訓練樣本,實現(xiàn)較好或等效的性能。-根據(jù)樣本對學習過程的重要性對樣本進行優(yōu)先級排序,僅選擇和標注最有用的樣本,有策略地減少訓練樣本總數(shù)的目的。l

課程學習-通過仔細設計訓練數(shù)據(jù)中樣本的反饋順序來提高模型訓練效率的策略。-先從簡單的樣本或子任務開始訓練,并逐步升級到具有挑戰(zhàn)性的任務上。o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

架構效率o

Transformer架構中的關鍵操作注意力機制,通常需要相對于序列長度的二次復雜度來進行計算,因此在處理長輸入序列時速度明顯較慢。因此,減少注意力操作所需的計算成為提高體系結構效率的直接解決方案,對訓練和推理階段都有效。l

高效注意力-并非所有token關系都具有相同的重要性,可以識別并僅保留最關鍵的關系。-在硬件層面減少硬件之間的數(shù)據(jù)傳輸。l

高效位置編碼-相對位置編碼方法利用兩個token之間的相對位置,而非單個token的絕對位置。-旋轉(zhuǎn)位置編碼使用旋轉(zhuǎn)矩陣對輸入序列進行編碼。l

稀疏模型-計算時只將大模型中用于給定的任務、樣本或token的某些部分被激活。l

無注意力模型-用其他模塊取代注意力機制,在性能上已經(jīng)能夠?qū)崿F(xiàn)與標準的Transformer相當?shù)男Ч?。旋轉(zhuǎn)位置編碼o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

訓練效率o

大模型數(shù)據(jù)和模型的規(guī)模會直接影響到模型的訓練效率。因此,訓練效率是決定大模型效率的重要因素,提高訓練效率需要解決由大模型數(shù)據(jù)和模型規(guī)模的增加帶來的問題。l

穩(wěn)定訓練策略-調(diào)整超參數(shù)如批處理大小、學習率等,實行權重衰減和梯度裁剪等穩(wěn)定策略,防止梯度消失或爆炸。l

混合精度訓練-用更低精度的存儲格式存儲參數(shù),減少內(nèi)存使用,加速模型內(nèi)的通信過程-使用FP32存儲權重,使用FP16進行傳遞和計算l

并行訓練技術-數(shù)據(jù)并行將數(shù)據(jù)集劃分在多個加速器上被并行處理。-模型并行將模型本身劃分到多個加速器上。l

內(nèi)存優(yōu)化-將模型參數(shù)、梯度和優(yōu)化器狀態(tài)等元素劃分到不同GPU上,可以根據(jù)需要從其他GPU中檢索所需數(shù)據(jù)。o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

推理效率o

模型巨大的參數(shù)數(shù)量給在云服務和資源有限設備上的部署帶來了挑戰(zhàn),同時使得維持推理的成本很高。因此,加速推理的常見的方法是構建壓縮模型,以達到與完整模型相當?shù)男阅?。這種方法通??梢苑譃?類:剪枝、知識蒸餾、量化和低秩分解l

剪枝-剪枝技術旨在識別大模型中的冗余并置零,可對單個參數(shù)進行非結構化剪枝,也可對結構單元進行結構化剪枝。l

知識蒸餾-通過利用一個大模型(教師模型)的知識訓練一個小模型(學生模型)。l

量化-降低模型參數(shù)的數(shù)值精度,提高執(zhí)行速度,降低模型大小。-量化需要特定的硬件才能體現(xiàn)在低位精度上的優(yōu)勢。-通常在模型訓練完成后對參數(shù)進行量化。l

低秩分解-大模型權重矩陣存在于包括自注意力層和MLP層及嵌入層在內(nèi)的線性層中,權重矩陣通常是低秩的表明模型權重中存在冗余,將權重矩陣分解為兩個或更多個較小的矩陣以節(jié)約參數(shù)。o

背景大模型效率概述l

研究背景l(fā)

研究背景o

高效大模型策略l

預算效率l

數(shù)據(jù)效率l

架構效率l

訓練效率l

推理效率l

微調(diào)效率3

目錄

微調(diào)效率o

在大規(guī)模且多樣的數(shù)據(jù)集上訓練的大模型已經(jīng)具有出色的通用問題解決能力。通過有針對性的微調(diào),它們在特定領域或任務中的性能可以得到顯著提升。l

參數(shù)高效微調(diào)-僅選擇預訓練參數(shù)的一部分進行微調(diào),其余參數(shù)保持不變-用額外的小規(guī)??蓪W習塊(適配器)來增強預訓練模型,嵌入大模型的模塊中。-使用低秩適配器(一組降維升維低秩矩陣)學習更詳細的任務特定信息。l

數(shù)據(jù)高效調(diào)整-在輸入序列前添加一組有限的提示前綴序列。適配器低秩適配器提示前綴序列智周萬物?道濟天下

謝謝!Thanks!單模態(tài)通用大模型智周萬物?道濟天下o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型結構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄2o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型結構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄3o

LLaMA是MetaAI公司在2023年2月發(fā)布的開源大模型,在開放基準上有著非常出色的表現(xiàn),是迄今為止最流行的開源語言模型之一。隨后,Meta推出了LLaMA2,該模型實現(xiàn)了更為優(yōu)越的性能表現(xiàn),甚至可以與ChatGPT等閉源模型相媲美。o

同期谷歌的PaLM大模型,OpenAI的GPT-4都采用閉源的方式,不能從源碼來剖析模型的結構,LLaMA的開源降低了大模型的研究門檻,后續(xù)許多大模型都是借鑒或沿用了LLaMA的模型框架。

開源大模型現(xiàn)狀4YangJ,JinH,TangR,etal.Harnessingthepowerofllmsinpractice:Asurveyonchatgptandbeyond[J].ACMTransactionsonKnowledgeDiscoveryfromData,2024,18(6):1-32.o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄5

LLaMa模型架構o

與其他自然語言大模型一樣,LLaMA的模型架構采用了Transformer架構。但做出了幾點改進:預先歸一化、SwiGLU激活函數(shù)和旋轉(zhuǎn)位置編碼;并在LLaMA2中使用了分組查詢注意力機制。o

預先歸一化[GPT-3]-為了提高訓練的穩(wěn)定性,LLaMA對每個Transformer層的輸入進行歸一化,而不是輸出進行歸一化-使用了RMS歸一化方法o

SwiGLU激活函數(shù)[PaLM]-將常規(guī)的ReLU激活函數(shù)換為了SwiGLU激活函數(shù)o

旋轉(zhuǎn)位置編碼[GPTNeo]-將絕對位置編碼換為了旋轉(zhuǎn)位置編碼(RoPE)-核心思想是通過絕對位置編碼的方式實現(xiàn)相對位置編碼o

分組查詢注意力機制-為了進一步減少計算開銷,將多頭注意力機制(MHA)替換為了分組查詢注意力機制(GQA)-是MHA與多查詢注意力機制(MQA)的折中方案6o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄7

預訓練o

預訓練使用了七種來自公開來源的數(shù)據(jù)l

預訓練方法與GPT-3,PaLM等語言大模型類似,通過預測上下文信息來進行自監(jiān)督學習l

最大的650億參數(shù)量模型需要使用2048張NVIDIAA100GPU訓練21天8

微調(diào)o

LLaMA2中,作者團隊進一步利用人工標注的數(shù)據(jù)對專為對話場景設計的LLaMA2-Chat模型進行微調(diào),主要采用了有監(jiān)督微調(diào)和RLHF兩種技術。l

在有監(jiān)督微調(diào)環(huán)節(jié)中,作者團隊標注了27540條數(shù)據(jù)用于微調(diào),這些數(shù)據(jù)都是由人工撰寫提示和回答,包括有用性和安全性兩種標注。這里的有用性指的是LLaMA2-Chat如何回應以滿足用戶的請求和提供所需的信息,而安全性則關注LLaMA2-Chat的回應是否安全。9

微調(diào)o

在RLHF環(huán)節(jié)中,目標是使初步微調(diào)過的模型的輸出更符合人類偏好并遵循指令。為了實現(xiàn)這一目標,Meta首先收集了一系列反饋了人類偏好的數(shù)據(jù),并將這些數(shù)據(jù)用于獎勵建模。l

人類偏好數(shù)據(jù)收集:作者團隊選擇了二元比較協(xié)議來標注樣本,因為這樣能最大化收集到數(shù)據(jù)的多樣性。在整個標注過程中,首先要求標注人員寫出一個提示,再在兩個采樣出的模型回答中基于給定的標準標注更為偏好的一個,并給出4個不同的偏好等級。與監(jiān)督微調(diào)相似,在此過程中需要同時關注模型回答的有用性和安全性,并額外標注了一個安全性標簽。l

獎勵建模:獎勵模型將模型的回答和提示作為輸入,輸出一個標量分數(shù)來代表模型回答的質(zhì)量。利用這樣的分數(shù)來作為獎勵,便可以在RLHF過程中優(yōu)化LLaMA2-Chat來將其與人類偏好對其,并提高有用性和安全性。鑒于已有研究發(fā)現(xiàn)單個獎勵模型會在有用性和安全性上做出權衡,從而很難在兩者上表現(xiàn)得都很好,作者團隊分別訓練了兩個獎勵模型來優(yōu)化有用性和安全性。10o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄11

使用方法o

LLaMA模型可以通過官網(wǎng)或官方合作渠道獲得,并部署到本地。下面舉例如何在HuggingFace平臺使用LLaMA模型。l

首先下載模型權重到本地,其中token需要在HuggingFace申請l

然后下載LLaMA官方代碼,安裝依賴包并運行對話模型推理代碼。運行后輸入提示,模型便會給出回答12o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄13o

目前的自然語言大模型已經(jīng)展現(xiàn)出在零樣本和少樣本情況下強大的泛化能力。這種能力的構建基于兩個關鍵要素:一是在互聯(lián)網(wǎng)規(guī)模的龐大數(shù)據(jù)集上進行訓練;二是通過輸入提示詞來引導預訓練好的大模型在不同任務下產(chǎn)生相應的輸出。o

在SAM這項工作中,MetaAI的研究者們對圖像分割任務建立了一個這樣具有強零樣本泛化能力的基礎模型。

研究背景14o

想要構建這樣的一個模型,需要解決這三個問題:l

什么樣的分割任務能支持零樣本泛化?l

模型結構應該是什么樣?l

什么樣的訓練數(shù)據(jù)才能達到這樣的效果?

研究背景15o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄16o

提示下的圖像分割任務:在自然語言大模型中,零樣本泛化的關鍵往往源自于巧妙的提示工程技術。受到此啟發(fā),SAM提出了“可提示分割任務”的概念,即模型根據(jù)給定的提示(這個提示可以是任何能夠指導目標分割的信息,比如一組前景/背景點、一個粗略的邊界框或掩碼,以及任何形式的文本),生成分割目標的掩碼。

任務定義17KirillovA,MintunE,RaviN,etal.Segmentanything[C]//ProceedingsoftheIEEE/CVFInternationalConferenceonComputerVision.2023:4015-4026.o

LLaMA:一種自然語言處理大模型技術l

研究背景l(fā)

模型架構l

訓練方法l

使用方法o

SAM:一種圖像分割大模型技術l

研究背景l(fā)

任務定義l

模型架構l

訓練方法l

使用方法

目錄18o

SAM包含三個模塊,包括圖像編碼器、提示編碼器和掩碼解碼器l

圖像編碼器將輸入的圖像轉(zhuǎn)為高維特征嵌入,該部分直接采用了由MaskedAutoencoder(MAE)預訓練好的VisionTransformer(ViT)模型。MAE是一種圖像自監(jiān)督預訓練技術,經(jīng)過MAE預訓練后,ViT本身已經(jīng)具備了強大的表征學習能力,并且更有利于以此為基礎訓練一個分割大模型。在整個訓練過程中采用了不同版本的ViT模型,包括ViT-H、ViT-L和ViT-B。

模型架構19o

SAM包含三個模塊,包括圖像編碼器、提示編碼器和掩碼解碼器l

提示編碼器將不同類型的提示轉(zhuǎn)換為高維特征嵌入。SAM考慮了兩大種類的提示:第一種是稀疏提示,包括點、包圍框或文本。對于點和包圍框(可視為左上和右下兩個點),SAM采用了Transformer中的三角函數(shù)位置編碼,結合可學習參數(shù),生成每個點的特征。對于文本提示,SAM使用了CLIP中預訓練好的文本編碼器,將文本提示編碼為高維特

溫馨提示

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

評論

0/150

提交評論