作為智能對(duì)話系統(tǒng),ChatGPT最近兩天爆火,都火出技術(shù)圈了,網(wǎng)上到處都在轉(zhuǎn)ChatGPT相關(guān)的內(nèi)容和測(cè)試?yán)?,效果確實(shí)很震撼。我記得上一次能引起如此轟動(dòng)的AI技術(shù),NLP領(lǐng)域是GPT 3發(fā)布,那都是兩年半前的事了,當(dāng)時(shí)人工智能如日中天如火如荼的紅火日子,今天看來(lái)恍如隔世;多模態(tài)領(lǐng)域則是以DaLL E2、Stable Diffusion為代表的Diffusion Model,這是最近大半年火起來(lái)的AIGC模型;而今天,AI的星火傳遞到了ChatGPT手上,它毫無(wú)疑問(wèn)也屬于AIGC范疇。所以說(shuō),在AI泡沫破裂后處于低谷期的今天,AIGC確實(shí)是給AI續(xù)命的良藥,當(dāng)然我們更期待估計(jì)很快會(huì)發(fā)布的GPT 4,愿OpenAI能繼續(xù)撐起局面,給行業(yè)帶來(lái)一絲暖意。
說(shuō)回ChatGPT,例子就不舉了,在網(wǎng)上漫山遍野都是,我們主要從技術(shù)角度來(lái)聊聊。那么,ChatGPT到底是采用了怎樣的技術(shù),才能做到如此超凡脫俗的效果?既然ChatGPT功能如此強(qiáng)大,那么它可以取代Google、百度等現(xiàn)有搜索引擎嗎?如果能,那是為什么,如果不能,又是為什么?
本文試圖從我個(gè)人理解的角度,來(lái)嘗試回答上述問(wèn)題,很多個(gè)人觀點(diǎn),偏頗難免,還請(qǐng)謹(jǐn)慎參考。我們首先來(lái)看看ChatGPT到底做了什么才獲得如此好的效果。
ChatGPT的技術(shù)原理
整體技術(shù)路線上,ChatGPT在效果強(qiáng)大的GPT 3.5大規(guī)模語(yǔ)言模型(LLM,Large Language Model)基礎(chǔ)上,引入“人工標(biāo)注數(shù)據(jù)+強(qiáng)化學(xué)習(xí)”(RLHF,Reinforcement Learning from Human Feedback ,這里的人工反饋其實(shí)就是人工標(biāo)注數(shù)據(jù))來(lái)不斷Fine-tune預(yù)訓(xùn)練語(yǔ)言模型,主要目的是讓LLM模型學(xué)會(huì)理解人類(lèi)的命令指令的含義(比如給我寫(xiě)一段小作文生成類(lèi)問(wèn)題、知識(shí)回答類(lèi)問(wèn)題、頭腦風(fēng)暴類(lèi)問(wèn)題等不同類(lèi)型的命令),以及讓LLM學(xué)會(huì)判斷對(duì)于給定的prompt輸入指令(用戶(hù)的問(wèn)題),什么樣的答案是優(yōu)質(zhì)的(富含信息、內(nèi)容豐富、對(duì)用戶(hù)有幫助、無(wú)害、不包含歧視信息等多種標(biāo)準(zhǔn))。
在“人工標(biāo)注數(shù)據(jù)+強(qiáng)化學(xué)習(xí)”框架下,具體而言,ChatGPT的訓(xùn)練過(guò)程分為以下三個(gè)階段:
(ChatGPT:第一階段) 第一階段:冷啟動(dòng)階段的監(jiān)督策略模型??縂PT 3.5本身,盡管它很強(qiáng),但是它很難理解人類(lèi)不同類(lèi)型指令中蘊(yùn)含的不同意圖,也很難判斷生成內(nèi)容是否是高質(zhì)量的結(jié)果。為了讓GPT 3.5初步具備理解指令中蘊(yùn)含的意圖,首先會(huì)從測(cè)試用戶(hù)提交的prompt(就是指令或問(wèn)題)中隨機(jī)抽取一批,靠專(zhuān)業(yè)的標(biāo)注人員,給出指定prompt的高質(zhì)量答案,然后用這些人工標(biāo)注好的
(ChatGPT:第二階段)
第二階段:訓(xùn)練回報(bào)模型(Reward Model,RM)。這個(gè)階段的主要目的是通過(guò)人工標(biāo)注訓(xùn)練數(shù)據(jù),來(lái)訓(xùn)練回報(bào)模型。具體而言,隨機(jī)抽樣一批用戶(hù)提交的prompt(大部分和第一階段的相同),使用第一階段Fine-tune好的冷啟動(dòng)模型,對(duì)于每個(gè)prompt,由冷啟動(dòng)模型生成K個(gè)不同的回答,于是模型產(chǎn)生出了
接下來(lái),我們準(zhǔn)備利用這個(gè)排序結(jié)果數(shù)據(jù)來(lái)訓(xùn)練回報(bào)模型,采取的訓(xùn)練模式其實(shí)就是平常經(jīng)常用到的pair-wise learning to rank。對(duì)于K個(gè)排序結(jié)果,兩兩組合,形成(k2)個(gè)訓(xùn)練數(shù)據(jù)對(duì),ChatGPT采取pair-wise loss來(lái)訓(xùn)練Reward Model。RM模型接受一個(gè)輸入
歸納下:在這個(gè)階段里,首先由冷啟動(dòng)后的監(jiān)督策略模型為每個(gè)prompt產(chǎn)生K個(gè)結(jié)果,人工根據(jù)結(jié)果質(zhì)量由高到低排序,以此作為訓(xùn)練數(shù)據(jù),通過(guò)pair-wise learning to rank模式來(lái)訓(xùn)練回報(bào)模型。對(duì)于學(xué)好的RM模型來(lái)說(shuō),輸入
(ChatGPT:第三階段)
第三階段:采用強(qiáng)化學(xué)習(xí)來(lái)增強(qiáng)預(yù)訓(xùn)練模型的能力。本階段無(wú)需人工標(biāo)注數(shù)據(jù),而是利用上一階段學(xué)好的RM模型,靠RM打分結(jié)果來(lái)更新預(yù)訓(xùn)練模型參數(shù)。具體而言,首先,從用戶(hù)提交的prompt里隨機(jī)采樣一批新的命令(指的是和第一第二階段不同的新的prompt,這個(gè)其實(shí)是很重要的,對(duì)于提升LLM模型理解instruct指令的泛化能力很有幫助),且由冷啟動(dòng)模型來(lái)初始化PPO模型的參數(shù)。然后,對(duì)于隨機(jī)抽取的prompt,使用PPO模型生成回答answer, 并用上一階段訓(xùn)練好的RM模型給出answer質(zhì)量評(píng)估的回報(bào)分?jǐn)?shù)score,這個(gè)回報(bào)分?jǐn)?shù)就是RM賦予給整個(gè)回答(由單詞序列構(gòu)成)的整體reward。有了單詞序列的最終回報(bào),就可以把每個(gè)單詞看作一個(gè)時(shí)間步,把reward由后往前依次傳遞,由此產(chǎn)生的策略梯度可以更新PPO模型參數(shù)。這是標(biāo)準(zhǔn)的強(qiáng)化學(xué)習(xí)過(guò)程,目的是訓(xùn)練LLM產(chǎn)生高reward的答案,也即是產(chǎn)生符合RM標(biāo)準(zhǔn)的高質(zhì)量回答。
如果我們不斷重復(fù)第二和第三階段,很明顯,每一輪迭代都使得LLM模型能力越來(lái)越強(qiáng)。因?yàn)榈诙A段通過(guò)人工標(biāo)注數(shù)據(jù)來(lái)增強(qiáng)RM模型的能力,而第三階段,經(jīng)過(guò)增強(qiáng)的RM模型對(duì)新prompt產(chǎn)生的回答打分會(huì)更準(zhǔn),并利用強(qiáng)化學(xué)習(xí)來(lái)鼓勵(lì)LLM模型學(xué)習(xí)新的高質(zhì)量?jī)?nèi)容,這起到了類(lèi)似利用偽標(biāo)簽擴(kuò)充高質(zhì)量訓(xùn)練數(shù)據(jù)的作用,于是LLM模型進(jìn)一步得到增強(qiáng)。顯然,第二階段和第三階段有相互促進(jìn)的作用,這是為何不斷迭代會(huì)有持續(xù)增強(qiáng)效果的原因。
盡管如此,我覺(jué)得第三階段采用強(qiáng)化學(xué)習(xí)策略,未必是ChatGPT模型效果特別好的主要原因。假設(shè)第三階段不采用強(qiáng)化學(xué)習(xí),換成如下方法:類(lèi)似第二階段的做法,對(duì)于一個(gè)新的prompt,冷啟動(dòng)模型可以產(chǎn)生k個(gè)回答,由RM模型分別打分,我們選擇得分最高的回答,構(gòu)成新的訓(xùn)練數(shù)據(jù)
以上是ChatGPT的訓(xùn)練流程,主要參考自instructGPT的論文,ChatGPT是改進(jìn)的instructGPT,改進(jìn)點(diǎn)主要在收集標(biāo)注數(shù)據(jù)方法上有些區(qū)別,在其它方面,包括在模型結(jié)構(gòu)和訓(xùn)練流程等方面基本遵循instructGPT??梢灶A(yù)見(jiàn)的是,這種Reinforcement Learning from Human Feedback技術(shù)會(huì)快速蔓延到其它內(nèi)容生成方向,比如一個(gè)很容易想到的,類(lèi)似“A machine translation model based on Reinforcement Learning from Human Feedback”這種,其它還有很多。但是,我個(gè)人認(rèn)為,在NLP的某個(gè)具體的內(nèi)容生成領(lǐng)域再采用這個(gè)技術(shù)意義應(yīng)該已經(jīng)不大了,因?yàn)镃hatGPT本身能處理的任務(wù)類(lèi)型非常多樣化,基本涵蓋了NLP生成的很多子領(lǐng)域,所以某個(gè)NLP子領(lǐng)域如果再單獨(dú)采用這個(gè)技術(shù)其實(shí)已經(jīng)不具備太大價(jià)值,因?yàn)樗目尚行钥梢哉J(rèn)為已經(jīng)被ChatGPT驗(yàn)證了。如果把這個(gè)技術(shù)應(yīng)用在比如圖片、音頻、視頻等其它模態(tài)的生成領(lǐng)域,可能是更值得探索的方向,也許不久后我們就會(huì)看到類(lèi)似“A XXX diffusion model based on Reinforcement Learning from Human Feedback”,諸如此類(lèi),這類(lèi)工作應(yīng)該還是很有意義的。
另外一個(gè)值得關(guān)注的采取類(lèi)似技術(shù)的工作是DeepMind的sparrow,這個(gè)工作發(fā)表時(shí)間稍晚于instructGPT,如果你仔細(xì)分析的話,大的技術(shù)思路和框架與instructGPT的三階段基本類(lèi)似,不過(guò)明顯sparrow在人工標(biāo)注方面的質(zhì)量和工作量是不如instructGPT的。反過(guò)來(lái),我覺(jué)得sparrow里把回報(bào)模型分為兩個(gè)不同RM的思路,是優(yōu)于instructGPT的,至于原因在下面小節(jié)里會(huì)講。
ChatGPT能否取代Google、百度等傳統(tǒng)搜索引擎
既然看上去ChatGPT幾乎無(wú)所不能地回答各種類(lèi)型的prompt,那么一個(gè)很自然的問(wèn)題就是:ChatGPT或者未來(lái)即將面世的GPT4,能否取代Google、百度這些傳統(tǒng)搜索引擎呢?我個(gè)人覺(jué)得目前應(yīng)該還不行,但是如果從技術(shù)角度稍微改造一下,理論上是可以取代傳統(tǒng)搜索引擎的。
為什么說(shuō)目前形態(tài)的ChatGPT還不能取代搜索引擎呢?主要有三點(diǎn)原因:首先,對(duì)于不少知識(shí)類(lèi)型的問(wèn)題,ChatGPT會(huì)給出看上去很有道理,但是事實(shí)上是錯(cuò)誤答案的內(nèi)容(參考上圖的例子(from @Gordon Lee),ChatGPT的回答看著胸有成竹,像我這么沒(méi)文化的基本看了就信了它,回頭查了下這首詞里竟然沒(méi)這兩句),考慮到對(duì)于很多問(wèn)題它又能回答得很好,這將會(huì)給用戶(hù)造成困擾:如果我對(duì)我提的問(wèn)題確實(shí)不知道正確答案,那我是該相信ChatGPT的結(jié)果還是不該相信呢?此時(shí)你是無(wú)法作出判斷的。這個(gè)問(wèn)題可能是比較要命的。其次,ChatGPT目前這種基于GPT大模型基礎(chǔ)上進(jìn)一步增加標(biāo)注數(shù)據(jù)訓(xùn)練的模式,對(duì)于LLM模型吸納新知識(shí)是非常不友好的。新知識(shí)總是在不斷出現(xiàn),而出現(xiàn)一些新知識(shí)就去重新預(yù)訓(xùn)練GPT模型是不現(xiàn)實(shí)的,無(wú)論是訓(xùn)練時(shí)間成本還是金錢(qián)成本,都不可接受。如果對(duì)于新知識(shí)采取Fine-tune的模式,看上去可行且成本相對(duì)較低,但是很容易產(chǎn)生新數(shù)據(jù)的引入導(dǎo)致對(duì)原有知識(shí)的災(zāi)難遺忘問(wèn)題,尤其是短周期的頻繁fine-tune,會(huì)使這個(gè)問(wèn)題更為嚴(yán)重。所以如何近乎實(shí)時(shí)地將新知識(shí)融入LLM是個(gè)非常有挑戰(zhàn)性的問(wèn)題。其三,ChatGPT或GPT4的訓(xùn)練成本以及在線推理成本太高,導(dǎo)致如果面向真實(shí)搜索引擎的以?xún)|記的用戶(hù)請(qǐng)求,假設(shè)繼續(xù)采取免費(fèi)策略,OpenAI無(wú)法承受,但是如果采取收費(fèi)策略,又會(huì)極大減少用戶(hù)基數(shù),是否收費(fèi)是個(gè)兩難決策,當(dāng)然如果訓(xùn)練成本能夠大幅下降,則兩難自解。以上這三個(gè)原因,導(dǎo)致目前ChatGPT應(yīng)該還無(wú)法取代傳統(tǒng)搜索引擎。
那么這幾個(gè)問(wèn)題,是否可以解決呢?其實(shí),如果我們以ChatGPT的技術(shù)路線為主體框架,再吸納其它對(duì)話系統(tǒng)采用的一些現(xiàn)成的技術(shù)手段,來(lái)對(duì)ChatGPT進(jìn)行改造,從技術(shù)角度來(lái)看,除了成本問(wèn)題外的前兩個(gè)技術(shù)問(wèn)題,目前看是可以得到很好地解決。我們只需要在ChatGPT的基礎(chǔ)上,引入sparrow系統(tǒng)以下能力:基于retrieval結(jié)果的生成結(jié)果證據(jù)展示,以及引入LaMDA系統(tǒng)的對(duì)于新知識(shí)采取retrieval模式,那么前面提到的新知識(shí)的及時(shí)引入,以及生成內(nèi)容可信性驗(yàn)證,基本就不是什么大問(wèn)題。
基于以上考慮,在上圖中展示出了我心目中下一代搜索引擎的整體結(jié)構(gòu):它其實(shí)是目前的傳統(tǒng)搜索引擎+ChatGPT的雙引擎結(jié)構(gòu),ChatGPT模型是主引擎,傳統(tǒng)搜索引擎是輔引擎。傳統(tǒng)搜索引擎的主要輔助功能有兩個(gè):一個(gè)是對(duì)于ChatGPT產(chǎn)生的知識(shí)類(lèi)問(wèn)題的回答,進(jìn)行結(jié)果可信性驗(yàn)證與展示,就是說(shuō)在ChatGPT給出答案的同時(shí),從搜索引擎里找到相關(guān)內(nèi)容片段及url鏈接,同時(shí)把這些內(nèi)容展示給用戶(hù),使得用戶(hù)可以從額外提供的內(nèi)容里驗(yàn)證答案是否真實(shí)可信,這樣就可以解決ChatGPT產(chǎn)生的回答可信與否的問(wèn)題,避免用戶(hù)對(duì)于產(chǎn)生結(jié)果無(wú)所適從的局面。當(dāng)然,只有知識(shí)類(lèi)問(wèn)題才有必要尋找可信信息進(jìn)行驗(yàn)證,很多其他自由生成類(lèi)型的問(wèn)題,比如讓ChatGPT寫(xiě)一個(gè)滿(mǎn)足某個(gè)主題的小作文這種完全自由發(fā)揮的內(nèi)容,則無(wú)此必要。所以這里還有一個(gè)什么情況下會(huì)調(diào)用傳統(tǒng)搜索引擎的問(wèn)題,具體技術(shù)細(xì)節(jié)完全可仿照sparrow的做法,里面有詳細(xì)的技術(shù)方案。傳統(tǒng)搜索引擎的第二個(gè)輔助功能是及時(shí)補(bǔ)充新知識(shí)。既然我們不可能隨時(shí)把新知識(shí)快速引入LLM,那么可以把它存到搜索引擎的索引里,ChatGPT如果發(fā)現(xiàn)具備時(shí)效性的問(wèn)題,它自己又回答不了,則可以轉(zhuǎn)向搜索引擎抽取對(duì)應(yīng)的答案,或者根據(jù)返回相關(guān)片段再加上用戶(hù)輸入問(wèn)題通過(guò)ChatGPT產(chǎn)生答案。關(guān)于這方面的具體技術(shù)手段,可以參考LaMDA,其中有關(guān)于新知識(shí)處理的具體方法。
除了上面的幾種技術(shù)手段,我覺(jué)得相對(duì)ChatGPT只有一個(gè)綜合的Reward Model,sparrow里把答案helpful相關(guān)的標(biāo)準(zhǔn)(比如是否富含信息量、是否合乎邏輯等)采用一個(gè)RM,其它類(lèi)型toxic/harmful相關(guān)標(biāo)準(zhǔn)(比如是否有bias、是否有害信息等)另外單獨(dú)采用一個(gè)RM,各司其職,這種模式要更清晰合理一些。因?yàn)閱我活?lèi)型的標(biāo)準(zhǔn),更便于標(biāo)注人員進(jìn)行判斷,而如果一個(gè)Reward Model融合多種判斷標(biāo)準(zhǔn),相互打架在所難免,判斷起來(lái)就很復(fù)雜效率也低,所以感覺(jué)可以引入到ChatGPT里來(lái),得到進(jìn)一步的模型改進(jìn)。
通過(guò)吸取各種現(xiàn)有技術(shù)所長(zhǎng),我相信大致可以解決ChatGPT目前所面臨的問(wèn)題,技術(shù)都是現(xiàn)成的,從產(chǎn)生內(nèi)容效果質(zhì)量上取代現(xiàn)有搜索引擎問(wèn)題不大。當(dāng)然,至于模型訓(xùn)練成本和推理成本問(wèn)題,可能短時(shí)期內(nèi)無(wú)法獲得快速大幅降低,這可能是決定LLM是否能夠取代現(xiàn)有搜索引擎的關(guān)鍵技術(shù)瓶頸。從形式上來(lái)看,未來(lái)的搜索引擎大概率是以用戶(hù)智能助手APP的形式存在的,但是,從短期可行性上來(lái)說(shuō),在走到最終形態(tài)之前,過(guò)渡階段大概率兩個(gè)引擎的作用是反過(guò)來(lái)的,就是傳統(tǒng)搜索引擎是主引擎,ChatGPT是輔引擎,形式上還是目前搜索引擎的形態(tài),只是部分搜索內(nèi)容Top 1的搜索結(jié)果是由ChatGPT產(chǎn)生的,大多數(shù)用戶(hù)請(qǐng)求,可能在用戶(hù)看到Top 1結(jié)果就能滿(mǎn)足需求,對(duì)于少數(shù)滿(mǎn)足不了的需求,用戶(hù)可以采用目前搜索引擎翻頁(yè)搜尋的模式。我猜搜索引擎未來(lái)大概率會(huì)以這種過(guò)渡階段以傳統(tǒng)搜索引擎為主,ChatGPT這種instruct-based生成模型為輔,慢慢切換到以ChatGPT生成內(nèi)容為主,而這個(gè)切換節(jié)點(diǎn),很可能取決于大模型訓(xùn)練成本的大幅下降的時(shí)間,以此作為轉(zhuǎn)換節(jié)點(diǎn)。
審核編輯 :李倩
-
引擎
+關(guān)注
關(guān)注
1文章
360瀏覽量
22531 -
模型
+關(guān)注
關(guān)注
1文章
3176瀏覽量
48721 -
強(qiáng)化學(xué)習(xí)
+關(guān)注
關(guān)注
4文章
266瀏覽量
11217 -
ChatGPT
+關(guān)注
關(guān)注
29文章
1548瀏覽量
7504
原文標(biāo)題:ChatGPT會(huì)取代搜索引擎嗎
文章出處:【微信號(hào):AI科技大本營(yíng),微信公眾號(hào):AI科技大本營(yíng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論