目錄
從預測文字到遵循指令
安全遵循指令
模型微調
要點總結
對話智能體的進一步工作思考
首頁 科技週邊 人工智慧 這些技術,ChatGPT和它的潛在競爭者們都在使用

這些技術,ChatGPT和它的潛在競爭者們都在使用

Apr 12, 2023 pm 01:13 PM
ai 科技

隨著 ChatGPT 的出現以及隨之而來的廣泛討論,RLHF、SFT、IFT、CoT 等晦澀的縮略詞出現在公眾面前,這都歸功於 ChatGPT 的成功。這些晦澀的縮寫是什麼?為什麼它們如此重要?本文作者查閱了所有關於這些主題的重要論文,並進行了分類總結。

ChatGPT 並不是第一個基於語言模型(LM)的對話智能體,事實上,許多機構在OpenAI 之前發布過語言模型對話智能體,包括Meta BlenderBot、Google LaMDA、DeepMind 的Sparrow 和Anthropic Assistant。一些機構也宣佈建立開源聊天機器人的計劃,並公開了路線圖(如 LAION 的 Open-Assistant)。肯定還有其它機構在做同樣的工作,只是沒有宣布。

下表根據上面提到的 AI 聊天機器人是否可公開存取、訓練資料、模型架構和評估的詳細信息,對它們進行了比較。 ChatGPT 沒有相關數據,這裡使用的是 InstructGPT 的資料,它是 OpenAI 的一個微調模型,被認為是 ChatGPT 的基礎。

這些技術,ChatGPT和它的潛在競爭者們都在使用

儘管在訓練資料、模型和微調方面存在許多差異,但這些聊天機器人也存在一些共通點——指令遵循(instruction following),即根據使用者的指令,給予回應。例如讓 ChatGPT 寫一首關於微調的詩。

這些技術,ChatGPT和它的潛在競爭者們都在使用

從預測文字到遵循指令

通常而言,基礎語言建模的目標不足以讓模型有效率地遵循使用者的指示。模型創建者也使用指令微調(Instruction Fine-Tuning,IFT),它可以在多樣化任務上對基本模型進行微調,也能應用在情緒分析、文字分類、摘要等經典 NLP 任務。

IFT 主要由三個部分組成:指令、輸入和輸出。輸入是可選的,有些任務只需要指令,如上面的 ChatGPT 範例。輸入和輸出構成實例(instance)。給定的指令可以有多個輸入和輸出。相關範例如下([Wang et al., ‘22])。

這些技術,ChatGPT和它的潛在競爭者們都在使用

IFT 的資料通常使用人類的指令和語言模型 bootstrapped 的指令集合。對於 bootstraping,LM 會在零樣本的情況下根據 prompt,產生新的指令、輸入和輸出。在每一輪中,模型都會得到從人類編寫和生成模型中選擇的樣本的 prompt。人類和模型貢獻資料集的情況可以用頻譜表示,如下圖所示。

這些技術,ChatGPT和它的潛在競爭者們都在使用

一種是純模型產生的IFT 資料集如Unnatural Instructions,另一種是集社群努力、手動創建的指令如Super natural Instructions。位於這兩者之間,選用高品質種子資料集然後進行 bootstrap 如 Self-instruct。為IFT 收集資料集的另一種方法是將現有高品質眾包NLP 資料集用於各種任務(包括prompting),並使用統一的模式或不同的範本將這些資料集作為指令,相關工作包括T0、Natural instructions 資料集、FLAN LM 和OPT-IML。

安全遵循指令

LM 使用微調後的指令,可能不會總是產生有用安全性的回應。這種行為的例子包括無效回應(托詞),總是給出諸如“對不起,我不明白”之類的無效回答,或者對用戶關於敏感話題的輸入做出不安全的回應。

為了解決這種問題,模型開發人員使用監督式微調(Supervised Fine-tuning, SFT),在高品質的人類標記資料上微調基礎語言模型,以實現有效和安全的回應。

SFT 和 IFT 緊密相連。指令調優可以看成是監督式微調的子集。在最近的文獻中,SFT 階段通常用於安全主題,而不是在 IFT 之後進行的指令特定主題。未來這種分類和描述會有更清晰的用例和方法。

這些技術,ChatGPT和它的潛在競爭者們都在使用

Google的 LaMDA 也是根據一組規則對帶有安全註解的對話資料集微調。這些規則通常是由模型創建者預先定義和製定的,包含一系列廣泛的主題,如有害、歧視和錯誤訊息。

模型微調

另一方面,OpenAI 的InstructGPT、DeepMind 的Sparrow 和Anthropic 的ConstitutionalAI 皆使用從人類回饋中強化學習(reinforcement learning from human feedback, RLHF)的技術。在RLHF 中,模型反應基於人類回饋(如選擇一個更好的答案)進行排序,然後用這些註釋的反應訓練模型,以返回RL 優化器的scalar 獎勵,最後透過強化學習訓練對話智能體來模擬偏好模型。

思考鏈(Chain-of-thought, CoT)是指令示範的特殊情況,透過從對話智能體中引出逐步推理產生輸出。用 CoT 微調的模型使用帶有逐步推理的人類註釋的指令資料集。如下範例所示,橘色標記代表指令,粉紅色標記代表輸入和輸出,藍色標記代表 CoT 推理。

這些技術,ChatGPT和它的潛在競爭者們都在使用

用 CoT 來微調的模型在涉及常識、算術和符號推理的任務上表現得更好。 CoT 微調也顯示出對實現無害性非常有效(有時比 RLHF 做得更好),而且模型不會迴避並產生「對不起,我無法回答這個問題」等回應。

這些技術,ChatGPT和它的潛在競爭者們都在使用

要點總結

本文要點總結如下:

1、 與預訓練資料相比,只需要非常小的部分資料來微調指令。

2、 監督式微調使用手動標註使模型輸出更安全且更有幫助。

3、 CoT 微調提高模型在逐步思考任務上的效能,並減少了它們在敏感話題上的無效回應或迴避不答。

對話智能體的進一步工作思考

最後,作者對未來對話智能體的發展給了自己的一些思考。

1、 RL 在從人類回饋中學習有多重要?可以透過 IFT 或 SFT 中的高品質資料訓練獲得與 RLHF 一樣的效能嗎?

2、 與在 LaMDA 中使用 SFT 相比,在 Sparrow 中使用 SFT RLHF 的安全性如何?

3、 IFT、SFT、CoT 和 RLHF,需要怎樣的預訓練? tradeoff 是什麼?應該使用的最好的基礎模型是什麼?

4、 文中介紹的許多模型都是經過精心設計,工程師們專門收集導致失敗的模式,並根據已處理的問題改善未來的訓練(prompts 和方法)。要如何有系統地記錄這些方法的效果並重現它們?

以上是這些技術,ChatGPT和它的潛在競爭者們都在使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

centos關機命令行 centos關機命令行 Apr 14, 2025 pm 09:12 PM

CentOS 關機命令為 shutdown,語法為 shutdown [選項] 時間 [信息]。選項包括:-h 立即停止系統;-P 關機後關電源;-r 重新啟動;-t 等待時間。時間可指定為立即 (now)、分鐘數 ( minutes) 或特定時間 (hh:mm)。可添加信息在系統消息中顯示。

如何檢查CentOS HDFS配置 如何檢查CentOS HDFS配置 Apr 14, 2025 pm 07:21 PM

檢查CentOS系統中HDFS配置的完整指南本文將指導您如何有效地檢查CentOS系統上HDFS的配置和運行狀態。以下步驟將幫助您全面了解HDFS的設置和運行情況。驗證Hadoop環境變量:首先,確認Hadoop環境變量已正確設置。在終端執行以下命令,驗證Hadoop是否已正確安裝並配置:hadoopversion檢查HDFS配置文件:HDFS的核心配置文件位於/etc/hadoop/conf/目錄下,其中core-site.xml和hdfs-site.xml至關重要。使用

CentOS上GitLab的備份方法有哪些 CentOS上GitLab的備份方法有哪些 Apr 14, 2025 pm 05:33 PM

CentOS系統下GitLab的備份與恢復策略為了保障數據安全和可恢復性,CentOS上的GitLab提供了多種備份方法。本文將詳細介紹幾種常見的備份方法、配置參數以及恢復流程,幫助您建立完善的GitLab備份與恢復策略。一、手動備份利用gitlab-rakegitlab:backup:create命令即可執行手動備份。此命令會備份GitLab倉庫、數據庫、用戶、用戶組、密鑰和權限等關鍵信息。默認備份文件存儲於/var/opt/gitlab/backups目錄,您可通過修改/etc/gitlab

CentOS上PyTorch的GPU支持情況如何 CentOS上PyTorch的GPU支持情況如何 Apr 14, 2025 pm 06:48 PM

在CentOS系統上啟用PyTorchGPU加速,需要安裝CUDA、cuDNN以及PyTorch的GPU版本。以下步驟將引導您完成這一過程:CUDA和cuDNN安裝確定CUDA版本兼容性:使用nvidia-smi命令查看您的NVIDIA顯卡支持的CUDA版本。例如,您的MX450顯卡可能支持CUDA11.1或更高版本。下載並安裝CUDAToolkit:訪問NVIDIACUDAToolkit官網,根據您顯卡支持的最高CUDA版本下載並安裝相應的版本。安裝cuDNN庫:前

docker原理詳解 docker原理詳解 Apr 14, 2025 pm 11:57 PM

Docker利用Linux內核特性,提供高效、隔離的應用運行環境。其工作原理如下:1. 鏡像作為只讀模板,包含運行應用所需的一切;2. 聯合文件系統(UnionFS)層疊多個文件系統,只存儲差異部分,節省空間並加快速度;3. 守護進程管理鏡像和容器,客戶端用於交互;4. Namespaces和cgroups實現容器隔離和資源限制;5. 多種網絡模式支持容器互聯。理解這些核心概念,才能更好地利用Docker。

centos安裝mysql centos安裝mysql Apr 14, 2025 pm 08:09 PM

在 CentOS 上安裝 MySQL 涉及以下步驟:添加合適的 MySQL yum 源。執行 yum install mysql-server 命令以安裝 MySQL 服務器。使用 mysql_secure_installation 命令進行安全設置,例如設置 root 用戶密碼。根據需要自定義 MySQL 配置文件。調整 MySQL 參數和優化數據庫以提升性能。

CentOS下GitLab的日誌如何查看 CentOS下GitLab的日誌如何查看 Apr 14, 2025 pm 06:18 PM

CentOS系統下查看GitLab日誌的完整指南本文將指導您如何查看CentOS系統中GitLab的各種日誌,包括主要日誌、異常日誌以及其他相關日誌。請注意,日誌文件路徑可能因GitLab版本和安裝方式而異,若以下路徑不存在,請檢查GitLab安裝目錄及配置文件。一、查看GitLab主要日誌使用以下命令查看GitLabRails應用程序的主要日誌文件:命令:sudocat/var/log/gitlab/gitlab-rails/production.log此命令會顯示produc

CentOS上PyTorch的分佈式訓練如何操作 CentOS上PyTorch的分佈式訓練如何操作 Apr 14, 2025 pm 06:36 PM

在CentOS系統上進行PyTorch分佈式訓練,需要按照以下步驟操作:PyTorch安裝:前提是CentOS系統已安裝Python和pip。根據您的CUDA版本,從PyTorch官網獲取合適的安裝命令。對於僅需CPU的訓練,可以使用以下命令:pipinstalltorchtorchvisiontorchaudio如需GPU支持,請確保已安裝對應版本的CUDA和cuDNN,並使用相應的PyTorch版本進行安裝。分佈式環境配置:分佈式訓練通常需要多台機器或單機多GPU。所

See all articles