大模型的“大腦容量”有多大?科學(xué)家用3.6比特解開(kāi)了這個(gè)秘密 精華
你有沒(méi)有想過(guò),當(dāng)ChatGPT回答你的問(wèn)題時(shí),它的“大腦”里到底裝了多少東西?最近,來(lái)自Meta、谷歌DeepMind、康奈爾大學(xué)等機(jī)構(gòu)的研究人員發(fā)表了一項(xiàng)突破性研究,首次精確測(cè)量出了大語(yǔ)言模型的“記憶容量”。這項(xiàng)研究不僅揭示了AI學(xué)習(xí)的奧秘,還解釋了許多我們?nèi)粘J褂弥杏龅降默F(xiàn)象。
什么是模型的“記憶”?
想象一下你在準(zhǔn)備考試。有些知識(shí)你是真正理解的,比如數(shù)學(xué)公式的推導(dǎo)原理,遇到新題目時(shí)你能靈活運(yùn)用;而有些內(nèi)容你只是死記硬背,比如某些特定的歷史日期或化學(xué)方程式,只能原樣復(fù)述。
大語(yǔ)言模型也是如此——它既會(huì)“理解”語(yǔ)言的一般規(guī)律,也會(huì)“死記硬背”訓(xùn)練數(shù)據(jù)中的具體內(nèi)容。
研究人員將模型的記憶分為兩種:
?一種是“有意記憶”(generalization),就像我們理解數(shù)學(xué)原理一樣,模型學(xué)會(huì)了語(yǔ)言的通用規(guī)律,能夠回答從未見(jiàn)過(guò)的問(wèn)題;
?另一種是“無(wú)意記憶”(unintended memorization),就像死記硬背一樣,模型直接存儲(chǔ)了訓(xùn)練數(shù)據(jù)的具體片段。
這種區(qū)分非常重要。如果一個(gè)模型能回答“2的100次方等于多少”,這可能并不意味著它記住了這個(gè)具體的數(shù)學(xué)題,而是它學(xué)會(huì)了數(shù)學(xué)運(yùn)算的一般方法。但如果它能一字不差地背出某本小說(shuō)的片段,那就是真正的“死記硬背”了。
3.6比特的秘密
經(jīng)過(guò)大量實(shí)驗(yàn),研究人員發(fā)現(xiàn)了一個(gè)規(guī)律:GPT系列模型的每個(gè)參數(shù)大約能存儲(chǔ)3.6比特的信息。這個(gè)數(shù)字聽(tīng)起來(lái)很抽象,讓我們用一個(gè)生活化的比喻來(lái)理解。
如果把模型參數(shù)比作書架上的格子,那么每個(gè)格子大約能裝下3.6比特的“知識(shí)碎片”。一個(gè)擁有10億參數(shù)的大模型,理論上最多能存儲(chǔ)約36億比特的具體信息,大概相當(dāng)于450MB的數(shù)據(jù)——這大約是一部電影的十分之一大小。
有趣的是,研究人員還測(cè)試了精度對(duì)容量的影響。他們發(fā)現(xiàn),從半精度(bfloat16)提升到全精度(float32),模型的存儲(chǔ)容量只從3.51比特增加到3.83比特,遠(yuǎn)小于理論上的2倍提升。這說(shuō)明大部分額外的精度并沒(méi)有用于原始信息存儲(chǔ),而是用于其他計(jì)算過(guò)程。
從死記硬背到融會(huì)貫通
更有意思的一個(gè)發(fā)現(xiàn)是,研究人員發(fā)現(xiàn)了模型學(xué)習(xí)的一個(gè)奇妙現(xiàn)象,類似于我們觀察到的“學(xué)霸效應(yīng)”。
想象一個(gè)學(xué)生在學(xué)習(xí)過(guò)程中的變化:剛開(kāi)始面對(duì)有限的題目時(shí),他只能死記硬背每道題的答案;但當(dāng)學(xué)習(xí)材料增加到一定程度后,他開(kāi)始理解背后的原理,不再需要死記每個(gè)具體案例,而是能夠舉一反三。
大語(yǔ)言模型也經(jīng)歷著同樣的過(guò)程。研究人員通過(guò)訓(xùn)練數(shù)百個(gè)不同規(guī)模的模型,從50萬(wàn)參數(shù)到15億參數(shù),觀察了這個(gè)變化過(guò)程。當(dāng)訓(xùn)練數(shù)據(jù)較少時(shí),模型會(huì)盡力記住每個(gè)具體的句子和段落;但當(dāng)數(shù)據(jù)量超過(guò)模型的“記憶容量”后,模型開(kāi)始“開(kāi)竅”——它不再死記硬背具體內(nèi)容,而是學(xué)會(huì)了語(yǔ)言的普遍規(guī)律。
這個(gè)轉(zhuǎn)折點(diǎn)被研究人員稱為“grokking”時(shí)刻,就像學(xué)生突然開(kāi)竅的那一瞬間。在這個(gè)時(shí)刻之后,模型的“死記硬背”能力下降,但“舉一反三”的能力大幅提升。研究發(fā)現(xiàn),這個(gè)轉(zhuǎn)折點(diǎn)恰好出現(xiàn)在數(shù)據(jù)集大小超過(guò)模型容量的時(shí)候。
AI學(xué)習(xí)中的神奇拐點(diǎn)
研究人員還觀察到了一個(gè)被稱為“雙下降”(double descent)的奇怪現(xiàn)象。這就像一個(gè)學(xué)生的學(xué)習(xí)曲線:剛開(kāi)始時(shí)成績(jī)隨著學(xué)習(xí)時(shí)間增加而提高,但到了某個(gè)點(diǎn)后,成績(jī)可能暫時(shí)下降(因?yàn)殚_(kāi)始接觸更難的內(nèi)容),然后又開(kāi)始上升并達(dá)到新高度。
在AI模型中,當(dāng)訓(xùn)練數(shù)據(jù)量剛好等于模型容量時(shí),模型的測(cè)試表現(xiàn)會(huì)出現(xiàn)一個(gè)明顯的峰值,然后下降,接著又開(kāi)始上升。研究人員發(fā)現(xiàn),這個(gè)現(xiàn)象的根本原因是:當(dāng)數(shù)據(jù)量超過(guò)模型容量時(shí),模型被迫從個(gè)體記憶轉(zhuǎn)向模式識(shí)別,開(kāi)始真正“理解”數(shù)據(jù)的內(nèi)在規(guī)律。
這個(gè)發(fā)現(xiàn)為理解AI的學(xué)習(xí)過(guò)程提供了全新的視角。之前人們一直困惑為什么會(huì)出現(xiàn)雙下降現(xiàn)象,現(xiàn)在我們知道,這其實(shí)是AI從“死記硬背”向“融會(huì)貫通”轉(zhuǎn)變的標(biāo)志。
為什么ChatGPT很難被“套話”?
這項(xiàng)研究還解釋了一個(gè)實(shí)際問(wèn)題:為什么我們很難從ChatGPT等大模型中"套出"訓(xùn)練數(shù)據(jù)的原始內(nèi)容?
答案在于訓(xùn)練數(shù)據(jù)的規(guī)模。研究人員建立了一個(gè)數(shù)學(xué)模型來(lái)預(yù)測(cè)“成員推理攻擊”(判斷某段文字是否在訓(xùn)練數(shù)據(jù)中出現(xiàn)過(guò))的成功率。他們發(fā)現(xiàn),這個(gè)成功率遵循一個(gè)S型曲線:當(dāng)數(shù)據(jù)量遠(yuǎn)小于模型容量時(shí),攻擊幾乎百分之百成功;當(dāng)數(shù)據(jù)量遠(yuǎn)大于模型容量時(shí),攻擊成功率接近隨機(jī)猜測(cè)的50%。
現(xiàn)在的大模型都使用了海量的訓(xùn)練數(shù)據(jù)——遠(yuǎn)遠(yuǎn)超過(guò)了模型的記憶容量。比如某個(gè)80億參數(shù)的模型被訓(xùn)練在15萬(wàn)億個(gè)token上,按照每個(gè)token平均4個(gè)字節(jié)計(jì)算,這相當(dāng)于約60TB的數(shù)據(jù),是模型容量的數(shù)千倍。
就像一個(gè)學(xué)生面對(duì)無(wú)窮無(wú)盡的習(xí)題集,他不可能記住每道題的具體內(nèi)容,只能掌握解題的一般方法。研究人員的預(yù)測(cè)模型顯示,按照目前的訓(xùn)練規(guī)模,想要從主流大模型中進(jìn)行成員推理攻擊幾乎是不可能的,成功率接近50%(即隨機(jī)猜測(cè)的水平)。
哪些內(nèi)容最容易被“死記”?
研究發(fā)現(xiàn):模型最容易“死記硬背”的是那些包含稀有詞匯的文本,特別是非英語(yǔ)內(nèi)容。
研究人員使用TF-IDF(詞頻-逆文檔頻率)來(lái)衡量文本的稀有程度。就像我們更容易記住奇特的事物一樣,模型也更傾向于記住那些在訓(xùn)練數(shù)據(jù)中很少見(jiàn)的內(nèi)容。他們分析了一個(gè)2000萬(wàn)參數(shù)的模型,發(fā)現(xiàn)在最容易被模型記住的20個(gè)文本片段中,除了3個(gè)之外,其余都包含非英語(yǔ)詞匯,主要是日語(yǔ)、中文、希伯來(lái)語(yǔ)和希臘語(yǔ)。
最極端的例子是一個(gè)包含日語(yǔ)詞匯的序列,模型只需要看到一個(gè)日語(yǔ)字符"囚",就能完整地生成整個(gè)序列。這說(shuō)明稀有內(nèi)容確實(shí)更容易被模型“死記硬背”。
這個(gè)發(fā)現(xiàn)提醒我們,雖然模型整體上很難被“套話”,但對(duì)于一些特殊的、稀有的內(nèi)容,特別是少數(shù)語(yǔ)言的文本,我們?nèi)匀恍枰3志琛?/p>
用隨機(jī)數(shù)據(jù)驗(yàn)證理論
為了驗(yàn)證他們的理論,研究人員還進(jìn)行了一個(gè)巧妙的實(shí)驗(yàn):他們讓模型學(xué)習(xí)完全隨機(jī)的比特序列。由于這些序列完全隨機(jī),模型無(wú)法從中學(xué)到任何“規(guī)律”,只能純粹地死記硬背。
在這個(gè)實(shí)驗(yàn)中,他們訓(xùn)練了從50萬(wàn)到15億參數(shù)的各種模型,讓它們學(xué)習(xí)不同長(zhǎng)度的隨機(jī)序列。結(jié)果證實(shí)了他們的理論:每個(gè)參數(shù)確實(shí)能存儲(chǔ)約3.64比特的信息,而且當(dāng)數(shù)據(jù)量超過(guò)模型容量時(shí),記憶效果就達(dá)到了平臺(tái)期,無(wú)法再提升。
這個(gè)實(shí)驗(yàn)特別重要,因?yàn)樗懦恕袄斫狻焙汀胺夯钡挠绊?,純粹測(cè)量了模型的原始存儲(chǔ)能力。結(jié)果與在真實(shí)文本上的實(shí)驗(yàn)高度一致,證明了理論的可靠性。
不同模型架構(gòu)的容量差異
研究人員還測(cè)試了不同模型架構(gòu)對(duì)容量的影響。他們發(fā)現(xiàn),模型的層數(shù)和寬度都會(huì)影響容量,但影響程度不同。
通過(guò)對(duì)比1層到8層、隱藏維度從32到256的各種配置,他們發(fā)現(xiàn)寬度的影響比深度更明顯。這為模型設(shè)計(jì)提供了實(shí)用的指導(dǎo):如果目標(biāo)是最大化信息存儲(chǔ)容量,增加模型寬度可能比增加深度更有效。
預(yù)測(cè)大模型的行為
基于這些發(fā)現(xiàn),研究人員建立了一個(gè)預(yù)測(cè)模型,能夠根據(jù)模型大小和數(shù)據(jù)集規(guī)模預(yù)測(cè)成員推理攻擊的成功率。他們用這個(gè)模型預(yù)測(cè)了GPT-2系列模型的表現(xiàn),并通過(guò)實(shí)際實(shí)驗(yàn)驗(yàn)證了預(yù)測(cè)的準(zhǔn)確性。
預(yù)測(cè)結(jié)果顯示,要讓一個(gè)1.25億參數(shù)的GPT-2模型的成員推理F1分?jǐn)?shù)達(dá)到0.95(幾乎完美),需要將訓(xùn)練數(shù)據(jù)限制在約150萬(wàn)個(gè)樣本;而要降到0.55(接近隨機(jī)猜測(cè)),需要約1.7億個(gè)樣本。實(shí)際實(shí)驗(yàn)結(jié)果與預(yù)測(cè)值的誤差在1-2%以內(nèi),證明了模型的可靠性。
這項(xiàng)研究對(duì)AI的安全性和隱私保護(hù)具有重要意義。它告訴我們,現(xiàn)代大模型由于使用了遠(yuǎn)超其容量的訓(xùn)練數(shù)據(jù),在隱私保護(hù)方面表現(xiàn)得比我們想象的要好。
但同時(shí),研究也提醒我們需要特別關(guān)注稀有內(nèi)容和少數(shù)語(yǔ)言文本的隱私保護(hù)。這些內(nèi)容更容易被模型記住,可能面臨更高的隱私泄露風(fēng)險(xiǎn)。
這項(xiàng)研究不僅幫助我們理解了大語(yǔ)言模型的工作原理,也為未來(lái)的模型設(shè)計(jì)提供了重要指導(dǎo)。
現(xiàn)在我們知道,一個(gè)模型的“記憶容量”是有限的。如果我們想要模型更好地理解和推理,就應(yīng)該用足夠多的數(shù)據(jù)來(lái)“撐滿”這個(gè)容量,迫使模型從“死記硬背”轉(zhuǎn)向“融會(huì)貫通”。這解釋了為什么現(xiàn)在的大模型需要如此龐大的訓(xùn)練數(shù)據(jù)——正是這些海量數(shù)據(jù),讓模型從一個(gè)“背書機(jī)器”進(jìn)化成了真正能夠理解和創(chuàng)造的“智能助手”。
研究還為模型訓(xùn)練提供了實(shí)用的指導(dǎo)原則:當(dāng)你的數(shù)據(jù)量達(dá)到模型容量的100倍以上時(shí),模型就會(huì)進(jìn)入“泛化模式”,主要學(xué)習(xí)規(guī)律而非記憶具體內(nèi)容。這為訓(xùn)練數(shù)據(jù)的規(guī)模提供了科學(xué)的參考標(biāo)準(zhǔn)。
本文轉(zhuǎn)載自???芝士AI吃魚??,作者:芝士AI吃魚
