傑弗裏·辛頓:從小語言到大語言,人工智能究竟如何理解人類?_風聞
返朴-返朴官方账号-关注返朴(ID:fanpu2019),阅读更多!16分钟前
2024 年 4 月 8 日辛頓獲得尤利西斯獎章,以表彰他對計算機科學人工智能領域的貢獻。他通過在計算和工程兩方面的突破,使得深度神經網絡成為計算的關鍵組成部分。本文為傑弗裏·辛頓在獲得尤利西斯獎章時發表的演講,簡明扼要地介紹了神經網絡和大語言模型的基本概念和工作方式。
尤利西斯獎章是都柏林大學學院頒發的最高榮譽。該獎項設立於 2005 年,以校友、愛爾蘭作家詹姆斯·喬伊斯(James Joyce)的著作《尤利西斯》(Ulysses )命名,授予為全球做出某種傑出貢獻的個人。
演講 | 傑弗裏·辛頓
翻譯 | 陳國華(北京外國語大學外國語言研究所教授)
“人工智能教父”傑弗裏·辛頓榮獲都柏林大學最高榮譽尤利西斯獎章。丨圖片來源:Chris Bellew/Fennell Photography
非常感謝學院讚譽有加的頒獎辭[1]。
我想特別指出一點,那就是,我的成功在很大程度上歸功於能夠招到真正優秀的研究生。因此我們永遠不要忘記,在這一領域,工作是研究生做的。
只要有機會給他人講課,我就無法拒絕。很多人實際上並不知道人工智能是怎麼回事。因此,我將用大約20分鐘做一個非常基礎的、關於人工智能如何工作的演講,讓那些不喜歡方程式、不知道這些大型聊天機器人究竟在做什麼或如何做事的人們,知道是怎麼回事,還請計算機科學專業的學生和已經知道人工智能是怎麼回事的各位海涵。
自上世紀中葉以來,對智能的研究一直存在兩種範式。一種是受邏輯學啓發的思路,其概念是智能的本質是推理,這是讓人類如此特別的關鍵因素。推理是用符號規則操縱符號表達式來實現的,所以,我們真正要做的是瞭解知識是如何表徵的,是用什麼類型的邏輯編程語言來表徵的。學習之類的事可以等到以後再做。
另一種是受生物學啓發的思路,這一思路完全不同。這一思路認為智能的本質是學習,學習神經網絡中連接的強度,邏輯和其他事情要晚得多。我們得先了解人是如何學會控制自己的身體或識別物體之類的事情,推理之類的事之後再説。
什麼是神經網絡?我給大家看一張神經網絡示意圖。
圖1:人工神經網絡輸入-輸出層級關係示意圖[2]
底層是一些輸入神經元,即一幅圖像各個像素的強度值[3]。然後是多重中間層神經元,這些神經元會學習從圖像(即輸入數據)中提取特徵。然後是上層的輸出神經元,這些神經元可能會説出這是一張什麼物體的圖像。例如,輸入的可能是一張貓圖或狗圖。你想要神經網絡做到的是,給它輸入一張貓圖,代表貓的神經元就會在輸出端亮起(即輸出結果是“貓”)。連接線上的那些小彩色點是連接強度(譯者注:原圖紅色小點用黑色表示,綠色小點用灰色表示)[4]。神經網絡所要做到的是學會這些強度參數,以便輸出正確結果。
有一種簡單的神經網絡學習的方法,每個人都能理解。
我們從一些隨機連接強度開始。選取其中一個連接,稍微改變一下它的強度,比如稍微增強一點,看看輸出的結果是否有改進。要判斷輸出是否有改進,我們得通過神經網絡運行相當多的例子,看它能否給出更好的答案。所以,一開始可能它會説,這張貓圖是“貓”的概率是50%。我們改變這個權重後,它可能會説是51%,這就是有進步。我們就這樣修正權重,然後選取另一權重來試,然後繼續這樣做。如果做的時間足夠長,我們會得到這樣一個神經網絡——當你把貓的圖像展示給它時,它會説這很可能是“貓”;當你把狗的圖像展示給它時,它會説這是“狗”。但如此修正的速度非常非常慢,因為處理每個連接,神經網絡得嘗試許多例子,而且我們得多次更新每個連接。
後來我們發現可以用一種有效得多的辦法來實現同一目標。這是一種被稱為“反向傳播”[5]的算法。首先,我們拍攝一個物體的圖像,把它傳輸給神經網絡,通過這個網絡來識別。假設它説有50%的概率是“貓”,那它給出的就是個誤差,因為我們希望它説這個圖像100%是“貓”。於是我們通過這個網絡發回一個信號,而且就是通過前面那個傳達誤差的神經連接發回去。大致而言,我們可以計算,而不是衡量,改變一個權重會怎樣改善這個網絡的輸出。所以,對於每一權重,我們都可以弄清楚,如果稍微增加這一權重,結果會不會好一點?或者,如果稍微降低這一權重,結果會不會好一點?我們現在可以採用並行的方式對所有權重執行這一操作。如果有十億個權重,並對這些權重採用並行運算,速度就會快十億倍。這就是神經網絡的工作方式。我們通過反向傳播誤差來改變每一權重的算法,只是某種相對簡單的微積分。關鍵的一點是,它確實有效。神經網絡可以通過這種方式學習識別事物。
多年來,計算機科學家、計算機視覺研究者們一直都希望實現這樣一個目標:給機器輸入一個圖像,機器就輸出一個標題,説明該圖像的內容。但他們做不到,遠遠做不到。而現在神經網絡能夠做到這一點。我們用反向傳播算法訓練神經網絡,讓它學會從圖像中提取一批多層級的特徵,這些特徵的確能讓計算機識別出圖像的內容。
2012年,Alex Krizhevsky和Ilya Sutskever,在我的一點點幫助下,開發出了一個比已有計算機視覺系統好得多的深度神經網絡。
接着發生了一件在科學界非常罕見的事情。計算機視覺研究領域的權威專家原先一直説神經網絡永遠無法做到這一點,現在卻説:“哇,它還真有效!”而且他們改變了之前的做法,開始使用神經網絡。這可不是科學家通常有的行為方式,當然也不是語言學家通常有的行為方式。下面,我們就談一談語言問題。
符號人工智能圈的許多人説,層級特徵檢測器[6]永遠無法用來處理語言,根本行不通。我的網頁上就引用了這句話。我實在沒忍住,於是就讓GPT4來詳細解釋這句話錯在哪裏。所以現在的情形是,我們有GPT4,它能向語言學家解釋他們説的為什麼不對,説明神經網絡能做什麼,不能做什麼。語言學家被一個叫喬姆斯基的人誤導了好幾代——此人實際上也獲得了這枚享有盛名的獎章。可見,名望不會持久。他有一個偏執古怪的理論,即語言不是學會的。他成功地説服很多人相信這一點。這個説法顯然是一派胡言。語言顯然是學會的。大型神經網絡學習語言,不需要任何先天結構,只是從隨機權重和大量數據中開始學習。喬姆斯基卻仍然在説,但這並非真正的語言,這不算數,這是不對的。許多統計學家和認知科學家也説,永遠不可能在這樣一個大網絡裏學習語言。喬姆斯基從來沒有提出任何一種有關語義的理論, 他的理論全是關於句法的。
我們如果考慮語義,就會發現有兩種截然不同的語義理論。一種是符號人工智能研究者相信的結構主義理論,大多數語言學家也相信這種理論,即一個詞的意思來自於它與其他詞的關係[7]。
你如果想捕捉一個詞的意思,就需要製作一個關係圖,圖中包含這個詞與其他詞的鏈接,也許還有鏈接點上的標籤,説明它怎樣與其他詞相關。這就是一個語義網絡,是捕捉意思所需要的。
此外還有一種非常不同的理論,來自1930年代的心理學,即一個詞的意思是一個大的特徵集合,意思相近的詞具有近似的特徵集合[8]。
這兩種理論看起來完全不同。但實際上,我們可以把二者統一起來。我認為第一個做到這一點的是我在1985年製作的一個小型語言模型。這個模型與現在的大語言模型有很多共同之處。它通過嘗試預測下一個詞來學習。具體而言,它學習每個詞的特徵以及這些特徵之間的相互作用,這樣就可以預測下一個詞的特徵。重要的是,所有知識都體現在給一個詞分配哪些特徵以及不同詞的特徵應該怎樣相互作用。這個模型不存儲任何句子,卻可以重構句子,也就是通過反覆預測下一個詞來生成句子。這也是大語言模型的工作原理。它實際上不存儲任何文本,而是學習從文本中提取特徵,把它分配給各個單詞,並提取這些特徵之間的相互作用,這樣就可以預測下一個詞的特徵。
這個微小的語言模型並非旨在為工程助力,而是旨在解釋人們如何通過語言來表達和領悟意思,所以它實際上是人類語言的工作模型。如果有人告訴你這種模型不像我們,跟我們的工作方式完全不同。你就問他,那人類語言是怎樣工作的?他如果是語言學家,會告訴你,“用符號規則,用操縱符號表達式的規則”。但實際上,那些説這種模型和我們人類不同的人,實際上並沒有什麼模型,來説明人類語言是怎樣工作的,所以我也不知道他們怎麼知道神經網絡模型跟我們人類的模型不同。然而神經網絡研究者卻的確有一個我們人類語言如何工作的模型。下面我詳細介紹一個小模型,因為我一直認為,理解一個小的具體事物比進行虛而不實的抽象要好得多。虛而不實的抽象看着了不起,但要真正理解事物, 需要一個細微的具體例子。
這裏有兩棵家譜樹。
圖2:家譜樹示意圖
圖中一些是英國人,還有一些是意大利人。這是1950年代,那時的家庭非常非常簡單,沒有離婚,沒有收養,沒有同性婚姻,都是很常規的家庭。你可能會注意到這些樹有些類似,具有相同的結構。我們將把這些關係樹變成一串三元組。從這些關係樹中,我們可以通過一些關係術語(如兒子、女兒、侄子、侄女、母親等)來記錄信息。然後我們可以製作下面這樣的三元組:
科林有父親詹姆斯,科林有母親維多利亞,詹姆斯有妻子維多利亞。從“科林有父親詹姆斯”和“科林有母親維多利亞”,我們可以推斷出“詹姆斯有妻子維多利亞”。因此,研究符號人工智能的人認為人腦裏有這些符號串的表徵,同時,還有允許你從舊的符號串中得出新的符號串的規則,比如:
(如果X有母親Y)且(Y有丈夫Z),那麼(X有父親Z)
這就是他們心目中邏輯的全部工作原理。
我所做的是製作一個神經網絡,只要調節網絡的權重,該網絡就能學會上面那種知識。但該網絡內部不儲存符號串,不存儲任何符號表達式,裏面全是特徵和特徵之間的相互作用。在神經網絡中做這件事,關鍵問題是,對於一清二楚的規則,你或許能夠採用符號的方式來做。但我們的大部分知識並非完全正確,有很多例外。一旦出現了不符合規則的例外情況,使用大神經網絡來找這些規則,效果會好得多。
我當時使用的神經網絡看起來是這個樣子。它底層有兩個輸入:一個是僅代表某人名字的單個(discrete)符號,另一個是表示關係名稱的單個符號。我們想要的輸出是一個人的名字,這個人與以上兩個輸入有着上述關係。訓練用的數據就是這個樣子。神經網絡要學會的是先將一個人的名字轉換成一串特徵。就這些家譜樹而言,這些特徵代表這個人的本質。一旦神經網絡為這個人和這一關係完成了這種轉換,它就會讓這些特徵集合在中間相互作用,就可以預測輸出人的特徵,然後根據輸出人的特徵,就可以預測出輸出人是誰。這種方法效果很好,可以讓神經網絡學習。它可以重新產生輸入給它的事實,也就是説,如果所學的權重裏信息足夠多,你給它一個用於訓練的例子,它就能給出正確答案;不僅如此,它還可以推斷。也就是説,你可以給它輸入它從未見過的例子、從未見過的人名、從未見過的關係、從未見過的組合,它也能給出正確答案。問題是,它是怎樣做到這一點的?答案是,它學會了相當於我們心目中的自然特徵的東西。拿人來説,神經網絡學會了一個人的某些特徵,比如國籍,例如,如果知道輸入人是英格蘭人,就知道答案是,國籍是英國;如果輸入人是意大利人,那麼輸出答案就是,國籍是意大利。
我剛才説過,這兩個家庭是非常簡單的家庭。這也是個很小的網絡,瓶頸層[9]中只有六個神經元,分別代表國籍、這個人屬於哪一輩、屬於家譜樹的哪個分支;其中輩分特徵會有三個值,因為有三輩人(最下輩、中間輩或最上輩)。這種輩分特徵只有在學習關係特徵時才有用。比如,這種關係要求輸出人比輸入人高一輩。比如“叔侄”關係就是這樣。神經網絡如果知道輸入人的輩分,而且知道關係特徵是高出一輩,就可以預測輸出人的輩分,這有助於它輸出正確的答案。這就是它的工作原理。而且它的確發現了符號人工智能研究者所相信的符號規則。這些研究者當中沒有人抱怨這不是真正的學習。他們説,“好吧,它是在學習,但這是一種很笨的學習方式。”
再看大語言模型,它可以被視為(我個人認為)前面那個小模型的後代。他們對這個小模型做了調整,使之增大了許多,也複雜了許多。所以它有更多的詞,適用於自然語言,而不僅是些簡單的示例。它使用更多層級的神經元,因為不能從符號就直接得出意義。有的符號可能像may這個詞,可以指一個月份,可以是一個情態詞,也可以是一個女子的名字。我們得利用上下文來消除歧義,比如用層層向上推進的辦法,所以神經網絡有更多的層次。不同詞的特徵之間的相互作用也就要複雜得多,但它與小模型在本質上屬於同一類模型。神經網絡學習時,會將所有信息存儲在特徵之間交互作用的權重中。
語言學家説,這只是美化了的自動補全,只是在利用統計學的把戲,只是在將文本臨摹拼湊在一起。但請記住,神經網絡不存儲任何文本。硬説它是自動補全而不承認它是學習,就是在胡言亂語,因為他們腦子裏想的是一種老式自動補全。老式自動補全會存儲詞串,例如fish and chips這個常見的詞串。如果你看到了fish and,你可能會説,下一個詞很可能是chips,因為這是個非常常見的詞串。而神經網絡根本不是以這種自動補全的方式工作的。它將詞轉換為特徵,並利用特徵之間的交互作用來進行預測。
因此,大語言模型的工作方式,以及我們人類的工作方式就是,我們看到很多文本,或聽到很多詞串,進而獲知詞的特徵,以及這些特徵之間的交互作用。所謂理解,就是這麼回事。神經網絡模型正在以與人類完全相同的方式做理解。
語言學家的另一個論調是,這種模型是在製造幻覺,它實際上並不真的理解自己在説什麼。就語言模型而言,這不應稱為製造幻覺,而應稱為“非故意虛構”(confabulation)。自1930年代以來,心理學一直在研究這個問題,人們慣於非故意虛構。這種模型進行非故意虛構這一事實,使之實際上更像我們人類。大多數人認為我們的記憶就像一種文件,你把它放在某處,然後去那裏把它取回來,就像把信息輸到電腦裏然後把它讀取出來。但人類記憶根本不是這樣。人的記憶總是在重構。如果你回憶最近發生的事,你的重構會相當準確;如果回憶很久以前的事,你就經常會把所有細節弄錯,而且根本意識不到這一點,反而會對這些細節信心十足。這方面的一個極好案例就是John Dean的記憶。
就水門事件,John Dean曾宣誓作證,回憶白宮各種會議上發生的事情,可是卻把細節全弄錯了。他説Haldeman説了什麼什麼,但實際上説這話的是另一個人,Haldeman根本沒有參會。關於他的證詞,毋庸置疑的是,他是在盡力説實話。他説出了事情的要點,即他們試圖掩蓋水門事件時究竟發生了什麼。但他以為自己記得很清楚的細節,其實是錯的,沒有全錯,但很多都記錯了。Ulrich Neisser有一篇論文很好地證明了這一點。John Dean以為自己記得很清楚的事情,你一聽錄音帶就知道他根本記錯了,但他記住了事情的實質。
這是個極好的例子。
現在,聊天機器人在非故意虛構方面的表現比我們人類糟糕。它這種虛構的頻率比我們高,而且不知道自己是在非故意虛構。但它一直在進步。我認為不久後,聊天機器人在非故意虛構方面不會比我們差多少。聊天機器人是在非故意虛構,這一事實並不表明它不理解自己做的事或與我們人類不同,反而表明它與我們人類非常相似。
我的演講到此為止。我想對大家説的是,這些大型聊天機器人不像普通的計算機軟件,反而更像我們人類。由此導致了一大堆人工智能的風險。這些風險我暫且不談,有關內容可以參考這篇存檔論文[10]。
好,我説完了。
註釋
[1] 劉海濤使用錄音筆和翻譯軟件完成演講的英文轉寫和英漢翻譯,提供了一個原始版本。在此基礎上,譯者根據現場錄音,校勘英文轉寫並全面修訂譯文,後經編輯部審核定稿。英文轉寫文本經過辛頓審核,並許可演講稿的翻譯出版。熊文新、詹衞東、梁昊、李葆嘉、袁毓林都參加了譯稿的潤色。詹衞東對譯文中涉及 AI 語言技術細節的表述提出了很多寶貴的專業意見。詹衞東和李葆嘉的一些解釋有助於理解辛頓演講的內容和背景,故此用作譯文的腳註。
[2] 原圖為幻燈文件頁面,圖題為編者所加。下文圖 2 同。
[3] 即圖像每個像素的亮度值和顏色值等。(詹衞東注)
[4] 即神經元之間的連接權重參數 。(同上)
[5] “反向傳播”是backpropagation(簡稱BP)在人工智能界通行的中文譯名,它指一種算法,即,在神經網絡的訓練中,所建模型從輸入開始,先用前向傳播,得到輸出結果,然後比較輸出結果跟期望結果之間的差距(誤差),計算損失函數值,再從輸出層開始,逐層向輸入層方向(即向後)計算每個神經元的梯度,即損失函數值對每個參數(權重和偏置)的偏導數。利用鏈式法則,將梯度從輸出層反向傳播到輸入層,逐層更新每個神經元突觸的權重參數。BP算法是神經網絡訓練最核心的算法之一,能使神經網絡高效地學習和調整參數,從而在訓練數據上取得良好的性能。由於辛頓等人的工作,使得誤差反向傳播算法成為大規模多層(深度)神經網絡參數(權重)學習的標準方法。(同上)
[6] 即深度神經網絡。(同上)
[7] 此為現代語義學的第一塊基石——德國學者創立的語義場理論。1924 年 G. Ipsen 受格式塔理論的影響提出語義場。1931 年 J. Trier 提出語義聚合場。1934 年 W. Porzig 提出語義組合場。1968 年M. Quillian提出語義網絡。1973 年 R. Simmons 提出語義網絡理論。1985 年 G. Miller 主持研製詞網。(李葆嘉注)
[8] 此為現代語義學的第二塊基石——美法學者創立的義徵分析法。1937 年 K. Davis 提出親屬稱謂的基元分析法。1956 年 W. Goodenough、F. Lounsbury 沿用此法。1963 年 J. Katz 和 J. Fodor 將語義成分分析法導入生成語法。1960 年代 B. Pottie、E. Coşeriu、A. Greimas 提出詞的所指由語義要素組成,圖像所指和語言所指相同。語義特徵分析法可追溯到德謨克利特的原子論,以及笛卡爾、 A. Arnauld 和P. Nicol 的語義基元論。(同上)
[9] 該神經網絡瓶頸層的特徵數量顯著少於前一層和後一層的特徵數量。這一層通常用於降維或壓縮信息,以提取最重要的特徵。(詹衞東注)
[10] Yoshua Bengio 等,Managing extreme AI risks amid rapid progress,https://arxiv.org/pdf/2310.17688.pdf [2024 年 7 月 11 日最後訪問]。
本文原載於《當代語言學》2024年第4期,原標題《傑弗裏·辛頓接受尤利西斯獎章時發表的獲獎感言》。
特 別 提 示
1. 進入『返樸』微信公眾號底部菜單“精品專欄“,可查閲不同主題系列科普文章。
2. 『返樸』提供按月檢索文章功能。關注公眾號,回覆四位數組成的年份+月份,如“1903”,可獲取2019年3月的文章索引,以此類推。