ChatGPT大流行的思考-解析篇

SiegZhong
1 評(píng)論 8424 瀏覽 17 收藏 15 分鐘

ChatGPT爆發(fā)至今,討論的聲音也有很多。為什么chatGPT的能力能如何強(qiáng)大?乃至于影響我們的生活和工作?本文對(duì)此展開(kāi)分析,分享自己關(guān)于這件事情的看法。

背景介紹

目前chatGPT已經(jīng)被全世界所知,其影響已經(jīng)滲透到國(guó)家、民營(yíng)企業(yè)、國(guó)企央企、各大行以及每個(gè)個(gè)體等,未來(lái)可能會(huì)更火,并且還會(huì)衍生各種商業(yè)落地產(chǎn)品。

或許每個(gè)人都應(yīng)該主動(dòng)擁抱這個(gè)大變革,而不是觀望或者無(wú)視它。

無(wú)疑,chatGPT的出現(xiàn)是可以拔高到PC、移動(dòng)互聯(lián)這個(gè)層級(jí),這三個(gè)新事物的出現(xiàn),對(duì)我們工作學(xué)習(xí),乃至生活方式都會(huì)形成巨大影響。

而這也是我對(duì)此引發(fā)的思考,為什么chatGPT的能力能如此強(qiáng)大?

總結(jié)內(nèi)容大致可分為以下兩個(gè)方面:

  1. 仰望星空(解析)-即簡(jiǎn)要剖析chatGPT的技術(shù)及解決方案等內(nèi)容
  2. 腳踏實(shí)地(設(shè)想)-設(shè)想未來(lái)產(chǎn)品可著力點(diǎn)及產(chǎn)品方向思考等內(nèi)容

chatGPT的解析與說(shuō)明

1. chatGPT與以往的聊天機(jī)器人的區(qū)別

當(dāng)我們?cè)儐?wèn)ChatGPT和以往的對(duì)話(huà)機(jī)器人(如小冰)我們會(huì)有一種強(qiáng)烈的感受,GPT比他們更懂人類(lèi)的表述與觀念,仿佛是和人在對(duì)話(huà),這是為什么?

可以從以下兩個(gè)維度來(lái)解答:

(1)模型的本質(zhì)區(qū)別

首先我們要了解的是chatGPT是采用了LLM模型構(gòu)建的對(duì)話(huà)機(jī)器人(large Language Model);

一般的語(yǔ)言模型處理任務(wù)的類(lèi)型大致分為兩種類(lèi)型:中間任務(wù)及最終任務(wù)(完成對(duì)話(huà));

中間任務(wù)指中文分詞、詞性標(biāo)注、NER、句法分析、指代消解,這類(lèi)任務(wù)不會(huì)解決實(shí)際問(wèn)題,但對(duì)應(yīng)最終任務(wù)是必需的操作步驟;

以往NLP的部分研究方向及側(cè)重點(diǎn)在于中間任務(wù)的處理及優(yōu)化,如如何更好的分詞\指代\句法分析,從而更好的輸出最終任務(wù),如這一代(袋)蘋(píng)果多少錢(qián),應(yīng)該根據(jù)上下文進(jìn)行判斷;

但GPT的出現(xiàn)提供了一個(gè)新的研究方向,它的理念是嘗試從端到端進(jìn)行解析,完全忽視中間任務(wù)的處理,我們可以給定大量數(shù)據(jù),讓LLM模型自動(dòng)學(xué)習(xí)輸出最終任務(wù)的結(jié)果,而這里面如何學(xué)習(xí)我們無(wú)須了解,如至于優(yōu)化,我們也無(wú)需對(duì)中間過(guò)程專(zhuān)門(mén)建模;

可以說(shuō)正是因?yàn)镹LP技術(shù)發(fā)展未成熟,才會(huì)衍生出中間任務(wù)的建模及優(yōu)化,現(xiàn)在有了LLM的出現(xiàn),我們似乎可以尋求到新的研究方向;

而這種本質(zhì)區(qū)別,就決定了GPT為什么能更好的理解用戶(hù)表述及輸出結(jié)果,因?yàn)镚PT現(xiàn)在是給定人類(lèi)的自然表述,LLM通過(guò)大量數(shù)據(jù)學(xué)習(xí)語(yǔ)義語(yǔ)法知識(shí)及既定事實(shí),最終再用符合人類(lèi)的表述方法進(jìn)行反饋,講究的是GPT去適應(yīng)人,而不是人去適應(yīng)GPT(這活脫脫是個(gè)絕對(duì)合格的乙方思路!誰(shuí)能不愛(ài))

(2)角色定位的區(qū)別:從預(yù)訓(xùn)練模型走向通用人工智能

以往的技術(shù)鏈路是構(gòu)建各個(gè)專(zhuān)業(yè)agents,并提交中控統(tǒng)一管控(DM模塊),組成一個(gè)對(duì)話(huà)機(jī)器人;而GPT是通過(guò)數(shù)據(jù)及LLM模型,構(gòu)建成一個(gè)通用性的對(duì)話(huà)機(jī)器人;

沒(méi)錯(cuò),你可以想象一下,以前是設(shè)想給你創(chuàng)建很多個(gè)專(zhuān)業(yè)人員同時(shí)處理服務(wù)(N對(duì)N),現(xiàn)在是構(gòu)建一個(gè)通用性人才,同時(shí)處理多個(gè)服務(wù)(1對(duì)N);

而為什么能這么轉(zhuǎn)變?得益于LLM模型及海量的數(shù)據(jù)(以萬(wàn)億為單位的文本數(shù)據(jù));

理論上來(lái)講,只要LLM模型足夠大,喂食的數(shù)據(jù)足夠多,那么GPT完全可以變身成為鋼鐵俠里面的賈維斯(想想就很興奮),而且如果按照這個(gè)研究思路,未來(lái)很多NLP子研究領(lǐng)域?qū)⒉辉倬邆溲芯績(jī)r(jià)值(如如何更好的分詞)

以上兩點(diǎn),我理解就是與以往主流的對(duì)話(huà)機(jī)器人的本質(zhì)區(qū)別。

2. ChatGPT如何實(shí)現(xiàn)知識(shí)的獲取、存儲(chǔ)、推理及實(shí)時(shí)更新

那究竟GPT如何有如此優(yōu)秀的表現(xiàn)呢?

我們不妨從人類(lèi)學(xué)習(xí)思路入手,我們學(xué)習(xí)一般可分為獲取知識(shí)-存儲(chǔ)知識(shí)-推理知識(shí)-更新知識(shí),而這也是GPT發(fā)展及學(xué)習(xí)的過(guò)程,這更加也是GPT適應(yīng)人類(lèi)的表現(xiàn);

(1)獲取知識(shí)

首先對(duì)于知識(shí)的獲取,GPT粗略可以分為語(yǔ)言知識(shí)及世界知識(shí)的獲取,語(yǔ)言知識(shí)指代的就是我們自然的表述,指詞性、語(yǔ)義、語(yǔ)法、分詞等知識(shí);

參考文章-“When Do You Need Billions of Words of Pre-training Data?”,對(duì)于Bert類(lèi)型的語(yǔ)言模型來(lái)說(shuō),只用1000萬(wàn)到1億單詞的語(yǔ)料,就能學(xué)好句法語(yǔ)義等語(yǔ)言學(xué)知識(shí);

而世界知識(shí),指的是在這個(gè)世界上發(fā)生的一些真實(shí)事件(事實(shí)型知識(shí),F(xiàn)actual Knowledge),指美國(guó)現(xiàn)任總統(tǒng)為拜登,太陽(yáng)從東邊升起,這類(lèi)既定事實(shí)知識(shí)的學(xué)習(xí);

而這類(lèi)知識(shí)的獲取學(xué)習(xí),對(duì)數(shù)據(jù)的要求及時(shí)效性就很高,也是未來(lái)GPT的研究重點(diǎn),即如何從增量知識(shí)獲取世界知識(shí);

(2)存取知識(shí)

至于GPT如何存儲(chǔ)及提取知識(shí),目前比較可信的思路大體是這樣的,首先我們要知道一個(gè)前提,就是LLM模型是以Transformer為基礎(chǔ)的大語(yǔ)言模型,而Transformer我們可以簡(jiǎn)單理解為變壓器,對(duì)輸入和輸出進(jìn)行處理的模型。

當(dāng)LLM模型獲取到知識(shí)(輸入)時(shí),會(huì)轉(zhuǎn)化為一對(duì)<Key,Value>信息,如<‘北京,is-capital-of,中國(guó)>,并且保存在Transformer的FFN結(jié)構(gòu),也就是說(shuō)Transformer的FFN可看成存儲(chǔ)大量具體知識(shí)的Key-Value存儲(chǔ)器,而每個(gè)節(jié)點(diǎn)對(duì)應(yīng)的key向量,就是知識(shí)節(jié)點(diǎn)和輸入層每個(gè)節(jié)點(diǎn)的權(quán)重向量,用來(lái)匹配輸入的語(yǔ)言需要獲取什么知識(shí);

舉個(gè)例子,簡(jiǎn)單通俗點(diǎn)來(lái)說(shuō),當(dāng)Transformer的輸入是“中國(guó)的首都是[Mask]”的時(shí)候,節(jié)點(diǎn)從輸入層探測(cè)到這個(gè)知識(shí)模式,會(huì)產(chǎn)生較大的響應(yīng)輸出。如果Key層其它神經(jīng)元對(duì)這個(gè)輸入都沒(méi)有任何響應(yīng),那么對(duì)應(yīng)的Value層的節(jié)點(diǎn),其實(shí)只會(huì)接收到“北京”,這個(gè)Value對(duì)應(yīng)的單詞embedding放大,進(jìn)而匹配出最終的結(jié)果<北京>;

(3)推理能力

首先,我們要知道LLM模型本身就具備推理能力;

保證LLM有推理能力的原因有兩種方法,一種是基于Prompt的方法,核心思想是通過(guò)合適的提示語(yǔ)或提示樣本,更好地激發(fā)出LLM本身就具備的推理能力;

第二種是是在預(yù)訓(xùn)練過(guò)程中引入程序代碼,和文本一起參與預(yù)訓(xùn)練,以此進(jìn)一步增強(qiáng)LLM的推理能力,這應(yīng)該是OpenAI實(shí)踐出的思路;

首先基于Prompt的方法也分為三種實(shí)現(xiàn)方法:

第一種方法是可以簡(jiǎn)單的理解為追問(wèn)式推理,我們?cè)贚LM輸出結(jié)果時(shí),輸入提示語(yǔ):“Let’s think step by step”,LLM便會(huì)將它思考的思路逐一的反饋出來(lái),而實(shí)現(xiàn)的方法就是,我們海量數(shù)據(jù)里面必定存在“Let’s think step by step\讓我們一步一步來(lái)思考”關(guān)鍵信息的文本,并且這類(lèi)文本通常都是攜帶了思考思路,而LLM模型可以通過(guò)這些數(shù)據(jù)進(jìn)行學(xué)習(xí)推理;

第二種是基于示例的思維鏈,又稱(chēng)CoT,(few-shot CoT,Chain of Thought),方法是:為了教會(huì)LLM模型學(xué)會(huì)推理,給出一些人工寫(xiě)好的推理示例,示例里把得到最終答案前,一步步的具體推理步驟說(shuō)清楚,而這些人工寫(xiě)的詳細(xì)推理過(guò)程,就是思維鏈Prompting,這種方法讓模型學(xué)習(xí)了一個(gè)道理,就是在推理過(guò)程中,步子不要邁得太大,否則很容易出錯(cuò),改變思維模式,化大為小,逐一擊破;而這也是我們生活學(xué)習(xí)需要參考的思路;

第三種是問(wèn)題拆解思路,就是將一個(gè)復(fù)雜問(wèn)題逐步拆解到每一個(gè)子問(wèn)題,在完成了子問(wèn)題的解答后,我們?cè)購(gòu)淖訂?wèn)題的答案推導(dǎo)復(fù)雜問(wèn)題的答案;

以上為實(shí)現(xiàn)chatGPT的推理能力的第一種方法-基于Prompt方法的簡(jiǎn)單介紹;

而另外一種,在預(yù)訓(xùn)練過(guò)程中引入程序代碼,和文本一起參與預(yù)訓(xùn)練構(gòu)造LLM推理能力的方法,目前還未證實(shí),比較可能的猜想為如下兩個(gè)方面:

1)代碼屬于邏輯性很強(qiáng)的內(nèi)容,可以通過(guò)代碼的條理構(gòu)造LLM推理的思路;

2)代碼中的注釋可以有效幫助到LLM關(guān)聯(lián)對(duì)應(yīng)的內(nèi)容進(jìn)行推理,即這類(lèi)文本幫助預(yù)訓(xùn)練模型做了<文本,Code>兩種數(shù)據(jù)的多模態(tài)對(duì)齊工作;

而這兩個(gè)猜想目前來(lái)看可能性較高,只是需要等待后續(xù)驗(yàn)證。

(4)實(shí)時(shí)更新知識(shí)

相信很多人都會(huì)想到一個(gè)問(wèn)題,既然LLM模型訓(xùn)練是基于已有的海量數(shù)據(jù),那這部分?jǐn)?shù)據(jù)的時(shí)效性如果不符合現(xiàn)實(shí)情況,那chatGPT給的答案不就不可靠了嗎?

如詢(xún)問(wèn)美國(guó)的總統(tǒng)是誰(shuí)?按照已有的數(shù)據(jù)量來(lái)看,肯定是特朗普的數(shù)據(jù)會(huì)多于拜登,那么回答不就不可靠了?

對(duì)于這個(gè)擔(dān)憂(yōu),可以說(shuō)是客觀存在并且是會(huì)出現(xiàn)的,畢竟chatGPT才出現(xiàn)了一段時(shí)間,但這個(gè)問(wèn)題雖然還未完全解決,似乎已有三種可以處理的技術(shù)方法,歸納起來(lái)為以下三種:

1)基于基礎(chǔ)數(shù)據(jù)來(lái)修正知識(shí)

如同文章“Towards Tracing Factual Knowledge in Language Models Back to the Training Data”描述的從LLM模型逆向追蹤到數(shù)據(jù)源的可行性;

因此我們可以在識(shí)別到錯(cuò)誤反饋的時(shí)候,設(shè)計(jì)一個(gè)修正功能,當(dāng)用戶(hù)反饋說(shuō)你說(shuō)的不對(duì)時(shí),實(shí)時(shí)的進(jìn)行源數(shù)據(jù)的更新,而這里面需要解決的問(wèn)題就是什么時(shí)候需要進(jìn)行修正以及如何校驗(yàn)修正后的答案是符合世界認(rèn)知的,但是這可以說(shuō)是后話(huà)了。

2)對(duì)LLM模型做一次fine-tuning來(lái)修正知識(shí)

第二種方法的思路就是直接從數(shù)據(jù)源開(kāi)始修正,通過(guò)修正后的數(shù)據(jù)源重新訓(xùn)練;

這個(gè)方法最為簡(jiǎn)單直觀,同時(shí)也存在問(wèn)題:1)帶來(lái)災(zāi)難遺忘問(wèn)題,即可能遺忘掉該忘的知識(shí),還會(huì)忘掉了不該忘的知識(shí);2)成本高,涉及到LLM模型的重新訓(xùn)練及驗(yàn)證,可行性不高;

3)修改LLM模型某些知識(shí)的模型參數(shù)

第三種方法其實(shí)是第二種的衍生,就是修正某一個(gè)知識(shí)領(lǐng)域的參數(shù);

參考“Locating and Editing Factual Associations in GPT”和“Mass-Editing Memory in a Transformer”這兩篇文章講述了定位及修正FFN對(duì)應(yīng)參數(shù)的方法;

但同樣的,我們要解決的問(wèn)題也就是方法一要面對(duì)的兩個(gè)問(wèn)題。

3. 總結(jié)歸納

以上就是我在查閱資料后整理的chatGPT的優(yōu)異點(diǎn),個(gè)人理解有以下三個(gè)原因:

(1)顛覆及超越了以往市面主流的對(duì)話(huà)機(jī)器人(無(wú)論是交互、體驗(yàn)還是性能),并且提供了可落地性及可研究性很強(qiáng)的方向

(2)為目前國(guó)內(nèi)或者世界經(jīng)濟(jì)下行及行業(yè)內(nèi)卷,提供了新的產(chǎn)品及生產(chǎn)力發(fā)展方向,也提供了新的商業(yè)價(jià)值

(3)chatGPT里面的思想(如問(wèn)題拆解\識(shí)別修正等思想)及未來(lái)研究方向,符合人類(lèi)的學(xué)習(xí)及發(fā)展之路,適合每個(gè)人學(xué)習(xí)與借鑒

以上內(nèi)容,便是筆者個(gè)人對(duì)ChatGPT為什么能力如此強(qiáng)大的解析。

參考內(nèi)容

由ChatGPT反思大語(yǔ)言模型(LLM)的技術(shù)精要

在此特別感謝張老師提供的關(guān)于chatGPT研究及說(shuō)明,對(duì)個(gè)人的學(xué)習(xí)及思考起了很大的幫助!

拓展閱讀

  1. 關(guān)于chatGPT的八個(gè)技術(shù)問(wèn)題猜想
  2. chatGPT的數(shù)據(jù)集之謎

本文由 @SiegZhong 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載

題圖來(lái)自 Unsplash,基于 CC0 協(xié)議

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 贊~學(xué)習(xí)了

    來(lái)自上海 回復(fù)