![]()
文章轉(zhuǎn)載于量子位
作者:henry
別爭(zhēng)了!
世界上第一個(gè)明牌自己是大語(yǔ)言模型的人,可能是香農(nóng)的老婆。
1950年前后的某一天晚上,咱們的信息論鼻祖香農(nóng)跟老婆貝蒂在客廳做了一個(gè)小實(shí)驗(yàn)。
實(shí)驗(yàn)里,香農(nóng)扮演著一個(gè)拿著書本考試的教官,Betty則扮演一個(gè)做做詞語(yǔ)接龍的學(xué)生,根據(jù)香農(nóng)的提示,猜下一個(gè)字母。
![]()
具體的,香農(nóng)會(huì)從書中某一段開始,一個(gè)字母一個(gè)字母往后走。
每到一個(gè)位置,他先不報(bào)答案,而是先問(wèn)貝蒂,下一個(gè)字母是什么?
就這樣,貝蒂猜,香農(nóng)記。
猜錯(cuò)了,香農(nóng)寫下正確字母。猜對(duì)了,他畫一個(gè)短橫。
![]()
這樣一來(lái),就像上面圖里展示的那樣,一段完整的英文被拆成了兩部分:
貝蒂已經(jīng)能預(yù)測(cè)的地方,用短橫帶過(guò);貝蒂預(yù)測(cè)不了的地方,才需要把原字母寫下來(lái)。
乍一看,這畫面有點(diǎn)像什么高知伉儷玩的飯后游戲。
但在3Blue1Brown最新的視頻里,這個(gè)實(shí)驗(yàn)被放回了一條更大的線索里——
它可能是人類歷史上最早的一場(chǎng)真人版next-token prediction。
![]()
更進(jìn)一步,借由香農(nóng)的例子,3Blue1Brown主理人Grant Sanderson還探討了一個(gè)從信息論一路通向大語(yǔ)言模型的問(wèn)題:
為什么預(yù)測(cè)下一個(gè)token這件看起來(lái)再簡(jiǎn)單不過(guò)的事,會(huì)和壓縮、熵,甚至智能扯上關(guān)系?
而答案,可能就藏在貝蒂畫掉的那些短橫里。
1
LLM只是一場(chǎng)猜字母實(shí)驗(yàn)?
盡管Grant的視頻已經(jīng)講得足夠清楚,但為了更平滑一些,咱還是先回到香農(nóng)和貝蒂那個(gè)實(shí)驗(yàn)。
表面上看,香農(nóng)和貝蒂玩的點(diǎn)像雙人語(yǔ)音版填字游戲,一個(gè)給前文,一個(gè)猜下一個(gè)字母。
比如,在英文里t后面很可能跟著h,所以當(dāng)香農(nóng)給出線索t的時(shí)候,貝蒂很可能會(huì)回答h。
換成中文,其實(shí)也差不多。比如,當(dāng)你看到一個(gè)「你」,后面很可能接好,來(lái)組成「你好」。
![]()
但香農(nóng)真正關(guān)心在意的,可能并不是貝蒂猜得準(zhǔn)不準(zhǔn),而是猜對(duì)之后,會(huì)發(fā)生什么。
就像我們開頭提到的,實(shí)驗(yàn)最后得到的那個(gè)轉(zhuǎn)錄版本,真實(shí)字母比原文少得多。
貝蒂猜對(duì)的地方,只剩一個(gè)短橫。貝蒂猜錯(cuò)的地方,才保留原來(lái)的字母。
看上去,字是變少了,但在某種意義上,它包含的信息量沒(méi)有變。
![]()
原因也很簡(jiǎn)單。
如果香農(nóng)能復(fù)制出另一個(gè)一模一樣的貝蒂,再讓她看這份縮短版文本,她理論上仍然可以把原文復(fù)原出來(lái)。
而這,就是「可預(yù)測(cè)性允許壓縮」最直觀的版本。
這很好理解,就像你跟哥們聊天一樣。
一開始表達(dá)同意,你們會(huì)說(shuō)「好的」,到后面變成「OK」,再后來(lái)只剩一個(gè)「k」,到最后甚至只是一個(gè)唐人表情包就足以心領(lǐng)神會(huì)。
表達(dá)越來(lái)越精簡(jiǎn),并不是因?yàn)樾畔⑾Я耍且驗(yàn)殡p方已經(jīng)知道上下文,所以沒(méi)必要把完整形式再打一遍。
不過(guò)相信聰明的大伙已經(jīng)發(fā)現(xiàn)了,香農(nóng)這個(gè)實(shí)驗(yàn)有點(diǎn)問(wèn)題:
人不是機(jī)器。貝蒂這次猜對(duì)的字母,下次未必還會(huì)猜對(duì)。一個(gè)人兩次面對(duì)同一段前文,也未必會(huì)給出完全一樣的答案。
所以,雖然這個(gè)實(shí)驗(yàn)?zāi)苷f(shuō)明語(yǔ)言可以被預(yù)測(cè),所以語(yǔ)言可以被壓縮,但它還不能精確測(cè)量語(yǔ)言到底有多少信息。
于是乎,香農(nóng)后來(lái)把這個(gè)實(shí)驗(yàn)做得更系統(tǒng)。
![]()
在后續(xù)發(fā)表的論文Prediction and Entropy of Printed English中,香農(nóng)找來(lái)更多受試者,不再只記錄猜對(duì)還是猜錯(cuò),而是記錄一個(gè)人需要猜多少次,才能猜中正確的下一個(gè)字母。
![]()
猜一次就中,說(shuō)明這個(gè)字母在當(dāng)前上下文里很容易預(yù)測(cè),如果猜很多次才中,就說(shuō)明它更意外。
換句話說(shuō),香農(nóng)其實(shí)在用一套方法,把猜了幾次轉(zhuǎn)換成受試者心里對(duì)正確字母的隱含概率。
這一步很關(guān)鍵。
因?yàn)橥粋€(gè)位置,不同人會(huì)給出不同猜法。有人第一次就猜中,有人猜到第五次才猜中。差別不在字母本身,而在每個(gè)人腦子里那套對(duì)英文的判斷。
所以,香農(nóng)測(cè)的不是書本上的靜態(tài)詞頻,他測(cè)的是人如何根據(jù)自己的上下文來(lái)分配概率。
看到th,下一個(gè)字母可能是e,也可能是a。到底先猜哪個(gè),猜到第幾次才輪到正確答案,背后都是這個(gè)人對(duì)英文的理解在排序。
![]()
到這,相信你也看出來(lái)了。
香農(nóng)這是把人當(dāng)成語(yǔ)言模型整了,而他的妻子Betty,可能就是第一個(gè)明牌自己在做next-token prediction的人。
![]()
只不過(guò)那個(gè)模型不是Transformer,是人腦。
這些人腦知道語(yǔ)法、常識(shí)、上下文、語(yǔ)感,也知道一段英文接下來(lái)大概率會(huì)怎么走。
而香農(nóng)干的,就是不斷地追問(wèn):下一個(gè)字母是什么?
1
預(yù)測(cè)和壓縮,大模型的一體兩面
到這里,貝蒂的任務(wù)其實(shí)就已經(jīng)完成了:
她用自己的模型(大腦),劃掉了一段文本里可以被預(yù)測(cè)的部分。
后面香農(nóng)找來(lái)更多受試者,本質(zhì)上也都是在做同一件事:
把能夠預(yù)測(cè)的部分劃掉,只留下那些預(yù)測(cè)不了、必須寫出來(lái)的字母。
于是,原本的長(zhǎng)文本,就這樣被壓縮成了一份更短的新文本。
所以,順理成章的,我們會(huì)想:
假如一個(gè)人,讀過(guò)一本書,就能靠自己的語(yǔ)言經(jīng)驗(yàn),預(yù)測(cè)書里一部分字母,從而把它壓縮得更短;
那么,有沒(méi)有一個(gè)模型,能吃下整個(gè)互聯(lián)網(wǎng),然后預(yù)測(cè)各種上下文里的空白呢?
或者換一個(gè)更AI的說(shuō)法:模型能不能把語(yǔ)言里的規(guī)律,壓進(jìn)自己的參數(shù)里?
答案是肯定的,但先別急著往大模型上靠。
在這之前,Grant視頻里還有一個(gè)更底層、也更值得探討的問(wèn)題:
怎么判斷一種壓縮方式,到底好不好?
![]()
最簡(jiǎn)單的標(biāo)準(zhǔn)當(dāng)然是:越短越好。
如果一段信息里還有規(guī)律可找,還有冗余可刪,那它就還能被繼續(xù)壓縮。
反過(guò)來(lái)說(shuō),如果一段信息已經(jīng)被壓縮到極限,所有能預(yù)測(cè)、能概括、能利用的規(guī)律都被榨干了,最后剩下的是什么?
沒(méi)錯(cuò),就是信息。
在香農(nóng)那里,信息有個(gè)經(jīng)典的定義:
一件事到底有多出乎意料。
如果一句話的下一個(gè)字母幾乎已經(jīng)板上釘釘,那它就沒(méi)攜帶多少新信息。
但如果下一個(gè)字母完全猜不到,它就真的需要被寫出來(lái)。
這也是為什么Grant會(huì)說(shuō),一個(gè)理想的壓縮算法,壓到最后,輸出應(yīng)該看起來(lái)像隨機(jī)噪聲。
因?yàn)椋肼暃](méi)有模式。
每一位都像獨(dú)立拋硬幣,50%是0,50%是1,彼此之間沒(méi)有任何可利用的關(guān)系。
![]()
沒(méi)有模式,就沒(méi)有規(guī)律可學(xué);沒(méi)有規(guī)律可學(xué),就沒(méi)有冗余可刪;沒(méi)有冗余可刪,也就沒(méi)有繼續(xù)壓縮的空間。
所以,隨機(jī)噪聲不是因?yàn)椤竵y」才重要。它重要,是因?yàn)樗砹艘环N極限狀態(tài):
所有可預(yù)測(cè)的東西都已經(jīng)被拿走了,剩下的每一位都必須被傳輸。
到這里,預(yù)測(cè)和壓縮這兩件事也就真正扣上了。
預(yù)測(cè),是在問(wèn):哪些部分可以不用寫?
壓縮,是在做:把不用寫的部分刪掉。
而信息,就是最后那些無(wú)論如何都必須寫下來(lái)的東西。
1
信息量
如果你看到這里,香農(nóng)那個(gè)著名公式也就不再像一個(gè)憑空冒出來(lái)的數(shù)學(xué)定義了。
假設(shè)一條消息出現(xiàn)的概率是p,那么它的信息量就是-log?(p)。
根據(jù)這條曲線,發(fā)生概率越小,信息量越大;發(fā)生概率越大,信息量越小。
![]()
用剛才那套話說(shuō)就是:越容易被預(yù)測(cè)出來(lái)的東西,信息量越小。越難以預(yù)測(cè)的東西,信息量越大。
而從壓縮的角度看,這個(gè)公式問(wèn)的其實(shí)是:
為了把這條消息從所有可能性里區(qū)分出來(lái),理論上至少需要多少 bit?
這就是香農(nóng)最厲害的地方。他把「預(yù)測(cè)不了的部分」,變成了可以計(jì)算的東西。
但問(wèn)題在于,現(xiàn)實(shí)生活中,我們很少只面對(duì)一條消息。更多時(shí)候,我們面對(duì)的是一整套可能性。
視頻里,Grant舉了機(jī)器人上下左右的例子。機(jī)器人收到的指令,不只是動(dòng)和不動(dòng),而是上、下、左、右四種可能。
![]()
如果四個(gè)方向出現(xiàn)得一樣頻繁,那它們也就一樣難猜。
這時(shí)最自然的編碼方式,就是給每個(gè)方向分配同樣長(zhǎng)的bit。
比如:上是00,下是01,左是10,右是11。每條指令固定2bit,簡(jiǎn)單直接。
![]()
但如果上出現(xiàn)得最多,下次之,左和右更少,那最高效的編碼方式就變了。
這時(shí),我們就沒(méi)必要讓每個(gè)方向都占同樣長(zhǎng)的編碼。
常見的方向,可以用更短的碼字表示。少見的方向,則可以用更長(zhǎng)的碼字表示。
只要保證每個(gè)碼字不會(huì)互相混淆,也就是不會(huì)讀著讀著不知道該在哪里斷開,就能讓整體平均長(zhǎng)度變短。
視頻里就是通過(guò)這種變長(zhǎng)編碼,把平均每條指令需要的bit數(shù),從固定編碼的2 bit,降到了1.75bit。
![]()
這就是壓縮里非常核心的一條直覺(jué):
概率越高的消息,應(yīng)該用越短的編碼;概率越低的消息,才值得用更長(zhǎng)的編碼。
那么推廣開來(lái),我們接下來(lái)要問(wèn)的就不再是某一條消息有多少信息量。
而是在這一整套分布里,每來(lái)一個(gè)新符號(hào),平均還有多少東西必須寫下來(lái)?
![]()
這種在某個(gè)分布下,每來(lái)一個(gè)新符號(hào),平均還剩多少必須寫下來(lái)的東西,也被稱作熵。
熵越低,說(shuō)明系統(tǒng)越容易預(yù)測(cè),越好壓縮。熵越高,說(shuō)明系統(tǒng)越隨機(jī),越難壓縮。
如果四個(gè)方向完全一樣常見,機(jī)器人下一步往哪走就很難猜,熵會(huì)更高。
同理,語(yǔ)言也是一樣。只不過(guò)語(yǔ)言的可能性更多,上下文更長(zhǎng),麻煩也更大。
1
從熵到loss:大模型到底在壓縮什么?
與機(jī)器人上下左右不同,大語(yǔ)言模型需要成千上萬(wàn)個(gè)token備選中選擇最可能的下一個(gè)。
同時(shí),它也不是孤立選擇,而是嚴(yán)重依賴上下文。
所以,語(yǔ)言的熵本質(zhì)上問(wèn)的是:在給定前文之后,下一個(gè)token平均還有多少不確定性?
![]()
從壓縮的角度來(lái)看,就是用這個(gè)模型來(lái)壓縮真實(shí)文本,平均還要花多少bit,才能把下一個(gè)token寫出來(lái)?
這也就是為什么,大模型訓(xùn)練里常見的交叉熵?fù)p失,天然會(huì)和壓縮連在一起。
模型給真實(shí)token的概率越高,說(shuō)明它越不意外。越不意外,信息量就越低。信息量越低,編碼它就越省。
所以,交叉熵越低,模型就越像一個(gè)更好的壓縮器。
與此同時(shí),模型越能預(yù)測(cè)下一個(gè)token,就越說(shuō)明它已經(jīng)捕捉到了語(yǔ)言里的可重復(fù)結(jié)構(gòu)。
語(yǔ)法、搭配、格式、事實(shí)、代碼習(xí)慣、對(duì)話模式、推理套路,甚至一部分世界常識(shí),都藏在這件事里面。
當(dāng)然,Grant表示,這并不意味著:壓縮可以粗暴地等同于智能。
ZIP很會(huì)壓文件,但沒(méi)有人會(huì)說(shuō)ZIP在思考。
更謹(jǐn)慎的說(shuō)法是:智能至少包含一種能力——
抓住世界里可預(yù)測(cè)的結(jié)構(gòu)。
這也是“壓縮即智能”最值得琢磨的地方。
它不是說(shuō),只要能壓縮,就擁有智能。
而是說(shuō),如果一個(gè)系統(tǒng)真的能把復(fù)雜世界里的規(guī)律壓進(jìn)一個(gè)更短的表示里,并且能在新上下文里繼續(xù)用它預(yù)測(cè),那它至少已經(jīng)碰到了智能的一部分。
這時(shí)再回頭看開頭那張畫面,就不只是香農(nóng)和貝蒂在家玩猜字母了。
貝蒂猜對(duì)的地方,香農(nóng)畫一個(gè)短橫。七十多年后,大語(yǔ)言模型猜對(duì)的地方,loss降低一點(diǎn)。
短橫變成了loss,書頁(yè)變成了互聯(lián)網(wǎng)。
坐在桌邊猜字母的人,變成了GPT。
它們都在回答同一個(gè)問(wèn)題:
下一個(gè)符號(hào),能帶來(lái)多少驚訝!
[1]https://www.youtube.com/watch?v=l6DKRf-fAAM&t=745s
點(diǎn)個(gè)“愛(ài)心”,再走 吧
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.