同一個(gè)問題,換兩種問法,你能觀察到模型如何決定該給你什么。它拋出一句干練的答復(fù),或者慢條斯理地展開。聽起來它可能胸有成竹,也可能吞吞吐吐。在訓(xùn)練中的某個(gè)環(huán)節(jié),模型已經(jīng)學(xué)會(huì)了你更偏愛哪一種版本——即使這兩個(gè)答案本身都正確。
這指向一個(gè)更棘手的難題:當(dāng)“幫得上忙”這個(gè)要求隨著每一次請求而變化時(shí),該怎么教會(huì)一個(gè)模型?
![]()
面對快捷的事實(shí)查詢,幫得上忙意味著簡練。面對調(diào)試問題,幫得上忙意味著詳盡。面對醫(yī)療擔(dān)憂,幫得上忙意味著謹(jǐn)慎同時(shí)保持清晰。每一種場景都需要一個(gè)不同的方向,背后是重重取舍。
模型學(xué)會(huì)了在這些取舍中拿捏分寸,這來自于成千上萬次的人類對比選擇。這種從比較中學(xué)習(xí)、而非從固定答案中學(xué)習(xí)的思路,出現(xiàn)在你日常使用的每一個(gè)熱門模型背后。
這篇內(nèi)容,我們就來看看這種學(xué)習(xí)究竟是怎么發(fā)生的,先講清楚為什么光靠指令跟隨還不夠,再走進(jìn)教模型學(xué)會(huì)偏好的兩條主流路線:RLHF 和 DPO。
一個(gè)能幫上忙的模型,通常需要經(jīng)過三個(gè)階段。
第一階段是預(yù)訓(xùn)練。模型吞下巨量文本,學(xué)習(xí)預(yù)測下一個(gè)詞。也就是說,它建起了對語言運(yùn)行方式的寬泛感知,并順便吸收了世界知識(shí)。這一階段得到的是原始能力,但它依然缺少方向感。因?yàn)轭A(yù)測下一個(gè)詞,和回答你的問題,是兩個(gè)不同的目標(biāo)。
第二階段是有監(jiān)督微調(diào),也就是 SFT。我們把幾千組示例展示給模型看,每組都是一條指令搭配一個(gè)優(yōu)質(zhì)響應(yīng),然后訓(xùn)練模型去模仿。經(jīng)過這一階段,模型會(huì)跟隨指令而不是自顧自地續(xù)寫文字。比如讓它概括一段內(nèi)容,它會(huì)寫出一份正兒八經(jīng)的摘要。沒經(jīng)過 SFT 的原始模型只會(huì)跑偏寫下去。
第三階段,教模型學(xué)習(xí)偏好。這也是接下來要展開的重點(diǎn)。
一個(gè)已經(jīng)會(huì)跟隨指令的模型,為什么還需要第三階段?
這因?yàn)?SFT 做的是模仿。模型看到一個(gè)正確答案,學(xué)著復(fù)制它的樣子。當(dāng)一個(gè)提問只有唯一一個(gè)好答案時(shí),這一套很管用。可當(dāng)一個(gè)提問存在許多種可能的答案時(shí),問題就來了。
想想“解釋一下哈希表是怎么運(yùn)行的”這種請求。簡短的答案和長篇的答案都可能非常優(yōu)秀,而哪一個(gè)能幫上忙,完全取決于提問者是誰。示例數(shù)據(jù)集只能給出其中一個(gè)答案,而答案之間的取舍,在模仿之下一直是不可見的。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.