博客專欄

EEPW首頁 > 博客 > 世界的參數(shù)倒影:為何GPT通過Next Token Prediction可以產(chǎn)生智能(2)

世界的參數(shù)倒影:為何GPT通過Next Token Prediction可以產(chǎn)生智能(2)

發(fā)布人:數(shù)據(jù)派THU 時(shí)間:2023-06-10 來源:工程師 發(fā)布文章
壓縮即智能


從上述講解可看出,如果 GPT 模型生成 Ground Truth 圖片 的生成概率越高,則其在算術(shù)編碼分割區(qū)間中占據(jù)的長度就越長,就越容易找到更短的算術(shù)編碼,這意味著模型壓縮率越高。也就是說,如果 GPT 模型智能程度越高,NTP 預(yù)測得越準(zhǔn)確,則其壓縮效率就越高。所以,我們可以根據(jù)模型的壓縮效率來評(píng)估模型的智能程度,模型壓縮效率越高,則模型智能程度越高,這是目前 OpenAI 照此思路推進(jìn)大模型研發(fā)方向的一個(gè)核心理念。
我們可以考慮兩種極端情況:一種情況是模型具備超強(qiáng)智能,對(duì)于 Next Token Prediction 要預(yù)測的每一個(gè) Ground Truth 圖片 ,生成概率總是為 1。我們假設(shè)當(dāng)小帥傳輸給小美一部分?jǐn)?shù)據(jù) 圖片后,模型的智能程度不斷積累并達(dá)到這個(gè)程度,這意味著對(duì)于沒有傳送的剩余數(shù)據(jù) 圖片來說,小帥后面無需傳輸任何信息。因?yàn)樾∶赖?GPT 已經(jīng)能夠完全靠自己正確預(yù)測后續(xù)的每一個(gè) Token,此時(shí) GPT 模型由于具備超強(qiáng)智能而擁有了極限數(shù)據(jù)壓縮能力,也就是根據(jù)輸入上文,未來發(fā)生什么它都知道;另外一種極端情況,是 GPT 在訓(xùn)練過程中未學(xué)到任何智能,則其在做 Next Token Prediction 時(shí),純靠猜。假設(shè)詞表 圖片大小為圖片,則每一個(gè) Ground Truth 圖片 的生成概率永為 圖片,此時(shí) GPT 不具備任何數(shù)據(jù)壓縮能力,需要傳輸?shù)臄?shù)據(jù)量和原始數(shù)據(jù) 圖片信息量相等。
這是兩種極端情況。大多數(shù)情況下,LLM 模型的智能,或者說壓縮能力,應(yīng)該介于兩者之間,而我們可以根據(jù)模型壓縮能力,來評(píng)估模型的智能程度。如果做些數(shù)學(xué)推導(dǎo),可知這種情形下,對(duì)于數(shù)據(jù) 圖片 對(duì)應(yīng)的 圖片 ,算術(shù)編碼所需編碼的 bit 數(shù),也即碼長,應(yīng)為:圖片,您看到這個(gè)公式可以思考下,有沒有覺得它和誰長得比較像呢?其實(shí),這就是 GPT 在訓(xùn)練的時(shí)候,圖片 這個(gè) Token 對(duì)應(yīng)的交叉熵?fù)p失。也就是說,如果從數(shù)據(jù)壓縮的角度,每個(gè) Token 的編碼長度,其實(shí)就是 LLM 預(yù)訓(xùn)練時(shí),這個(gè) Token 對(duì)應(yīng)的交叉熵?fù)p失,兩者是等價(jià)的。是不是很有意思?所以,數(shù)據(jù)無損壓縮是看待 LLM 模型訓(xùn)練的另外一個(gè)比較新穎的視角。
圖片
我們可以進(jìn)一步推導(dǎo)一下,對(duì)于數(shù)據(jù)集合 ,經(jīng)過 LLM 模型壓縮傳輸,小帥傳給小美的總數(shù)據(jù)量是多少?具體計(jì)算公式可參考上圖。由圖可看出,傳輸信息總量由兩部分構(gòu)成:一部分是 LLM 模型代碼描述,包括代碼本身、初始化方法以及隨機(jī)種子等信息;另外一部分的求和公式如果展開,如上所述,每個(gè) 圖片 對(duì)應(yīng)的壓縮編碼 bit 數(shù),就是這個(gè) Token 對(duì)應(yīng)的交叉熵?fù)p失,所以,這部分其實(shí)就是 GPT 利用數(shù)據(jù) 圖片 進(jìn)行預(yù)訓(xùn)練的時(shí)候,所有 Token 的損失之和。兩個(gè)部分相加就是數(shù)據(jù)傳輸總量。
圖片
那么,不同的 LLM 模型,是否具備不同的數(shù)據(jù)壓縮能力呢?答案是顯然的。上圖展示了不同大小 LLaMA 模型(從最小的 7B 到最大的 65B)對(duì)應(yīng)的數(shù)據(jù)壓縮能力:對(duì)于相同的訓(xùn)練數(shù)據(jù)總量(比如橫坐標(biāo)的 1000B Tokens 節(jié)點(diǎn)),每個(gè)模型 Loss 曲線覆蓋的面積總數(shù),就是這個(gè)模型對(duì)應(yīng)的數(shù)據(jù)壓縮能力,Loss 曲線覆蓋的面積越小,說明模型壓縮能力越強(qiáng)。有了前面的講解鋪墊,我相信這很好理解,我們可以極端地假設(shè)模型訓(xùn)練時(shí)每個(gè) Batch 只包含一個(gè) Token,那么其所需的編碼 bit 數(shù),就是這個(gè) Token 對(duì)應(yīng)的 loss 數(shù)值,我們對(duì)模型 Loss 面積進(jìn)行積分,就能得到所有 Token 的總 Loss,而這等價(jià)于壓縮這些 Token 所需要的總的壓縮后編碼長度。
從上圖可以看出,規(guī)模越大的 LLaMA 模型,其對(duì)應(yīng)的 Loss 面積越小,意味著這個(gè)模型壓縮率越高,壓縮能力越強(qiáng),而這進(jìn)一步代表模型的智能程度越高。如果粗估的話,可以得出目前 LLaMA 模型的數(shù)據(jù)壓縮率在 14 倍左右,而這是超出專門的數(shù)據(jù)壓縮競賽 Hutter Prize 目前最佳的壓縮率的,目前這個(gè)最佳壓縮率是 8.7 倍。這說明什么呢?如果我們假設(shè)當(dāng)前主流的文本壓縮算法,其壓縮依據(jù)主要來自于詞頻以及重復(fù)出現(xiàn)模式這種表面因素的話,那這多出的壓縮率,很可能代表了 LLM 語言模型對(duì)于文本深層理解,來自于對(duì) AGI 的智能編碼。
進(jìn)一步的思考
上述內(nèi)容,即 Jack Rae 報(bào)告中體現(xiàn)出的 「壓縮即智能」的論證思路。三月份左右我看完分享后大受啟發(fā),覺得 OpenAI 開的腦洞很大,因?yàn)樽约捍_實(shí)從來沒有從數(shù)據(jù)壓縮的角度看待過 LLM 模型,我相信這對(duì)絕大多數(shù)人來說都是一個(gè)很新穎的觀察角度。不過,后來查閱相關(guān)文獻(xiàn)后,發(fā)現(xiàn)這種 “壓縮即智能” 的思路并非 OpenAI 首創(chuàng),其實(shí)已有較長歷史。比如上文提到的旨在鼓勵(lì)研究更好數(shù)據(jù)壓縮算法的 Hutter Prize,創(chuàng)立于 2006 年,獎(jiǎng)項(xiàng)設(shè)立人 Marcus Hutter 即相信數(shù)據(jù)壓縮能力和 AI 智能是一個(gè)等價(jià)的問題,這也是他自己出資設(shè)立這個(gè)獎(jiǎng)項(xiàng)的初衷,而且目前使用 AI 模型做數(shù)據(jù)壓縮已然是個(gè)小的研究方向,有不少相關(guān)論文。
我們可以就這個(gè)思路深入思考兩個(gè)相關(guān)問題。第一個(gè)問題是:上面講述內(nèi)容是以數(shù)據(jù)壓縮的視角來看待 LLM 的智能水準(zhǔn),問題是為何模型壓縮能力越強(qiáng),就代表了它具備更高的智能呢?
最小描述長度原理(Minimum Description Length,MDL)可以解釋這個(gè)問題,這是機(jī)器學(xué)習(xí)中的一個(gè)重要概念,是奧卡姆剃刀原則(「如無必要,勿增實(shí)」體)的形式化表述。MDL 的核心思想是說:假設(shè)我們有很多模型可以對(duì)手上的數(shù)據(jù)作出解釋,那么其中最佳解釋應(yīng)該是對(duì)該數(shù)據(jù)進(jìn)行盡可能短而準(zhǔn)確描述的模型,模型描述長度越短,則其泛化性就會(huì)越好,也就是我們說的越智能。為啥描述越短越智能?因?yàn)檫@個(gè)短描述是從數(shù)據(jù)里抽象出來的內(nèi)在規(guī)律,相對(duì)大量數(shù)據(jù),數(shù)據(jù)內(nèi)在規(guī)律的描述,自然就短得多,而模型若能給出越短的描述,說明這個(gè)模型學(xué)到了更多的內(nèi)在規(guī)律,所以就越聰明。是這個(gè)邏輯,我們來舉個(gè)例子。假設(shè)要傳輸?shù)男蛄惺且蝗f個(gè)連續(xù)質(zhì)數(shù)數(shù)字序列:圖片
質(zhì)數(shù)數(shù)字之間的出現(xiàn)間隔是沒有規(guī)律的,所以小帥只能老老實(shí)實(shí)把這一萬個(gè)數(shù)字編碼傳給小美,但是其實(shí)小帥可以用一句話,比如「輸出從 2 開始的 1 萬個(gè)連續(xù)質(zhì)數(shù)」 ,來描述這些數(shù)字,把這句話壓縮后傳給小美,小美的 LLM 模型看到這句話后,如果足夠聰明的話,就能恢復(fù)出 1 萬個(gè)質(zhì)數(shù)序列,到這里我相信您應(yīng)該能理解 MDL 的含義了。
當(dāng)然,能這么做的前提是:LLM 得理解質(zhì)數(shù)這種很抽象的概念才行。那么,大模型真的能理解這種抽象概念嗎?是否真的只有大模型才能理解類似 「質(zhì)數(shù)」 這種抽象概念,而小模型就不行呢?我做了個(gè)驗(yàn)證,對(duì)大模型和小模型的能力做了個(gè)對(duì)比,為了防止模型單純靠對(duì)訓(xùn)練數(shù)據(jù)中出現(xiàn)的質(zhì)數(shù)序列進(jìn)行記憶來完成這個(gè)任務(wù),我把描述進(jìn)行了一些轉(zhuǎn)換,保證大語言模型在訓(xùn)練中是看不到這種說法的,測試對(duì)應(yīng)的 Prompt 及大小兩個(gè)模型的輸出結(jié)果可參考下圖所示。
圖片
可以看出,GPT 3.5 是學(xué)會(huì)了質(zhì)數(shù)這種抽象概念的,否則這道題很難回答好,如果不理解這個(gè)概念,就會(huì)出現(xiàn)圖右小模型這種不知所云的回答。這一方面說明大模型確實(shí)可以學(xué)習(xí)一些抽象概念,另一方面說明大模型在這方面表現(xiàn)確實(shí)比小模型要好。
另外一個(gè)問題,jack Rae 在報(bào)告中強(qiáng)調(diào) LLM 的這種數(shù)據(jù)壓縮能力是無損的,并反駁了著名科幻小說作家特德姜在年初時(shí)候提出的影響很大的「ChatGPT 是對(duì)互聯(lián)網(wǎng)數(shù)據(jù)的有損壓縮」 觀點(diǎn)。其實(shí)吧,你要仔細(xì)思考一下,會(huì)發(fā)現(xiàn)這種 LLM 是對(duì)數(shù)據(jù)的「無損壓縮」的觀點(diǎn)是有點(diǎn)水分的。如果我們更嚴(yán)謹(jǐn)?shù)貋砜?,?huì)發(fā)現(xiàn)盡管 LLM 訓(xùn)練過程可以看成是對(duì)數(shù)據(jù)的無損壓縮,但是能夠達(dá)成「無損」 的效果,并不單單靠 LLM,其實(shí)是「LLM + 算術(shù)編碼」一起完成的。
如果 LLM 通過學(xué)習(xí)達(dá)到足夠強(qiáng)的智能程度,能夠保證 NTP 預(yù)測后續(xù)文字序列的 loss 是 0,也就是說可以根據(jù)上文 Context,完全精準(zhǔn)預(yù)測后續(xù) Next Token,此時(shí)算術(shù)編碼就不需要了,僅靠 LLM 就能完整地對(duì)數(shù)據(jù)進(jìn)行壓縮和解碼。如果是這種情況,我們說 LLM 的訓(xùn)練過程或者說 LLM 在經(jīng)過訓(xùn)練后,能對(duì)數(shù)據(jù)進(jìn)行 「無損壓縮」,并沒有任何問題。但是,這是理想情況,目前 LLM 能做到這點(diǎn)嗎?肯定是做不到的,所以 LLM 給出的后續(xù) Next Token 預(yù)測肯定會(huì)有錯(cuò)誤,這些被預(yù)測錯(cuò)誤的 Token,其實(shí)就代表了 LLM 壓縮數(shù)據(jù)的信息損失,這種損失是靠算術(shù)編碼額外對(duì)信息進(jìn)行編碼來進(jìn)行補(bǔ)償,才達(dá)成數(shù)據(jù)的「無損壓縮」效果。所以,更精確的說法,看似應(yīng)該是這樣:
數(shù)據(jù)無損壓縮 = LLM 模型的有損數(shù)據(jù)壓縮能力 + 算術(shù)編碼的編碼補(bǔ)償能力
也就是說,起碼目前的 LLM 對(duì)數(shù)據(jù)編碼還是有損的,并不能單靠自己的能力達(dá)到數(shù)據(jù)無損壓縮的目的。至于將來 LLM 是否能夠強(qiáng)大到靠自己就能達(dá)成數(shù)據(jù)無損壓縮,目前仍是未知數(shù)。
數(shù)據(jù)壓縮只是手段,通過這種手段使得 GPT 獲得智能才是目標(biāo),現(xiàn)在的問題是:OpenAI 從基礎(chǔ)理論上指出了手段及目的,但是并未說明一個(gè)更基礎(chǔ)的問題:Next Token Prediction 通過數(shù)據(jù)壓縮來讓 GPT 模型學(xué)到了什么樣的 AGI 智能呢?本文后續(xù)內(nèi)容試圖回答這個(gè)問題。
拼圖游戲:目前已知的一些事實(shí)碎片
若把 LLM 習(xí)得 AGI 智能比做一個(gè)拼圖游戲的話,只能說目前我們手上只有一些有關(guān)它的支離破碎的拼圖碎片,還未能一睹這種機(jī)器智能的全貌。本部分從幾個(gè)不同的角度,收集并介紹現(xiàn)有相關(guān)研究的研究結(jié)論。
GPT 模型對(duì)知識(shí)的提取過程
圖片
我們先來看一下,假設(shè) LLM 模型訓(xùn)練好了,在使用時(shí)輸入 Prompt,GPT 模型是如何把知識(shí)提取出來的。「Dissecting Recall of Factual Associations in Auto-Regressive Language Models」這篇文章對(duì)此做了細(xì)致的研究。如圖所示,假設(shè)輸入的 Prompt 是:「Beat music is owned by」,GPT 可以通過 NTP 返回正確答案:Apple。這個(gè)例子里,「Beat music」 是個(gè)實(shí)體,「owned by Apple」 是這個(gè)實(shí)體對(duì)應(yīng)的某個(gè)屬性。
經(jīng)過研究,發(fā)現(xiàn) GPT 在提取這條知識(shí)的時(shí)候,經(jīng)歷了明顯的三階段過程:首先,單詞 「music」是描述這個(gè)實(shí)體最后的、也是最關(guān)鍵的詞匯,它的信息在順著 Transformer block 往上走的過程中,先通過 Attention 把之前的修飾語「beats」 相關(guān)信息集成到「music」 對(duì)應(yīng)位置。之后,隨著 Transformer 層數(shù)越來越高,通過每個(gè) Transformer Block 的 FFN 層,不斷往「music」對(duì)應(yīng)的 Embedding 里增加信息,所以隨著信息往上層流動(dòng),「music」這個(gè)單詞對(duì)應(yīng)層數(shù)的 Embedding,能夠觸發(fā)越來越多的與「Beat music」 相關(guān) 「屬性」 詞匯。這是第一個(gè)步驟,整個(gè)過程總體發(fā)生在 Transformer 的低層。
第二步,GPT 模型在 「by」單詞這個(gè)位置,也就是 NTP 要產(chǎn)生輸出 token 的最后一個(gè)位置,通過 Attention 把單詞「own」  的信息集成到最后位置。這里需要注意一下,最后一個(gè)單詞對(duì)應(yīng)的 Transformer 位置是比較關(guān)鍵的,因?yàn)樵谒淖钌蠈訒?huì)給出 Next Token 輸出。在推理過程中,GPT 會(huì)把輸入上文中的重要信息通過 Attention 逐步集成到這個(gè)位置上來。這個(gè)操作也發(fā)生在 Transformer 的低層。
第三步,在「by」 單詞位置,也就是最后一個(gè)位置的 Transformer 高層,它在低層已經(jīng)集成了單詞「own」 的信息,這個(gè)信息在高層,通過 Attention 把「Beat music」 對(duì)應(yīng)的屬性「apple」提取出來。具體提取動(dòng)作是通過某個(gè) Attention Head 來做到的,而且這篇文章證明了 Attention Head 里會(huì)編碼 < 實(shí)體 - 屬性 > 信息,具體例子可以參照下圖,這點(diǎn)對(duì)我們來說應(yīng)該是個(gè)新知識(shí)(過去一般認(rèn)為 Attention 主要是用來進(jìn)行信息比較和搬運(yùn)的,它證明了 Attention 也會(huì)存儲(chǔ)某種知識(shí))。
通過以上三步,GPT 完成了對(duì)某條知識(shí)的提取過程。
圖片
另外一個(gè)工作「Understanding Transformer Memorization Recall Through Idioms」 探討了 LLM 是如何提取記憶信息的,包括完全靠記憶需要精準(zhǔn)復(fù)現(xiàn)的成語/諺語(Idioms),以及事實(shí)類知識(shí)。研究結(jié)論是 LLM 對(duì)記憶信息提取可以分為兩個(gè)階段:第一階段是低層的 Transformer Block 把正確答案單詞的排名逐漸提高,直到中間層排名到了第一名;第二階段高層的 Transformer 把正確答案的置信度提高,也就是不斷提高這個(gè)正確答案的分布概率得分。
除了以上兩個(gè)工作,還有一些其它類似的研究知識(shí)提取的工作。如果綜合下現(xiàn)有的研究結(jié)論,我覺得可以大致得出這么一個(gè) GPT 知識(shí)提取的輪廓:當(dāng)訓(xùn)練好 GPT 模型后輸入 Prompt,對(duì)于 Transformer 某個(gè)位置對(duì)應(yīng)的輸入單詞,隨著 Transformer 不斷往上走,GPT 通過 Attention,把這個(gè)單詞上文中與自己有關(guān)的信息集成到自己的 Embedding 里,而每層的 FFN 對(duì)當(dāng)前單詞 Embedding 做變換增加信息,以此方式來不斷觸發(fā) FFN 里存儲(chǔ)的知識(shí)并逐層 Refine 單詞對(duì)應(yīng)的 Embedding(類似上面例子里單詞 「music」的過程)。
Transformer 的 last token 位置也是如此,它的特殊之處在于,從底層到上層,首先會(huì)把整個(gè)輸入上文中最關(guān)鍵的信息,通過 Attention 拷貝到自己的位置,之后通過這個(gè)關(guān)鍵信息來逐步過濾出上文中比較重要的信息。在這個(gè)位置的 Transformer 底層,應(yīng)該有很多候選答案可供輸出,正確答案排名并不靠前,隨著 Transformer 往上走,正確答案排名越來越靠前,而且可以和正確答案競爭的候選答案越來越少,體現(xiàn)為分配給正確答案的概率分布得分越來越高,直到 last token 的最高層,GPT 可以輸出正確答案(類似上面例子中單詞「by」的過程)。
知識(shí)點(diǎn)在 Transformer 中的分布
這部分介紹知識(shí)點(diǎn)在 Transformer 結(jié)構(gòu)中的分布情況,意思是不同類型或特定的知識(shí)點(diǎn),在 Transformer 高中低不同層級(jí)的分布情況。了解這方面的知識(shí),對(duì)于理解 GPT 的內(nèi)在運(yùn)行機(jī)制是非常有幫助的。
在介紹研究結(jié)論前,為了便于理解,我們先說明三個(gè)基礎(chǔ)概念 (可參考 Toy Models of Superposition):單語義(Monosemantic)神經(jīng)元、多語義(Polysemantic)神經(jīng)元及 superposition。
圖片
目前發(fā)現(xiàn) LLM 中存在很多單個(gè)的神經(jīng)元,它們各自只對(duì)輸入里某個(gè)特殊的知識(shí)點(diǎn)產(chǎn)生響應(yīng),也就是說只會(huì)被特定輸入模式激活,對(duì)其它無關(guān)輸入保持沉默,一個(gè)神經(jīng)元編碼一個(gè)知識(shí),完美一一對(duì)應(yīng),這類 Transformer 中的神經(jīng)元被稱為 「單語義神經(jīng)元」(這和人類大腦中的神經(jīng)元作用機(jī)制就比較像了)。與此相反,也有大量神經(jīng)元是多語義編碼的,就是說很多不同語言含義的知識(shí)點(diǎn)都會(huì)激活某個(gè)神經(jīng)元,這類神經(jīng)元被稱為「多語義神經(jīng)元」。上圖給了例子,比如有的神經(jīng)元只有當(dāng)輸入的 Prompt 內(nèi)容是法語寫的,它才有響應(yīng),這是典型的 「單語義神經(jīng)元」;而有的神經(jīng)元會(huì)對(duì)多個(gè)語義差異很大的 2-gram 語言片段都會(huì)有響應(yīng),這是典型的「多語義神經(jīng)元」。
Superposition 概念的含義是:假設(shè)要編碼的特征的數(shù)量 n 遠(yuǎn)遠(yuǎn)多于網(wǎng)絡(luò)參數(shù) d,我們可找到辦法,來用 d 維神經(jīng)元編碼比 d 數(shù)量大得多的 n 個(gè)特征,這種編碼機(jī)制被稱為 superposition,所以它是被發(fā)現(xiàn)存在 Transformer 結(jié)構(gòu)里的一種信息壓縮編碼機(jī)制。
圖片
Superposition 和「多語義神經(jīng)元」 關(guān)系密切,目前發(fā)現(xiàn) LLM 內(nèi)部是這樣做的(參考 Finding Neurons in a Haystack: Case Studies with Sparse Probing):如上圖所示,LLM 的 Superposition 機(jī)制是由多個(gè)「多語義神經(jīng)元」 聯(lián)合構(gòu)成的,每個(gè)神經(jīng)元會(huì)對(duì)輸入中的多個(gè)不同知識(shí)點(diǎn)都有響應(yīng),所以僅僅通過一個(gè) 「多語義神經(jīng)元」 是無法探測當(dāng)前是對(duì)誰在做出響應(yīng),但是如果有多個(gè)對(duì)某個(gè)知識(shí)點(diǎn)都有響應(yīng)的「多語義神經(jīng)元」,在它們的響應(yīng)之上做個(gè)線性組合,就能探測到輸入中我們想識(shí)別的那個(gè)知識(shí)點(diǎn)(上圖中藍(lán)色部分)。也就是說,LLM 通過組合多個(gè)「多語義神經(jīng)元」來對(duì)某個(gè)具體特征或知識(shí)點(diǎn)進(jìn)行編碼。所以,「多語義神經(jīng)元」和知識(shí)點(diǎn)之間的關(guān)系是多對(duì)多的映射,一個(gè)知識(shí)點(diǎn)會(huì)激發(fā)很多對(duì)它進(jìn)行編碼的「多語義神經(jīng)元」,而一個(gè) 「多語義神經(jīng)元」也會(huì)對(duì)多個(gè)輸入知識(shí)點(diǎn)產(chǎn)生響應(yīng)。
了解了上述三個(gè)基礎(chǔ)概念,我們介紹下目前的研究結(jié)論:在訓(xùn)練好的 GPT 模型中,Transformer 底層編碼了大量的具體特征或知識(shí)點(diǎn),比如 n-gram 特征、句法特征等,編碼方式采用上述的由多個(gè) “多語義神經(jīng)元” 組成的 superposition 模式;而隨著 Transformer 層數(shù)加深,具體知識(shí)點(diǎn)逐漸減少,抽象知識(shí)點(diǎn)(比如 「法語」/「質(zhì)數(shù)」等)逐漸增加,且抽象知識(shí)點(diǎn)一般由「單語義神經(jīng)元」 獨(dú)立編碼,且隨著 Transformer 層數(shù)越高,編碼的特征越抽象。換句話說,Transformer 對(duì)特征或知識(shí)點(diǎn)的編碼,存在由低到高越來越抽象的一個(gè)知識(shí)抽象過程,這一現(xiàn)象在 OpenAI 最新發(fā)布的文章「Language models can explain neurons in language models」 也有提及。
另外,「Polysemanticity and Capacity in Neural Networks」這個(gè)文章指出了:在模型學(xué)習(xí)過程中,為了增加模型參數(shù)的利用效率,「單語義神經(jīng)元」 會(huì)被分配給重要特征,「多語義神經(jīng)元」會(huì)分配給不太重要的特征,而對(duì)更加不重要的特征,則模型完全不進(jìn)行編碼。而所謂的「重要性」,指的是對(duì)訓(xùn)練 loss 的影響來說的,也就是說:「單語義神經(jīng)元」 對(duì) NTP 訓(xùn)練時(shí)降低 loss 影響比較大。這說明對(duì)特征或知識(shí)點(diǎn)進(jìn)行抽象,是 NTP 本身為了快速降低 Loss 的一種內(nèi)在驅(qū)動(dòng)力,而這很可能是 GPT 模型通過 Next Token Prediction 任務(wù)產(chǎn)生智能的關(guān)鍵之一。
GPT 中知識(shí)回路存在的證據(jù)
這里介紹 LLM 模型中,完成某個(gè)特定任務(wù)存在對(duì)應(yīng)知識(shí)回路(Circuit)的相關(guān)工作。所謂「回路」,指的是某個(gè)任務(wù)的 Prompt 輸入 Transformer 后,信息從底向上傳播,直到 last token 最高層 Next Token 輸出答案,在網(wǎng)絡(luò)中存在一些完成這個(gè)任務(wù)的關(guān)鍵路徑,信息主要沿著這條路徑向上傳播,在傳播過程中不斷進(jìn)行信息傳遞或知識(shí)加工,以此方式來通過 NTP 完成某項(xiàng)任務(wù)。如果看過后面介紹內(nèi)容,你會(huì)發(fā)現(xiàn) LLM 知識(shí)回路的工作過程,其實(shí)和人類大腦中的某些信息處理回路是很相似的。而大量在 GPT 的 NTP 預(yù)訓(xùn)練過程中形成的各種知識(shí)回路,很可能是揭開 AGI 之謎的另外一把鑰匙。
圖片
「How does GPT-2 compute greater-than?: Interpreting mathematical abilities in a pre-trained language model」 這個(gè)工作主要探討:為何 GPT 模型能夠通過預(yù)訓(xùn)練獲得數(shù)學(xué)能力。具體而言,用的是類似「The war lasted from the year 17YY to the year 17」的 Prompt,GPT 模型可以做到輸出的 Next Token 的年份數(shù)字 XX 大于 YY,這說明它在預(yù)訓(xùn)練中學(xué)會(huì)了數(shù)字間的比較關(guān)系。通過探究,發(fā)現(xiàn)模型在預(yù)訓(xùn)練過程中形成了解決這個(gè)問題的知識(shí)回路,如上圖圖右所示:有兩個(gè)關(guān)鍵部分,第一個(gè)是中間層的某些 Attention Head,比如圖中 a5.h5 代表 Transformer 第 5 層的第 5 個(gè) Attention Head,這些 Attention Head 主要作用是聚焦到 YY 年份并向高層傳播;另外一個(gè)關(guān)鍵是第 8 到 11 層的 MLP 層,這些層的 MLP 完成 「大于」運(yùn)算,所以最后 GPT 能夠正確輸出結(jié)果。而且,中間層的 Attention Head 和上層 MLP 也有相對(duì)應(yīng)的傳遞關(guān)系,比如第 9 層 MLP 主要接收信息來源于 a9.h1,而第 8 層 MLP 的信息來源則比較多??梢钥闯?,信息從下到上形成了一個(gè)特定的傳播路徑。
圖片
如果再深入探究,會(huì)發(fā)現(xiàn)是 MLP 中的一些關(guān)鍵神經(jīng)元完成數(shù)學(xué)運(yùn)算的,如上圖圖右所示,可以探測出第 10 層 MLP 中影響最大的 10 個(gè)神經(jīng)元,這層只用這 10 個(gè)神經(jīng)元就能大致完成 “大于” 運(yùn)算,而左圖則展示了 a7.h10 這個(gè) Attention Head 主要聚焦于關(guān)鍵信息 “YY” 上。另外,該項(xiàng)研究還發(fā)現(xiàn)不僅僅上述 Prompt,如果變換 Prompt 形式,但是體現(xiàn)數(shù)字比較關(guān)系,發(fā)現(xiàn)被激活的也是這條回路,這說明這條回路可能專門用于對(duì)數(shù)字進(jìn)行關(guān)系比較。


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉