Chat GPT - 用RLHF做Fine Tuning

閱讀時間約 3 分鐘

回顧ChatGPT回答不是你要的怎麼辦?這篇文章,Chat GPT回答的結果常常不如人意,因此有個Facebook提出的技術,叫做RAG,它是提升Chat GPT回答品質的方式之一,詳細實作步驟可以參照自己做免錢Chat GPT吧

這次我們來換個方法,今天要介紹Reinforcement Learning from Human Feedback (RLHF)

  • 背景

大型語言模型 (LLM)訓練過程中,受到網路提供的資料品質而有影響,此外LLM訓練過程中用到的監控指標BLEU、ROUGE也無法闡述人類對於語言的偏好,這些種種都又發了一種想法:「直接利用人類的喜好、價值觀等等因素來對一段話評分」,這樣的評分資料將有助於LLM的學習。


  • 圖示
raw-image

圖片出處:https://openai.com/index/chatgpt


  • 步驟說明

步驟一:訓練Supervised Policy

  • 網路上蒐集各種對話紀錄,因此這裡有非常多的Input Pair與Output Pair
  • 標註者挑選期望的Output Pair,因此有Input Pair與期望的Output Pair
  • 有Input Pair與其對應的期望Output Pair,即可用監督式學習進行訓練

步驟二:訓練Reward Model

  • Input Pair匯入其它語言模型,產生諸多Output Pair
  • 標註者對每一個Input Pair所對應的諸多Output Pair進行評分
  • Input Pair & Output Pair當作輸入而評分作為輸出,即可訓練Reward Model
raw-image


步驟三:透過Reward Model精進Supervised Policy

  • 網路上蒐集各種對話紀錄,因此這裡有非常多的Input Pair與Output Pair
  • 以步驟一的結果 - Supervised Policy當作步驟三的起始,並以Input Pair當作輸入 (計為I),匯入Supervised Policy得到輸出語言 (計為O)
  • 輸出語言(計為O)連同I一起匯入Reward Model得到語言的評分 (計為R)
  • 至次我們已經收集Reinforcement Learning的關鍵要素,分別為I、O、R,因此就能以PPO演算法進行Supervised Policy的品質提升
raw-image



對於Reinforcement Learning中的Objection Function有必要於這裡特別說明,首先參照圖示:

raw-image

注意事項:

  1. 我現在專注要調整的模型為Tuned Language Model,而原先的模型為Initial Language Model,但我又希望兩者之間不要差異太多,於是我用KL Divergence來做約束,而且將PPO Policy置於前位,而Base Policy置於後位,亦即將PPO Policy當作目前真實的機率分佈,而Base Policy作為近似的機率分佈,這部分需要了解Information Theory才可以
  2. 上圖是以Gradient Ascent為例子,所以一部分的元素是Reward,另一部分是象徵距離的KL Divergence,那因為我希望距離最小化,所以可以看到在KL Divergence那邊會多加一個負號



156會員
393內容數
這裡將提供: AI、Machine Learning、Deep Learning、Reinforcement Learning、Probabilistic Graphical Model的讀書筆記與演算法介紹,一起在未來AI的世界擁抱AI技術,不BI。
留言0
查看全部
發表第一個留言支持創作者!
Learn AI 不 BI 的其他內容
當Chat GPT回答的東西不是你想要的,怎麼辦呢? 我們提供想法的思路於:ChatGPT回答不是你要的怎麼辦? 我想自己動手改善,但是我沒有GPU這項資源怎麼辦? 我們提供免費使用方式於:使用Meta釋出的模型,實作Chat GPT - Part 0 有了操作環境,但是我不知道怎麼
到目前為止,我們已經完成RAG技術的實作,在上一篇文章使用Meta釋出的模型,實作Chat GPT - Part 5中,可以看到加入RAG之後,可以讓我的大型語言模型回答更為精確。 現在我們要把它用一個畫面做呈現,而不是以程式碼來給大家看,就類似Chat GPT這樣,背後有複雜的程式運行,但是眾人
延續使用Meta釋出的模型,實作Chat GPT - Part 4,我們現在遇到一個問題:語言模型回答的資訊不是我想要的。 於是我參照ChatGPT回答不是你要的怎麼辦?,想使用低成本的技術:RAG,來改善這問題。 以下開始實作,首先引入一個重量級工具包,它叫做LangChain,這是做語言模型
在使用Meta釋出的模型,實作Chat GPT - Part 3中我們已經建立好大型語言模型遇到哪些「字串」要停止輸出的列表,現在我們將它製作成一個物件,對應程式如下: from transformers import StoppingCriteria, StoppingCriteriaList
延續使用Meta釋出的模型,實作Chat GPT - Part 2 我們已經確定可以進入HuggingFace之後,就要來載入模型,其對應程式為: Model_Config = transformers.AutoConfig.from_pretrained( Mode
背景 各位ChatGPT使用者是否常常發生以下狀況:ChatGPT跟你雞同鴨講。 原因就出在ChatGPT當初在訓練時,在你所處的專業Domain並沒有足夠的訓練資料。 針對這種情況要怎麼辦呢? 今天將介紹幾種分法來解決,並分析各種方法的優劣。 方法羅列 提示工程 (Prompt E
當Chat GPT回答的東西不是你想要的,怎麼辦呢? 我們提供想法的思路於:ChatGPT回答不是你要的怎麼辦? 我想自己動手改善,但是我沒有GPU這項資源怎麼辦? 我們提供免費使用方式於:使用Meta釋出的模型,實作Chat GPT - Part 0 有了操作環境,但是我不知道怎麼
到目前為止,我們已經完成RAG技術的實作,在上一篇文章使用Meta釋出的模型,實作Chat GPT - Part 5中,可以看到加入RAG之後,可以讓我的大型語言模型回答更為精確。 現在我們要把它用一個畫面做呈現,而不是以程式碼來給大家看,就類似Chat GPT這樣,背後有複雜的程式運行,但是眾人
延續使用Meta釋出的模型,實作Chat GPT - Part 4,我們現在遇到一個問題:語言模型回答的資訊不是我想要的。 於是我參照ChatGPT回答不是你要的怎麼辦?,想使用低成本的技術:RAG,來改善這問題。 以下開始實作,首先引入一個重量級工具包,它叫做LangChain,這是做語言模型
在使用Meta釋出的模型,實作Chat GPT - Part 3中我們已經建立好大型語言模型遇到哪些「字串」要停止輸出的列表,現在我們將它製作成一個物件,對應程式如下: from transformers import StoppingCriteria, StoppingCriteriaList
延續使用Meta釋出的模型,實作Chat GPT - Part 2 我們已經確定可以進入HuggingFace之後,就要來載入模型,其對應程式為: Model_Config = transformers.AutoConfig.from_pretrained( Mode
背景 各位ChatGPT使用者是否常常發生以下狀況:ChatGPT跟你雞同鴨講。 原因就出在ChatGPT當初在訓練時,在你所處的專業Domain並沒有足夠的訓練資料。 針對這種情況要怎麼辦呢? 今天將介紹幾種分法來解決,並分析各種方法的優劣。 方法羅列 提示工程 (Prompt E
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習視訊會議情境英語會話。
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習求職面試情境英語會話。
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習海關情境英語會話。
Thumbnail
這篇文章探討了情緒勒索的定義、影響及如何應對,以及金錢在情緒索中扮演的角色。情緒勒索是一種心理暴力,它通常發生在親密關係中,例如夫妻、父和子女之間。情緒勒索者會利用他們對受害者的情感依賴,來控制和操縱他們的行為。本文提供了應對情緒勒索的方法,包括學會設定健康的邊界、拒絕情緒勒索者的要求,以及學會自我
Thumbnail
本文探討了漫畫《鋼之鍊金術師》中的等價交換概念以及在現實生活中實現等價交換所面臨的困境。文章提到,在漫畫中,等價交換是一個非常重要的概念,人們必須付出相等的代價才能改變物質。然而,在現實生活中,人們的社會地位、財富和權力等因素會影響等價交換的實現。文章強調,真正的等價交換需要追求公平、正義和互惠主義
Thumbnail
這段代碼會創建一個黑色正方形,其中包含一個螢光綠色邊條和一個顯示 "Line" 文字的正方形,邊條會逆時針旋轉。使用CSS中的position和transform屬性可以將正方形放置在畫面中央。使用animation屬性可以實現旋轉動畫。
Thumbnail
今天,我想要分享一個更為完整的攻略,每次需要花費50分鐘,能夠有效地強化聽、說、讀、寫的能力。
Thumbnail
今天文章目的很簡單,就是要其他的題目考倒Chat GPT!證明人類還沒有輸!!不過我知道正常考Chat GPT肯定是不行的,人類根本不是對手,這次就要來玩陰的,用六個題目考倒Chat GPT!!進來看看這場Chat GPT跟人類最終之戰!!
Thumbnail
首先可以這樣寫告訴chatgpt你希望他表現得像個linux terminal 不用寫解釋,只要回覆linux terminal應該回復的東西即可
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習視訊會議情境英語會話。
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習求職面試情境英語會話。
Thumbnail
提供 AI 下指令或提問題的提示(Prompts)範例及介紹相關外掛工具或擴充功能,還有實用的英文句型,讓你跟 ChatGPT 沉浸式練習海關情境英語會話。
Thumbnail
這篇文章探討了情緒勒索的定義、影響及如何應對,以及金錢在情緒索中扮演的角色。情緒勒索是一種心理暴力,它通常發生在親密關係中,例如夫妻、父和子女之間。情緒勒索者會利用他們對受害者的情感依賴,來控制和操縱他們的行為。本文提供了應對情緒勒索的方法,包括學會設定健康的邊界、拒絕情緒勒索者的要求,以及學會自我
Thumbnail
本文探討了漫畫《鋼之鍊金術師》中的等價交換概念以及在現實生活中實現等價交換所面臨的困境。文章提到,在漫畫中,等價交換是一個非常重要的概念,人們必須付出相等的代價才能改變物質。然而,在現實生活中,人們的社會地位、財富和權力等因素會影響等價交換的實現。文章強調,真正的等價交換需要追求公平、正義和互惠主義
Thumbnail
這段代碼會創建一個黑色正方形,其中包含一個螢光綠色邊條和一個顯示 "Line" 文字的正方形,邊條會逆時針旋轉。使用CSS中的position和transform屬性可以將正方形放置在畫面中央。使用animation屬性可以實現旋轉動畫。
Thumbnail
今天,我想要分享一個更為完整的攻略,每次需要花費50分鐘,能夠有效地強化聽、說、讀、寫的能力。
Thumbnail
今天文章目的很簡單,就是要其他的題目考倒Chat GPT!證明人類還沒有輸!!不過我知道正常考Chat GPT肯定是不行的,人類根本不是對手,這次就要來玩陰的,用六個題目考倒Chat GPT!!進來看看這場Chat GPT跟人類最終之戰!!
Thumbnail
首先可以這樣寫告訴chatgpt你希望他表現得像個linux terminal 不用寫解釋,只要回覆linux terminal應該回復的東西即可