到今年11月份,ChatGPT就“一歲”了。以ChatGPT為代表的人工智能模型正在以驚人的速度快速迭代,甚至有科技公司宣稱,ChatGPT今后可能取代人類。那么,ChatGPT的原理是什么?它真的有可能取代人類嗎?今天,我用大家都熟悉的例子,讓人們直觀地了解這項(xiàng)看似玄幻的技術(shù)。
“套娃”方式讓ChatGPT實(shí)現(xiàn)長文本生成
英文縮寫ChatGPT全名是Generative Pre-trained Transformer,翻譯過來就是“生成式預(yù)訓(xùn)練轉(zhuǎn)換器”。從這個名字我們就能看出,它是一個可以生成內(nèi)容的預(yù)訓(xùn)練模型。什么叫生成內(nèi)容呢?成語接龍游戲就是一種生成,根據(jù)前面的內(nèi)容生成后面的內(nèi)容。如果我說“守株待……”ChatGPT可能會生成“兔”,如果我說“聲東擊……” ChatGPT可能會生成“西”。這就是單字接龍的生成能力。
如果只是一個字一個字地生成,想要生成一段長文本豈不是太慢了?這就需要用到“套娃”的方法,就是每生成一個字,就把它和前面的內(nèi)容組合起來,作為新的前文再去生成下一個字,如此反復(fù),就可以生成任意長的文章。比如,開始時輸入“守株待”,ChatGPT生成“兔”,然后把“守株待兔”作為新的前文,再生成下一個字。這樣通過大量的單字生成和組合,任何長文本都可以生成出來。
生成內(nèi)容受兩個因素影響,并非隨機(jī)答案
那么,ChatGPT生成出來的內(nèi)容是不是完全隨機(jī)呢?答案是否定的,因?yàn)樯蓛?nèi)容受兩個因素影響:一是前面的上下文,二是ChatGPT自身的語言模型。簡單來說就是,相同上文不同模型會生成不同內(nèi)容,相同模型不同上文也會生成不同內(nèi)容,這就好像每個人腦海中對“守株待兔”后面應(yīng)該連接什么字都有自己的理解是一樣的。
當(dāng)然,我們還希望ChatGPT生成我們想要的內(nèi)容。這就需要給ChatGPT提供大量我們想要的內(nèi)容,讓它通過學(xué)習(xí)來改變自身的語言模型,就像重復(fù)學(xué)習(xí)“守株待兔”后面的詞應(yīng)該是“猛虎”。久而久之,看到“守株待兔”后,我們的腦海中第一個出現(xiàn)的詞就是“猛虎”。ChatGPT也一樣,通過學(xué)習(xí)就能逐步掌握我們想要的語言規(guī)律。
ChatGPT通過學(xué)習(xí)能自己生成新答案
學(xué)習(xí)不是簡單的記憶,而是能舉一反三。如果訓(xùn)練過“守株待兔,猛虎”,看到“守望相助,英雄輩出”也知道下一句應(yīng)該是“猛虎”,這就是ChatGPT的泛化能力,就是可以應(yīng)用學(xué)習(xí)的規(guī)律回答沒有見過的問題,這與我們通過學(xué)習(xí)就會應(yīng)用道理回答新的問題是一樣的。
ChatGPT回答問題也是這樣的原理,給它提供大量正確的問答范例進(jìn)行學(xué)習(xí),它就掌握了回答這個類型問題的方法,從而可以回答沒有見過的新問題。這點(diǎn)不同于搜索引擎,屬于直接在數(shù)據(jù)庫里找現(xiàn)成答案。ChatGPT懂得回答問題的方式,然后自己能生成新答案。
不過,ChatGPT的答案不一定正確,因?yàn)樗赡馨凑斟e誤的規(guī)律生成虛假內(nèi)容,就像我們也可能從錯誤例子中學(xué)習(xí)到錯誤的知識一樣,產(chǎn)生不符合事實(shí)的答案。所以,我們不能盲目相信它的一面之詞,而要通過多次提問來評估它的可靠性。
得益于極大的模型規(guī)模和三段訓(xùn)練法
ChatGPT為何能達(dá)到如此驚人的語言生成效果呢?這得益于極大的模型規(guī)模和三段訓(xùn)練法:首先,ChatGPT吸收了上億條互聯(lián)網(wǎng)數(shù)據(jù)進(jìn)行無監(jiān)督預(yù)訓(xùn)練,掌握了廣泛的語言知識,然后人工設(shè)計(jì)語言交互模板規(guī)范它的行為,最后通過人工提問,不斷反饋訓(xùn)練,提升創(chuàng)造力。通過這樣逐步的訓(xùn)練,ChatGPT才能超越我們的預(yù)期,完成很多復(fù)雜的語言任務(wù)。
作為人造系統(tǒng),ChatGPT也有局限性,生成的內(nèi)容不可全部相信,需要人類進(jìn)行監(jiān)督與評估。就像任何技術(shù)一樣,只能作為輔助工具而不應(yīng)該也不可能取代人類創(chuàng)造力和意識,它終究需要人來指導(dǎo)運(yùn)用。讓我們積極而理性地看待這項(xiàng)科技進(jìn)步,以人為本,造福社會。