本文闡述筆者對LLM的一些看法,主要觀點如下:
ChatGPT的突破主要在于規(guī)模帶來的質(zhì)變和模型調(diào)教方式的發(fā)明。
LLM融合了實現(xiàn)人工智能的三條路徑。
LLM的開發(fā)需要結(jié)合第三者體驗和第一者體驗。
LLM能近似生成心智語言。
LLM需要與多模態(tài)大模型結(jié)合,以產(chǎn)生對世界的認識。
LLM本身不具備邏輯推理能力,需要在其基礎上增加推理能力。
1.LLM強大之所在
1.1LLM的主要突破
ChatGPT和GPT4為代表的LLM有以下主要手段。
模型:Transformer擁有強大的表示能力,能對具有組合性(compositinality)的語言進行很好的表示和學習。
預訓練(pre-trning):使用大規(guī)模文本數(shù)據(jù)進行語言建模(language modeling),學習進行的是數(shù)據(jù)壓縮,也就是單詞序列的生成概率最大化或預測誤差最小化。
監(jiān)督微調(diào)SFT(supervised fine tunning):學習的是輸入到輸出的映射,X→Y,或者是輸入到輸出的映射及產(chǎn)出過程X,C_1?,C_n→Y,學習到模型的基本行為。這里,C_1?,C_n代表思維鏈。
基于人類反饋的強化學習RLHF(reinforcement learning from human feedback):根據(jù)人的反饋,調(diào)整模型的整體行為。
ChatGPT和GPT4,相比傳統(tǒng)的深度學習技術(shù),如BERT,主要是在智能性和通用性上取得了巨大突破。具備語言、知識、簡單推理能力,能夠很好地近似人的智能行為。不需要標注數(shù)據(jù)就可以在不同領域完成不同任務,也就是進行零樣本或小樣本學習。
LLM帶來的巨大進步,所能產(chǎn)生的效果是之前我們大多數(shù)人都沒有能預見到的。究其原因,一是使用大數(shù)據(jù)大模型大算力,規(guī)模帶來了質(zhì)的變化。ChatGPT有175B參數(shù),300B的token做訓練。而之前的模型參數(shù)規(guī)模超過1B的都不多。二是Open開發(fā)出了一套調(diào)教大模型的方法,包括基本步驟、技巧和工程實現(xiàn)。利用語言建模的機制將人的知識和能力輸入給大模型。大規(guī)模系統(tǒng)的工程實現(xiàn)和模型的調(diào)教方法成了Open的核心競爭力。這一點可以從相關(guān)技術(shù)的演進過程中看出。
1.2歷史演進
ChatGPT和GPT4技術(shù)的一個源頭是生成式對話。
從2012年到2017年在華為諾亞方舟實驗室我們對對話進行了研究,2015年開發(fā)了領域第一個基于序列到序列seq2seq的生成式對話系統(tǒng)Neural Responding Machine。當時的序列到序列模型還是基于LSTM的。但是即使是這樣的模型,也能生成自然的中文。表1給出生成的對話例子。使用4百萬微博數(shù)據(jù)訓練的7千萬參數(shù)的這個模型,對給定一個發(fā)話,可以生成一個回復,形成一輪對話。表中給出top5的幾個回復??梢钥闯鲇行┗貜褪呛线m的,有些是不合適的。
為解決序列到序列有時產(chǎn)生不合理結(jié)果的問題,我們于2017年開發(fā)了基于深度強化學習的方法,對序列到序列seq2seq的學習結(jié)果做進一步的調(diào)優(yōu)。與RLHF有相同的算法,先學習獎勵模型,然后基于策略梯度,調(diào)節(jié)整個序列到序列模型(策略模型)。模型也是基于LSTM的。當時的研究發(fā)現(xiàn),加上深度強化學習的微調(diào),可以把序列到序列的生成結(jié)果做得更好。
Google的研究團隊于2017年發(fā)表了Transformer模型。序列到序列的生成開始轉(zhuǎn)向使用Transformer。由于Transformer強大的表示和學習能力,生成式對話的效果有了大幅度的提升,也從單輪對話的生成逐漸發(fā)展到多輪對話的生成。
2018年Open團隊發(fā)表了GPT-1模型。其基本想法是,先訓練一個基于Transformer的大規(guī)模語言模型,在其基礎上通過有監(jiān)督的微調(diào)SFT方法,學習序列到序列模型,把自然語言的理解和生成任務都轉(zhuǎn)化為序列到序列生成的任務,在一個模型上實現(xiàn)所有的任務,包括生成式對話。之后又于2019年發(fā)表了GPT-2,2020年發(fā)表了GPT-3,逐步發(fā)展到ChatGPT和GPT-4。
傳統(tǒng)的相對小的生成式模型也可以生成自然的人類語言,甚至是基于LSTM的。因為學習的目標是單詞序列的預測誤差最小化。但生成的自然語言所描述的內(nèi)容有很多在現(xiàn)實中是不會發(fā)生的或者不合理的,也就是有嚴重的幻覺(hallucination)。而大規(guī)模語言模型,由于學習手段和規(guī)模,其生成的自然語言所描述的內(nèi)容,在現(xiàn)實中是很容易發(fā)生的,甚至是合理的,幻覺現(xiàn)象也得到比較有效的控制。
ChatGPT之前,業(yè)界開發(fā)出了一系列的生成式大模型,做生成式對話等任務。整體觀察的現(xiàn)象是能更好地完成各種任務,但是能力都沒有能夠達到ChatGPT的水平。仔細閱讀GPT-3和InstructGPT的論文,認真觀察ChatGPT等各種LLM的結(jié)果,讓人感到Open的核心競爭力是他們開發(fā)了一整套語言大模型的調(diào)教方法和工程實現(xiàn)方法。調(diào)教方法包含預訓練、SFT、RLHF等基本步驟,更重要地,包含高質(zhì)量大規(guī)模數(shù)據(jù)的準備,將數(shù)據(jù)一步步喂給模型的訓練細節(jié)。
2.LLM的特點
2.1結(jié)合了人工智能三條路徑
實現(xiàn)人工智能可以考慮到以下三條路徑:
輸入經(jīng)驗知識:人將知識通過規(guī)則等形式教給計算機,讓計算機進行智能性處理。
實現(xiàn)人類大腦:解明人腦的機制,基于相同的原理實現(xiàn)人類智能。
從數(shù)據(jù)中學習:通過數(shù)據(jù)驅(qū)動機器學習的方法模擬人類智能。
圖1.實現(xiàn)人工智能的三條路徑
人工智能傳統(tǒng)的符號處理屬于第1條路徑。機器學習屬于第3條路徑。深度學習是受人腦啟發(fā)的機器學習,屬于第3條路徑,但也借鑒了第2條路徑。
第1條路徑最容易想到,但是人工智能的歷史證明,它有很大的局限性。第2條路徑依賴于腦科學的進步,目前研究進展緩慢,也是非常困難的。第3條路徑看上去不是很直接,但是是目前實現(xiàn)人工智能的主要手段。
筆者認為LLM主要屬于第3條路徑,但也借鑒了第2條路徑,兼具第1條路徑的特點,因為LLM是深度學習,模型中的知識和能力是人通過精選的數(shù)據(jù)和巧妙的訓練方法授予的。三條路徑的融合使LLM成為當前實現(xiàn)人工智能的最強大手段。
2.2第三者體驗和第一者體驗
對外部世界的認識和理解,我們可以站在第三者的角度,觀察現(xiàn)象,總結(jié)規(guī)律,分享結(jié)果,屬于第三者體驗(third person expeirence)。科學是在第三者體驗基礎上建立起來的。我們每個人的內(nèi)心感受和想法是自己的精神活動,很難與他人分享,只能大概描述,屬于第一者體驗(first person experience)。
可以認為符號處理是基于開發(fā)者第一者體驗的,而機器學習是基于開發(fā)者第三者體驗的。比如,圍棋大師總結(jié)下棋的經(jīng)驗,定義規(guī)則,在其基礎上開發(fā)圍棋系統(tǒng),就是基于第一者體驗的。觀察圍棋大師下棋,從其下棋數(shù)據(jù)中自動學習規(guī)律,開發(fā)圍棋系統(tǒng),就是基于第三者體驗的。
有趣的是,LLM的開發(fā)基于第三者體驗,也結(jié)合第一者體驗。因為模型是基于深度神經(jīng)網(wǎng)絡,使用大規(guī)模數(shù)據(jù),通過預測誤差最小化的方式學到的,這些都可以認為是基于第三者體驗的。但是在學習過程中的數(shù)據(jù)收集,數(shù)據(jù)清洗,數(shù)據(jù)標注,以及在推理過程中使用的提示(prompt),上下文學習(in context learning),都需要開發(fā)者基于自己的經(jīng)驗,有效地將知識和能力提供給模型,這應該看作是基于第一者體驗。這一點與其他的機器學習有本質(zhì)的不同。這也就意味著開發(fā)LLM,既需要能夠觀察數(shù)據(jù)和模型的統(tǒng)計指標,比如scaling law,又要能夠站在使用者的角度準備數(shù)據(jù),調(diào)教模型。而后者的技巧需要很多觀察和摸索才能掌握。
2.3LLM的優(yōu)點和局限
LLM在一定程度上解決了通用性問題,進一步提高了智能性。大數(shù)據(jù)、大模型返回的結(jié)果大概率是現(xiàn)實中應該發(fā)生的而且是合理的。開發(fā)者通過預訓練、SFT、RLHF、Prompt等方式,調(diào)教模型,可以大大提高模型的能力。
LLM已經(jīng)非常強大。但也有大家指出的明顯需要解決的問題:1.如何優(yōu)化模型,也就是降低訓練和使用成本,同時擴大可處理問題的規(guī)模。2.如何保證模型生成內(nèi)容的真實性,也就是避免幻覺。3.如何構(gòu)建可信賴大模型,也就是保證模型生成結(jié)果的有用性,安全性等。
筆者在ChatGPT出現(xiàn)之前,曾經(jīng)指出深度學習需要更多地借鑒人腦的處理機制,需要更多的理論指導。這在LLM時代也依然是成立的。LLM規(guī)模已經(jīng)極其龐大,可能需要新的理論,對模型的能力進行分析和解釋。當模型達到一定規(guī)模以后,整個系統(tǒng)的Dynamics呈現(xiàn)了完全不同的規(guī)律,需要進一步研究。
3.重要研究課題
總結(jié)起來,LLM時代有以下重要研究課題。
LLM的優(yōu)化
LLM的真實性
可信賴LLM與倫理
LLM的理論
多模態(tài)大模型
LLM+邏輯推理
智能體(agent)
面向未來,多模態(tài)大模型、LLM加邏輯推理、智能體等都是重要的研究課題。下面重點討論前兩個課題。
4.從人類智能角度看LLM
4.1人腦、心智、意識
人腦是一個巨大的神經(jīng)網(wǎng)絡,推測有1千億個神經(jīng)元,1千萬億個突觸。腦神經(jīng)網(wǎng)絡由諸多去中心化(decentralized)的子網(wǎng)絡組成,每個子網(wǎng)絡負責一個特定的功能,子網(wǎng)絡之間有一定的連接。神經(jīng)網(wǎng)絡進行的是并行處理,處理速度快,在下意識中進行。人腦神經(jīng)網(wǎng)絡的一部分被激活時產(chǎn)生某種狀態(tài),稱作神經(jīng)表示(neural representation)。
心智(mind)是我們每個人體驗的內(nèi)心的感知和認知,既有意識的部分又有下意識的部分,主要是意識層面的。目前腦科學的一個有利假說是,意識是人腦整體信息同步的機制,信息同步在工作空間(workspace)中進行。意識中的信息處理是串行處理,處理速度慢。
具身認知論(emboddied cognition)認為,在人的思維過程中,在意識中的處理產(chǎn)生的是表象(image),心智計算論(computational theory of mind)認為意識中的處理產(chǎn)生的是心智語言(mental language,mentalese)[8]。目前沒有定論,本文根據(jù)需要,同時借用兩者的觀點。
圖2人腦和心智的組成
圖2給出了人腦和心智的組成。下意識中的腦(神經(jīng)網(wǎng)絡)分成不同的腦區(qū)負責聽覺、視覺、運動、語言,數(shù)學等功能。意識得到下意識神經(jīng)網(wǎng)絡處理的結(jié)果,通過心智語言表示出來,或者產(chǎn)生表象,在工作空間里進行各種處理。
心智語言是認知科學家福多、平克等提出的假說。一個重要特點是,自然語言是有歧義的,而心智語言沒有歧義。當我們理解某一個概念的時候,腦中喚起所有相關(guān)的多模態(tài)信息進行消歧處理,得到心智語言的表示。
4.2LLM的統(tǒng)一實現(xiàn)
目前為止,自然語言處理有六個大的任務,包括分類、匹配、標注和語義分析、序列生成、序列到序列、序貫決策。
分類:從文字序列到標簽的映射,如文本分類。
匹配:文字序列與文字序列的匹配,如搜索、閱讀理解。
標注和語義分析:文字序列到標簽序列或結(jié)構(gòu)表示的映射,如分詞、詞性標注、句法分析。
序列生成:文字序列的生成,也就是基于語言模型的生成。
序列到序列(seq2seq):文字序列到文字序列的轉(zhuǎn)化,如機器翻譯、生成式對話、摘要。
序貫決策:基于已有的文字序列產(chǎn)生新的文字序列,如多輪對話。
前三個是語言理解任務,后三個是語言生成任務。理解任務的輸出是類別標簽等,可以認為是心智語言的表示。
所有的任務都可以用序列到序列seq2seq模型實現(xiàn)。語言理解是自然語言到心智語言的seq2seq。語言生成是心智語言到自然語言的seq2seq。語言轉(zhuǎn)換是一種自然語言到另一種自然語言的轉(zhuǎn)換。
GPT3、ChatGPT等用大量文章數(shù)據(jù)做預訓練,然后用seq2seq數(shù)據(jù)做微調(diào),但seq2seq數(shù)據(jù)也轉(zhuǎn)換成序列數(shù)據(jù)的形式[seq:seq],即把兩者拼接起來。注意ChatGPT等在生成的時候并不區(qū)別是自然語言還是內(nèi)部表示。內(nèi)部表示也可以是程序代碼。
圖3LLM實現(xiàn)所有自然語言處理任務
圖3描述基于LLM的語言理解,語言生成,語言轉(zhuǎn)換(翻譯)的LLM。比如,思維鏈(chn of thought)就可以認為是心智語言的內(nèi)容?;贚LM的語言理解就是把自然語言轉(zhuǎn)化為心智語言。注意:心智語言應該是沒有歧義的,而用LLM生成的內(nèi)容,包括思維鏈,經(jīng)常是有歧義的。
所以,可以認為LLM用于語言理解時生成的內(nèi)容是心智語言的近似。自然語言表示心智語言的好處是人們可以很容易定義和標注數(shù)據(jù),如思維鏈數(shù)據(jù),但是缺點是不能保證不產(chǎn)生歧義。6.1節(jié)有一個數(shù)學解題的例子,也可以用程序表示心智語言,就沒有歧義的問題。
5.LLM與多模態(tài)處理
5.1人的語言理解和世界理解
人的語言理解可以從兩個角度定義,一個是概念,另一個是功能。如果是概念,理解一個詞語或者是一句話,意味著把記憶中的相關(guān)概念和事件喚起,并把它們聯(lián)系起來,這是在意識中產(chǎn)生表象或由心智語言的表示。理解的結(jié)果產(chǎn)生語義落實(grounding),是沒有歧義的。因為人腦在理解中做了消歧。
有很多證據(jù)表明,人的語言理解過程是通過視覺、聽覺等多模態(tài)處理進行的。概念相關(guān)的視覺、聽覺表征分別記憶在視覺、聽覺的腦區(qū)。當相關(guān)概念被喚起的時候,在意識中產(chǎn)生多模態(tài)的表象。比如,被問到「大猩猩是不是有鼻子」時,要回答這個問題,我們腦子里會展現(xiàn)出大猩猩的視覺表象。
另一方面,人對世界的理解也是通過語言的。人通過視覺、聽覺、觸覺、味覺、嗅覺從外界環(huán)境獲取信息。世界理解通常是將多模態(tài)信息與語言聯(lián)系到一起的過程。在這個過程中也會在意識中產(chǎn)生表象或心智語言的表示。比如,看到桌子上的物體,會識別是「杯子」,「圓珠筆」等。
5.2多模態(tài)大模型
大家關(guān)注的一個問題LLM是否實現(xiàn)了人的語言理解,LLM是否建立了世界模型。筆者的回答:是也不是。
LLM建立的對世界的認識完全是基于語言的,從語言數(shù)據(jù)中學習,將學到的知識存儲于語言模型。所以當問到關(guān)于世界的任何問題,LLM都能回答,雖然有時是有幻覺的。知識的存儲的方式也與人不一樣,不是基于實體和概念,而是存儲在Transformer參數(shù)之中。
可以預見,當LLM和多模態(tài)大模型結(jié)合時,就能產(chǎn)生與人更接近的世界模型。這時知識也會通過實體和概念等聯(lián)系起來。特別是未來,機器人能通過與世界互動,獲得具身的多模態(tài)信息時,其產(chǎn)生的多模態(tài)大模型就應該能更接近人類的世界模型。注:世界模型并沒有大家都接受的嚴格定義。
因此,多模態(tài)處理應該是LLM之后未來人工智能發(fā)展的重要方向。多模態(tài)研究最近也有很多進展。比如,視覺語言模型(vision language model)方面,Open開發(fā)的CLIP模型是視覺語言對齊上最有代表性的模型。字節(jié)跳動也開發(fā)了X-VLM模型,在細粒度的多模態(tài)理解任務上有最好的表現(xiàn)。
6.LLM與數(shù)學能力
6.1人的數(shù)學能力
數(shù)學能力包括幾種能力,有邏輯推理、算術(shù)計算、代數(shù)計算、幾何概念理解等。
數(shù)學能力:從哲學角度看
在西方哲學中,數(shù)學一直被認為是一種人類天生具有的獨立的能力。
亞里士多德認為哲學理論可以分為數(shù)學、自然學(physics)和形而上學(metaphysics)。在古希臘,數(shù)學被認為獨立于「科學」的學科,因為其抽象性和邏輯性。
圖4將2×2的正方形面積擴大一倍的方法
柏拉圖在《美諾篇》中介紹了蘇格拉底與一位奴隸少年的對話。蘇格拉底通過不斷提問的方式,引導奴隸少年解決了如何把一個2×2的正方形的面積擴大一倍的數(shù)學問題(見圖4)。蘇格拉底試圖證明,人的數(shù)學思維能力,更一般地,人的理性是生來具有的。
康德在《純粹理性批判》中主張人的推理能力是先天的,他稱之為先驗綜合判斷,其中包括數(shù)學推理,比如計算5+7=12。
數(shù)學能力:從腦科學角度看
近年腦科學和認知科學的研究發(fā)現(xiàn),人的數(shù)學基本能力是先天的,如基本的計算能力。數(shù)學思維主要涉及一些特定的腦區(qū)。
有這樣的實驗,4個月的兒童,讓他們看到把一個球滾到屏風后面,再滾一個球過去,當把屏風挪開的時候,如果他們看到的留下的不是兩個球而是一個球,都會露出非常吃驚的表情。說明他們知道1+1=2。
遞歸運算是數(shù)學的核心能力,猜測是人天生就有的。腦科學家發(fā)現(xiàn)人腦頂葉有一個腦區(qū),其主要功能是數(shù)學思維,具體的機理仍不清楚,需要今后進一步研究。
當然不是所有的數(shù)學能力都是先天的,也有后天習得的數(shù)學能力。研究發(fā)現(xiàn),數(shù)學家的部分視覺腦區(qū)在后天的學習過程中被再利用于數(shù)學。
數(shù)學思維:科學家的自省
數(shù)學思維會經(jīng)常上升到意識??茖W家們經(jīng)常把自己的數(shù)學思維過程描述為意識中的與數(shù)學相關(guān)的表象的操作過程,這些表象與數(shù)學概念密切聯(lián)系在一起。對應著大腦神經(jīng)網(wǎng)絡怎樣的計算尚不清楚。
愛因斯坦曾這樣反思自己的數(shù)學思維過程,「詞匯或者語言,無論是書面形式還是口頭形式,似乎在我的思維中并沒有發(fā)揮任何作用。作為思維元素的實體是某些符號和或多或少清晰的表象,可以自發(fā)地復制和組合。而且,這些元素和相關(guān)的邏輯概念之間存在一定的聯(lián)系?!?/p>
6.2LLM用于數(shù)學解題
LLM本身具備類推推理(analogical reasoning)的能力,但不具備邏輯推理(logical reasoning)的能力(邏輯推理是指基于三段論的推理)。因此,LLM可以做一些簡單的數(shù)學計算、數(shù)學解題。對比于人,相當于用死記硬背的方法做數(shù)學。雖然GPT4展現(xiàn)出了非常強的數(shù)學解題能力,求解復雜的數(shù)學問題應該還需要其他機制。
一個想法是LLM+邏輯推理的數(shù)學解題。用LLM理解數(shù)學問題的題意,將其轉(zhuǎn)換為心智語言,在心智語的基礎上進行邏輯推理和數(shù)學計算。邏輯推理和數(shù)學計算調(diào)用其他的數(shù)學計算機制。
人的數(shù)學解題有兩種機制,分別使用心理學稱作的系統(tǒng)1和系統(tǒng)2,進行快的思維(基于死記硬背)和慢的思維(進行深入思考)。用LLM直接解題,對應著系統(tǒng)1。用LLM產(chǎn)生心智語言,在心智語言的基礎上進行解題,對應著系統(tǒng)2。
在字節(jié)跳動,我們?nèi)ツ晏岢隽松窠?jīng)符號處理方法,結(jié)合神經(jīng)處理和符號處理,用于自然語言理解任務。也是基于相同的思想結(jié)合系統(tǒng)1和系統(tǒng)2的機制。這套方法既可以用于數(shù)學解題,又可以用于自然語言理解。
6.3程序語言作為心智語言
上述基于LLM的數(shù)學解題和自然語言理解方法中,一個自然的想法是用程序語言表示心智語言。這是因為LLM一般使用程序訓練,也能生成程序。
我們最近做了大規(guī)模的實驗,驗證了Python程序比英語(自然語言)作為“心智語言”,在數(shù)學解題中更有優(yōu)勢的事實。這個方法的一個優(yōu)點是,LLM理解題意后,得到的程序可以直接通過解釋器執(zhí)行,驗證解題步驟的正確性。在Python程序上進行推理,也比在自然語言上進行推理更為容易。