[點晴永久免費OA]解析ChatGPT背后的工作原理
ChatGPT 是 OpenAI 發(fā)布的最新語言模型,比其前身 GPT-3 有顯著提升。與許多大型語言模型類似,ChatGPT 能以不同樣式、不同目的生成文本,并且在準確度、敘述細節(jié)和上下文連貫性上具有更優(yōu)的表現(xiàn)。它代表了 OpenAI 最新一代的大型語言模型,并且在設計上非常注重交互性。 OpenAI 使用監(jiān)督學習和強化學習的組合來調優(yōu) ChatGPT,其中的強化學習組件使 ChatGPT 獨一無二。OpenAI 使用了「人類反饋強化學習」(RLHF)的訓練方法,該方法在訓練中使用人類反饋,以最小化無益、失真或偏見的輸出。 本文將剖析 GPT-3 的局限性及其從訓練過程中產生的原因,同時將解釋 RLHF 的原理和理解 ChatGPT 如何使用 RLHF 來克服 GPT-3 存在的問題,最后將探討這種方法的局限性。 大型語言模型中的能力與一致性 「一致性 vs 能力」可以被認為是「準確性 vs 精確性」的更抽象的類比。 在機器學習中,模型的能力是指模型執(zhí)行特定任務或一組任務的能力。模型的能力通常通過它能夠優(yōu)化其目標函數(shù)的程度來評估。例如,用來預測股票市場價格的模型可能有一個衡量模型預測準確性的目標函數(shù)。如果該模型能夠準確預測股票價格隨時間的變化,則認為該模型具有很高的執(zhí)行能力。 一致性關注的是實際希望模型做什么,而不是它被訓練做什么。它提出的問題是「目標函數(shù)是否符合預期」,根據(jù)的是模型目標和行為在多大程度上符合人類的期望。假設要訓練一個鳥類分類器,將鳥分類為「麻雀」或「知更鳥」,使用對數(shù)損失作為訓練目標,而最終目標是很高的分類精度。該模型可能具有較低的對數(shù)損失,即該模型的能力較強,但在測試集上的精度較差,這就是一個不一致的例子,模型能夠優(yōu)化訓練目標,但與最終目標不一致。 原始的 GPT-3 就是非一致模型。類似 GPT-3 的大型語言模型都是基于來自互聯(lián)網(wǎng)的大量文本數(shù)據(jù)進行訓練,能夠生成類似人類的文本,但它們可能并不總是產生符合人類期望的輸出。事實上,它們的目標函數(shù)是詞序列上的概率分布,用來預測序列中的下一個單詞是什么。 但在實際應用中,這些模型的目的是執(zhí)行某種形式的有價值的認知工作,并且這些模型的訓練方式與期望使用它們的方式之間存在明顯的差異。盡管從數(shù)學上講,機器計算詞序列的統(tǒng)計分布可能是建模語言的高效選擇,但人類其實是通過選擇最適合給定情境的文本序列來生成語言,并使用已知的背景知識和常識來輔助這一過程。當語言模型用于需要高度信任或可靠性的應用程序(如對話系統(tǒng)或智能個人助理)時,這可能是一個問題。 盡管這些基于大量數(shù)據(jù)訓練的大模型在過去幾年中變得極為強大,但當用于實際以幫助人們生活更輕松時,它們往往無法發(fā)揮潛力。大型語言模型中的一致性問題通常表現(xiàn)為:
但具體來說,一致性問題源自何處?語言模型的訓練方式本身就容易產生不一致嗎? 語言模型訓練策略如何產生不一致? Next-token-prediction 和 masked-language-modeling 是用于訓練語言模型的核心技術。在第一種方法中,模型被給定一個詞序列作為輸入,并被要求預測序列中的下一個詞。如果為模型提供輸入句子:
它可能會將下一個單詞預測為「mat」、「chair」或「floor」,因為在前面的上下文中,這些單詞出現(xiàn)的概率很高;語言模型實際上能夠評估給定先前序列的每個可能詞的可能性。 masked-language-modeling 方法是 Next-token-prediction 的變體,其中輸入句子中的一些詞被替換為特殊 token,例如 [MASK]。然后,模型被要求預測應該插入到 mask 位置的正確的詞。如果給模型一個句子:
它可能會預測 MASK 位置應該填的詞是「cat」、「dog」。 這些目標函數(shù)的優(yōu)點之一是,它允許模型學習語言的統(tǒng)計結構,例如常見的詞序列和詞使用模式。這通常有助于模型生成更自然、更流暢的文本,并且是每個語言模型預訓練階段的重要步驟。 然而這些目標函數(shù)也可能導致問題,這主要是因為模型無法區(qū)分重要錯誤和不重要錯誤。一個非常簡單的例子是,如果給模型輸入句子:
它可能會預測 MASK 位置應該填入「began」或「ended」,因為這兩個詞的出現(xiàn)概率都很高。 一般來說,這些訓練策略可能會導致語言模型在一些更復雜的任務中出現(xiàn)不一致,因為一個僅被訓練來預測文本序列中的下一個詞的模型可能不一定會學習其含義的某些更高級表征。因此,該模型很難推廣到需要對語言更深入理解的任務。 研究人員正研究各種方法來解決大型語言模型中的一致性問題。ChatGPT 基于最初的 GPT-3 模型,但為了解決模型的不一致問題,使用了人類反饋來指導學習過程,對其進行了進一步訓練。所使用的具體技術就是前面提到的 RLHF。ChatGPT 是第一個將此技術用于實際場景的模型。 那 ChatGPT 是如何利用人類反饋來解決一致性問題的呢? 從人類反饋中進行強化學習 方法總體上包括三個不同步驟:
步驟 1 只進行一次,而步驟 2 和步驟 3 可以持續(xù)重復進行:在當前最佳策略模型上收集更多的比較數(shù)據(jù),用于訓練新的 RM 模型,然后訓練新的策略。接下來,將對每一步的細節(jié)進行詳述。 步驟 1:監(jiān)督調優(yōu)模型 第一步是收集數(shù)據(jù),以訓練有監(jiān)督的策略模型。
為了創(chuàng)建像 ChatGPT 這樣的通用聊天機器人,開發(fā)人員是在「代碼模型」而不是純文本模型之上進行調優(yōu)。 由于此步驟的數(shù)據(jù)量有限,該過程獲得的 SFT 模型可能會輸出仍然并非用戶關注的文本,并且通常會出現(xiàn)不一致問題。這里的問題是監(jiān)督學習步驟具有高可擴展性成本。 為了克服這個問題,使用的策略是讓人工標注者對 SFT 模型的不同輸出進行排序以創(chuàng)建 RM 模型,而不是讓人工標注者創(chuàng)建一個更大的精選數(shù)據(jù)集。 第二步:訓練回報模型 這一步的目標是直接從數(shù)據(jù)中學習目標函數(shù)。該函數(shù)的目的是為 SFT 模型輸出進行打分,這代表這些輸出對于人類來說可取程度有多大。這強有力地反映了選定的人類標注者的具體偏好以及他們同意遵循的共同準則。最后,這個過程將從數(shù)據(jù)中得到模仿人類偏好的系統(tǒng)。 它的工作原理是:
對于標注者來說,對輸出進行排序比從頭開始打標要容易得多,這一過程可以更有效地擴展。在實踐中,所選擇的 prompt 的數(shù)量大約為 30-40k,并且包括排序輸出的不同組合。 步驟 3:使用 PPO 模型微調 SFT 模型 這一步里強化學習被應用于通過優(yōu)化 RM 模型來調優(yōu) SFT 模型。所使用的特定算法稱為近端策略優(yōu)化(PPO),而調優(yōu)模型稱為近段策略優(yōu)化模型。 什么是 PPO?該算法的主要特點如下:
在這一步中,PPO 模型由 SFT 模型初始化,價值函數(shù)由 RM 模型初始化。該環(huán)境是一個「bandit environment」,它會產生隨機 prompt 并期望對 prompt 做出響應。對于給定的 prompt 和響應,它會產生相應的回報(由 RM 模型決定)。SFT 模型會對每個 token 添加 KL 懲罰因子,以盡量避免 RM 模型的過度優(yōu)化。 性能評估 因為模型是根據(jù)人工標注的輸入進行訓練的,所以評估的核心部分也基于人工輸入,即通過讓標注者對模型輸出的質量評分來進行。為避免訓練階段涉及的標注者的判斷過擬合,測試集使用了來自其它 OpenAI 客戶的 prompt,這些 prompt 未出現(xiàn)在訓練數(shù)據(jù)中。 該模型基于三個標準進行評估:
該模型還針對傳統(tǒng) NLP 任務(如解答問題、閱讀理解和摘要)的零樣本學習的性能進行了評估,開發(fā)人員發(fā)現(xiàn)在其中一些任務上模型的表現(xiàn)比 GPT-3 要差一些,這是一個「一致性稅」( alignment tax) 的例子,其中基于 人類反饋強化學習的一致性程序是以降低某些任務的性能為代價的。 這些數(shù)據(jù)集的性能回歸可以通過稱為預訓練混合的技巧大大減少:在通過梯度下降訓練 PPO 模型期間,通過混合 SFT 模型和 PPO 模型的梯度來計算梯度更新。 方法的缺點 該方法的一個非常明顯的局限性是,在將語言模型與人類意圖保持一致的過程中,用于 fine-tuning 模型的數(shù)據(jù)會受到各種錯綜復雜的主觀因素的影響,主要包括:
ChatGPT 的作者也承認一個明顯的事實,即參與訓練過程的標注人員和研究人員可能并不能完全代表語言模型的所有潛在最終用戶。 除了這一明顯的「內生」限制之外,該方法還有的一些其它缺點和需要解決的問題:
相關閱讀:
參考內容: https://www.assemblyai.com/blog/how-chatgpt-actually-works/?continueFlag=1bafdcd5c034def869fecb4f3bdaed70 --完-- 該文章在 2023/3/27 18:55:49 編輯過 |
關鍵字查詢
相關文章
正在查詢... |