大模型應用性能的提升不僅在于其預訓練,而微調的作用也非常顯著。對于多數從事大模型應用領域的團隊而言,微調是一個核心的工作之一,為專門任務完善大模型并確保其產出符合我們的預期。
1. 關于微調
微調涉及調整預訓練的LLM ,以更有效地執行特定的功能,提高其在不同應用程序中的效用。盡管LLM通過預訓練獲得了廣泛的知識基礎,仍需要定制以在特定領域或任務中表現出色。例如,對一般數據集上訓練的大模型進行微調,以理解醫學語言或法律術語的細微差別,使其在這些環境中更相關、更有效。
在眾多的微調技術中, RLHF 利用復雜的反饋回路,結合人工評估和獎勵模型來指導人工智能的學習過程。而DPO 采用了更直接的方法,直接運用人的偏好來影響模型的調整。這兩種策略的目的都是提高模型的性能,確保產出符合用戶的需要,但它們的運作原則和方法各不相同。
2. RLHF
關于RLHF 的基本原理可以參考《解讀ChatGPT中的RLHF》一文,這里做一下回顧。首先澄清的是,強化學習是一種用于微調人工智能模型的技術,目的是根據人類的反饋來提高模型的性能。而RLHF 的核心組成部分包括被微調的語言模型,評估語言模型輸出的獎勵模型,以及通知獎勵模型的人類反饋。這個過程確保語言模型產生的輸出更符合人的偏好。
RLHF 以強化學習為基礎,模型從動作中學習,而不是從靜態數據集中學習。不像監督式學習那樣,模型從標記的數據或非監督式學習中學習,模型識別數據中的模式,強化學習模型從他們行為的后果中學習,受到獎勵的指導。在 RLHF 中,“回報”是由人的反饋決定的,這意味著模型成功地產生了理想的輸出。
2.1 大模型的自我監督預訓練
從收集一個龐大而多樣化的數據集開始,通常包括廣泛的主題、語言和寫作風格。這個數據集作為語言模型的初始訓練場。
利用這個數據集,模型進行自我監督學習。在這里,模型被訓練來預測給定其他部分的文本部分。例如,它可以根據前面的單詞預測句子中的下一個單詞。這個階段幫助模型掌握語言的基礎知識,包括詞法、語法和一定程度的上下文理解。成果是一個基礎模型,可以生成文本并理解某些上下文,但缺乏針對特定任務的專門化微調。
2.2 基于人工反饋對模型輸出排名
一旦預訓練完成,模型開始生成文本輸出,然后由人進行評估。這可能包括完成句子、回答問題或進行對話等任務。人類評估者使用評分系統對每個輸出進行評分。他們考慮的因素包括文本的相關性、連貫性或吸引力。這種反饋至關重要,因為它將模型引入到人類的偏好和標準中。
注意確保評價人員的多樣性并減少反饋中的偏見。這有助于為模型的輸出創建一個平衡和公平的評估標準。
2.3 訓練獎勵模型來模仿人類評分
人類評估者的得分和反饋被用來訓練一個單獨的模型,稱為獎勵模型。該模型旨在理解和預測人類評估者對語言模型生成的任何文本的評分。這個步驟可能涉及反饋收集和獎勵模型調整的幾個迭代,以準確捕獲人的偏好。
2.4 使用來自獎勵模型的反饋來微調語言模型
從獎勵模型中獲得的見解被用來微調語言模型。這包括調整模型的參數,以增加生成與獎勵行為一致的文本的可能性。
采用近似政策優化(PPO)等技術有條不紊地調整模型。該模型被鼓勵去“探索”生成文本的不同方式,但是當它生成的輸出可能從獎勵模型中獲得更高的分數時,它會得到更多的“獎勵”。這個微調過程是迭代的,可以通過新的人工反饋和獎勵模型調整來重復,不斷改進語言模型與人類偏好的一致性。
RLHF 的迭代過程允許不斷改進語言模型的輸出。通過反饋和調整的反復循環,該模式完善了生成文本的方法,更好地生成符合人類質量和相關性標準的產出。
3. DPO
DPO 是基于人類直接反饋可以有效地指導人工智能行為發展的原理而提出的。通過直接利用人的偏好作為訓練信號,DPO 簡化了校準過程,將其框定為一個直接學習任務。這種方法被證明是高效和有效的,提供了優于傳統的強化學習方法。
簡而言之,直接偏好優化(DPO)是一種通過將人的偏好直接納入訓練過程來調整大型語言模型(LLM)的簡化方法。這種技術簡化了人工智能系統的適應性,以更好地滿足用戶需求,繞過了與構建和利用獎勵模型相關的復雜性。
3.1 模型的自我監督預訓練
從自我監督學習開始,接觸到大量的文本數據。這可以包括從書籍和文章到網站的所有內容,包括各種主題、風格和上下文。模型學習預測文本序列,基本上填充空白或根據前面的上下文預測后續的單詞。這種方法有助于模型掌握語言結構、語法和語義的基本原理,而不需要明確的面向任務的指令。
建立一個基本語言模型,能夠理解和生成連貫的文本,可以根據具體的人類偏好進一步專門化。
3.2 收集問答對并獲取人工評分
模型生成一對文本輸出,這些輸出可能在語氣、風格或內容焦點方面有所不同。然后,這些對以一種比較格式呈現給人類評估者,詢問兩者中哪一個更符合某些標準,如清晰度、相關性或參與度。
評價者提供他們的偏好,這些偏好被記錄為直接反饋。這一步對于捕捉人類的細微判斷是至關重要的,這些判斷可能不會從純粹的定量數據中看出來。評價者提供他們的偏好,這些偏好被記錄為直接反饋。這一步對于捕捉人類的細微判斷是至關重要的,這些判斷可能不會從純粹的定量數據中看出來。
3.3 使用基于交叉熵的損失函數訓練模型
使用成對的例子和相應的人類偏好,使用二元交叉熵損失函數對模型進行微調。這種統計方法將模型的輸出與首選結果進行比較,量化模型的預測與所選擇的首選結果的匹配程度。
調整模型的參數,以最小化損失函數,有效地使優先輸出更有可能在未來幾代。這個過程迭代地改進了模型與人類偏好的一致性,提高了產生與用戶產生共鳴的文本的能力。
3.4 約束模型以保持其生成性
盡管模型正在進行微調,以便與人類的偏好緊密一致,但確保模型不會喪失其生殖多樣性是至關重要的。這個過程包括仔細調整模型,以納入反饋,而不是過于適合具體的例子或限制其創造能力。技術和保障措施已經到位,以確保模式仍然能夠產生廣泛的反應。這包括定期評估模型的輸出多樣性和實施機制,以防止其生成能力收窄。
最終模型保留了其產生多樣化和創新文本的能力,同時顯著更符合人的偏好,表明增強了以有意義的方式吸引用戶的能力。
DPO 將語言模型的調整視為基于人類反饋的直接最佳化問題,從而消除了單獨獎勵模型的需要。這種簡化減少了模型訓練通常涉及的復雜性層次,使得過程更加有效,并直接側重于根據用戶偏好調整人工智能輸出。
4. RLHF 與 DPO的對比分析
RLHF能夠處理多種反饋,這使得 RLHF 在需要詳細定制的任務中占據優勢。這使得它非常適合需要深刻理解和細微調整的項目。它的復雜性和對獎勵模型的需求,這使得它在計算資源和設置方面更加苛刻。此外,反饋的質量和多樣性可以顯著影響微調工作的效果。
RLHF 擅長于需要定制輸出的場景,如開發聊天機器人或需要深入理解上下文的系統。它處理復雜反饋的能力使它在這些應用中非常有效。
DPO 的流程更直接,這意味著調整更快,對計算資源的需求更少。它直接集成了人的偏好,從而與用戶的期望保持緊密一致。DPO 的主要問題是,對于需要更多細微差別反饋的任務,它可能做得不夠好,因為它依賴于二進制選擇。此外,收集大量的人工注釋數據可能是具有挑戰性的。
當您需要快速人工智能模型調整并且計算資源有限時,DPO 是您的選擇。它特別適用于調整文本中的情緒或歸結為“是”或“否”選項的決策等任務,在這些任務中,可以充分利用其直接的優化方法。
RLHF 與 DPO的特性對比如下:
指標特性 | RHLF | DPO |
數據需求 | 需要不同的反饋,包括數字評分和文本注釋,需要綜合的反饋組合。 | 通常依賴于人工評分的樣本對,簡化了偏好學習過程,減少了復雜的輸入。 |
訓練特點 | 獎勵模型的迭代引入,多步驟且計算密集型。 | 通過直接使用人的偏好,更加直觀并提升計算效率,往往導致更快的收斂。 |
性能表現 | 能夠提供適應性和微妙的影響,可能導致在復雜情況下的優越性能。 | 有效地快速調整模型輸出與用戶偏好,但可能缺乏多種反饋的靈活性。 |
策略優勢 | 靈活處理不同的反饋類型; 適合于詳細的輸出形成和復雜的任務。 | 簡化和快速的微調過程; 以較少的計算資源直接結合人的偏好。 |
局限約束 | 復雜的設置和較高的計算成本; 反饋的質量和多樣性會影響結果。 | 除了二分選擇之外,可能還會遇到復雜的反饋問題; 收集大量帶注釋的數據是一項挑戰。 |
典型場景 | 最適合需要個性化或定制輸出的任務,如會話代理或上下文豐富的內容生成。 | 非常適合需要快速調整的項目,并與人的偏好密切結合,如情緒分析或二元決策系統。 |
5. 策略選擇
RLHF 是一個詳細的,多步驟的過程,通過使用獎勵模型提供深度定制的潛力。它特別適合于微妙的反饋至關重要的復雜任務。
DPO 通過直接應用人的偏好簡化了微調過程,為模型優化提供了更快、更少資源密集的路徑。
RLHF 和 DPO 之間的策略選擇應遵循以下幾個因素:
- 任務復雜性: 如果您的項目涉及到復雜的交互或者需要理解細微的人類反饋,RLHF 可能是更好的選擇。對于更直接的任務或需要快速調整時,DPO 可能更有效。
- 資源考量: 考慮計算資源和人工注釋器的可用性。DPO 通常在計算能力方面要求較低,在收集必要數據方面可以更直接。
- 期望控制水平: RLHF 提供了更多的細粒度控制微調過程,而 DPO 提供了一個直接的路徑,以調整模型輸出與用戶的喜好。評估在微調過程中需要多少控制和精度。
6. 一句話小結
通過強化學習,利用人類反饋(RLHF)和直接偏好優化(DPO)微調大模型,能夠保證相對準確地產生一些關鍵的見解,使人工智能在適應性、高效率和符合人類價值觀方面發揮重要作用。
【參考資料】
"Comparing the RLHF and DPO", https://arxiv.org/pdf/2312.16682.pdf