ChatGPT 技術(shù)篇:智能背后的秘密
原創(chuàng) | 文 BFT機器人

核心觀點
ChatGPT 表現(xiàn)驚艷,網(wǎng)站流量一路狂飆式成長。
根據(jù)數(shù)據(jù)統(tǒng)計機構(gòu) Similarweb 的估計,chat.openai.com 網(wǎng)站(即 ChatGPT 官網(wǎng))在2023/1/27-2023/2/3 這一周吸引的每日訪客數(shù)量高達約 2500 萬,在1 月 31 日的流量高峰日,該網(wǎng)站吸引了 2800 萬次訪問。并且在 1/3-2/3 這一個月里,該網(wǎng)站的流量平均每天增長 3.4%,增速驚人。
從 Transformer 到 ChatGPT,有哪些歷史性突破?
ChatGPT 用戶數(shù)高速增長的根本原因,來源于其突破性的表現(xiàn),其中最突出的有兩點體現(xiàn):
ChatGPT 與人類“對齊”了偏好,其應(yīng)答更適應(yīng)人類習(xí)慣,并且能駁回一些反道德的提問,展現(xiàn)出顯著優(yōu)于前代的智能度。
ChatGPT 具備了思維鏈(Chain-of-Thought,CoT)能力,能夠處理一定程度的復(fù)雜思維邏輯。
ChatGPT 在算數(shù)、國際音標(biāo)轉(zhuǎn)寫、單詞解讀、問答、事實性問答、基礎(chǔ)概念映射、多任務(wù)自然語義理解、上下文單詞理解等 8 各指標(biāo)上表現(xiàn)出全面綜合的能力。
量變到質(zhì)變,規(guī)模超過特定閾值后模型性能陡增。
根據(jù)谷歌發(fā)布的論文《Emergent Abilities of Large Language Models》,可以看到多個 NLP 任務(wù)隨著模型規(guī)模擴大的性能變化曲線:前期性能和模型規(guī)模大致呈線性關(guān)系;然而當(dāng)模型規(guī)模大到一定程度時,任務(wù)性能有了明顯的“飛升”。
海量代碼訓(xùn)練,模型習(xí)得代碼背后隱含的邏輯能力。
根據(jù)熵簡科技介紹,“代碼”可以理解為一種具備高度邏輯性的文本語料,不具備強邏輯性的代碼會無法執(zhí)行,而不像普通文本語料那樣有著較高的邏輯自由度。模型從對大量代碼的學(xué)習(xí)過程中,逐漸掌握了隱藏在代碼背后的抽象能力與邏輯能力,進而涌現(xiàn)出我們在 ChatGPT 上感受到的“智能”。
訓(xùn)練過程加入了人類反饋,模型偏好向人類看齊。
通過有人類反饋的加強學(xué)習(xí)(RLHF)訓(xùn)練,人類手動對 AI 給出的回復(fù)進行排名,讓 AI模型理解人類偏好。由于訓(xùn)練過程中加入了人類反饋,有別于前代 GPT-3 單純使用海量數(shù)據(jù)的訓(xùn)練方法,ChatGPT 能夠更好地理解用戶指令,并作出反應(yīng)。
01
從 Transformer 到 ChatGPT,有哪些歷史性突破?
ChatGPT 流量以每日 3.4%的速度快速成長,每日用戶數(shù)已超,每日用戶數(shù)已超 2500 萬。
根據(jù)數(shù)據(jù)統(tǒng)計機構(gòu) Similarweb 的估計,chat.openai.com 網(wǎng)站(即 ChatGPT 官網(wǎng))在 2023/1/27-2023/2/3 這一周吸引的每日訪客數(shù)量高達約 2500 萬,在 1 月 31 日的流量高峰日,該網(wǎng)站吸引了 2800 萬次訪問。并且在 1/3-2/3 這一個月里,該網(wǎng)站的流量平均每天增長3.4%,增速驚人。

ChatGPT 每日點擊訪問量統(tǒng)計
ChatGPT 用戶數(shù)高速增長的根本原因,來源于其突破性的表現(xiàn),其中最突出的有兩點體現(xiàn):
ChatGPT 與人類“對齊”了偏好,其應(yīng)答更適應(yīng)人類習(xí)慣,并且能駁回一些反道德的提問,展現(xiàn)出顯著優(yōu)于前代的智能度。
ChatGPT 模型比以往的人機對話模型(例如 GPT3等)更強大,例如,其敢于質(zhì)疑不正確的前提和假設(shè)、主動承認(rèn)錯誤以及一些無法回答的問題、主動給拒絕不合理的問題、提升了對用戶意圖的理解以及結(jié)果的準(zhǔn)確性。
與之前的 GPT3 不同,相比于此前海量學(xué)習(xí)數(shù)據(jù)進行訓(xùn)練,ChatGPT 中,人對結(jié)果的反饋成為了 AI 學(xué)習(xí)過程中的一部分。初次之外,ChatGPT 甚至?xí)鲃玉g回一些危險提問,例如:如果提問“如何霸凌 John”,上一代的模型 InstructGPT 會給出幾種方法作為解答,而 ChatGPT 給出的答案則是“霸凌是不對的”。

ChatGPT 具備了思維鏈(Chain-of-Thought,CoT)能力,能夠處理一定程度的復(fù)雜思維邏輯 。
對于一些邏輯較為復(fù)雜的問題,直接向大規(guī)模語言模型提問可能會得到不準(zhǔn)確的回答,但是如果以提示(prompt)的方式在輸入中給出有邏輯的解題步驟(即將復(fù)雜問題拆解為多個子問題解決再從中抽取答案)的示例后再提出問題,大模型就能給出正確題解。
有時,甚至不用給示例,在輸入后面接一句“Let’s think step by step”,模型的輸出就是一步一步“思考”后的各個子問題的結(jié)果,再將該輸出拼到輸入后構(gòu)造第二次輸入數(shù)據(jù),大模型就能進一步將上一步的輸出整合,得出正確的復(fù)雜問題的解。

02
ChatGPT 背后的秘密:智能來自何方?
2.1 量變到質(zhì)變,規(guī)模超過特定閾值后模型性能陡增
隨著算力的不斷提升,語言模型已經(jīng)從最初基于概率預(yù)測的模型發(fā)展到基于 Transformer 架構(gòu)的預(yù)訓(xùn)練語言模型,并逐步走向大模型的時代。當(dāng)模型規(guī)模較小時,模型的性能和參數(shù)大致符合比例定律(scaling law),即模型的性能提升和參數(shù)增長基本呈線性關(guān)系。
然而,當(dāng) GPT-3 / ChatGPT 這種千億級別的大規(guī)模模型被提出后,人們發(fā)現(xiàn)其可以打破比例定律,實現(xiàn)模型能力質(zhì)的飛躍。這些能力也被稱為大模型的“涌現(xiàn)能力”(如理解人類指令等等)。
根據(jù)谷歌發(fā)布的論文《Emergent Abilities of Large Language Models》,可以看到多個NLP 任務(wù)隨著模型規(guī)模擴大的性能變化曲線:前期性能和模型規(guī)模大致呈線性關(guān)系;然而當(dāng)模型規(guī)模大到一定程度時,任務(wù)性能有了明顯的“飛升”,例如在算數(shù)、國際音標(biāo)轉(zhuǎn)寫、單詞解讀、問答、事實性問答、基礎(chǔ)概念映射、多任務(wù)自然語義理解、上下文單詞理解等任務(wù)上。因此,當(dāng)前研究通常以百億/千億級別參數(shù)量作為 LLM 的分水嶺。

2.2 海量代碼訓(xùn)練,模型習(xí)得代碼背后隱含的邏輯能力
學(xué)界普遍推測,學(xué)界普遍推測,ChatGPT 的復(fù)雜思維能力(CoT 能力)來自于代碼訓(xùn)練。
根據(jù)熵簡科技介紹,ChatGPT 的背后是 Text-davinci-002 模型,但如果回溯 ChatGPT 的“模型家譜”,Text-davinci-002 模型其實是基于 Code-davinci-002 模型經(jīng)過指令微調(diào)的產(chǎn)物。如果進一步回溯到起點,對于沒有接受過代碼數(shù)據(jù)訓(xùn)練的 GPT-3 模型,它的復(fù)雜推理能力是很弱的。
GPT-3的一個分支對代碼數(shù)據(jù)進行了專項訓(xùn)練,Codex模型中代碼數(shù)據(jù)量約為159G,基于此產(chǎn)生的 Code-davinci-002 模型神奇的具備了思維推理能力。由于這一能力近來才出現(xiàn),學(xué)界對于它是如何產(chǎn)生的尚無定論,但學(xué)界普遍推測:在模型訓(xùn)練的過程中,是否引入“代碼數(shù)據(jù)集”,很有可能是模型是否具備復(fù)雜思維能力的關(guān)鍵變量。
代碼是一種強邏輯性的文字,模型在學(xué)習(xí)代碼的過程中習(xí)得了邏輯能力?!按a”可以理解為一種具備高度邏輯性的文本語料,不具備強邏輯性的代碼會無法執(zhí)行,而不像普通文本語料那樣有著較高的邏輯自由度。模型從對大量代碼的學(xué)習(xí)過程中,逐漸掌握了隱藏在代碼背后的抽象能力與邏輯能力,進而涌現(xiàn)出我們在 ChatGPT 上感受到的“智能”。

2.3 訓(xùn)練過程加入了人類反饋,模型偏好向人類看齊
通過有人類反饋的加強學(xué)習(xí)( 通過有人類反饋的加強學(xué)習(xí)(RLHF )訓(xùn)練,ChatGPT 能夠更好地理解人類偏好,從而給出更符合人類習(xí)慣的回答。
ChatGPT 使用 RLHF 方法訓(xùn)練了一個初始模型:人類 AI 訓(xùn)練員提供對話,他們在對話中扮演雙方——用戶和 AI 助手,AI 訓(xùn)練員可以訪問模型編寫的對話回復(fù),以幫助 AI 調(diào)整回復(fù)內(nèi)容。
為了創(chuàng)建強化學(xué)習(xí)的獎勵模型,該研究需要收集比較數(shù)據(jù),其中包含兩個或多個按質(zhì)量排序的模型回復(fù)。該研究收集了 AI 訓(xùn)練員與聊天機器人的對話,并隨機選擇一條模型編寫的消息,抽取幾個備選回復(fù),讓 AI 訓(xùn)練員對這些回復(fù)進行排名。由于訓(xùn)練過程中加入了人類反饋,有別于前代 GPT-3 單純使用海量數(shù)據(jù)的訓(xùn)練方法,ChatGPT 能夠更好地理解用戶指令,并作出反應(yīng)。

RLHF 具體訓(xùn)練步驟如下:
第一步:首先從大量的包含人類真實意圖的指令集合中采樣指令作為輸入數(shù)據(jù),并聘請專職標(biāo)注員標(biāo)注這些指令的輸出,這部分相對而言是一個高質(zhì)量的小數(shù)據(jù)集。數(shù)據(jù)收集完成后,使用 GPT-3.5 在該數(shù)據(jù)集上進行有監(jiān)督的微調(diào)(supervised fine-tuning)。
第二步:得到上一步微調(diào)好的 GPT-3.5 之后,再次從指令集合中采樣指令作為輸入數(shù)據(jù),從 GPT-3.5 得到多個不同的結(jié)果,并聘請專職標(biāo)注員標(biāo)注這些輸出的好壞順序,例如輸出 D>輸出 C>輸出 A>輸出 B。由于只需要標(biāo)注模型不同輸出的好壞,這部分標(biāo)注的成本會降低很多,因此數(shù)據(jù)規(guī)模也會較大。得到這些人工標(biāo)注的輸出順序之后,可以訓(xùn)練得到一個打分(reward)模型。
第三步,獲得打分模型之后,接著從指令集合中采樣一些新的指令作為輸入數(shù)據(jù),并結(jié)合打分模型,使用 PPO(一種強化學(xué)習(xí)算法)方式來訓(xùn)練得到最終的 ChatGPT。
更多精彩內(nèi)容請關(guān)注公眾號:BFT機器
本文為原創(chuàng)文章,版權(quán)歸BFT機器人所有,如需轉(zhuǎn)載請與我們聯(lián)系。若您對該文章內(nèi)容有任何疑問,請與我們聯(lián)系,將及時回應(yīng)。