電腦科學家專訪|ChatGPT 擁更多數據及算力仍不能帶來真正的智能

撰文:機器之心
出版:更新:

《人工智能:現代方法》(Artificial Intelligence: A Modern Approach)第四版中文版於近期問世,機器之心對作者 Stuart Russell 教授進行了專訪。作為 AI 領域的經典,《人工智能:現代方法》幾經再版,內容和結構反映出兩位作者不斷發展的理解。最新第四版是他們把近十年 AI 進展,尤其是深度學習所帶來的影響納入整體框架後給出的最新闡釋,體現了兩位大師對人工智能趨勢和學科體係發展的洞見。

本次採訪也依循「a modern approach」,希望從一種切合技術和時代發展的視角,展現 Russell 教授對技術動向、智能理論,以及流行 VS 經典的思考,為 AI 研究人員和從業者帶來啟發。

Stuart Russell(kavlicenter.berkeley.edu)

Russell 教授相信在接下來的十年,人們的關注點將從對端到端深度學習的倚重,重新回到由模塊化的、基於數理邏輯的、語義明確定義的表示(representation)所構成的系統,而深度學習將在獲取原始感知數據方面扮演至關重要的作用。需要強調的是,模塊化的、語義明確定義的表示不一定是由手工設計或不靈活的,這樣的表示完全可以從數據中學習。

至於如今大火的 ChatGPT,Russell 教授認為關鍵是要區分任務領域,弄清楚在什麼情況下使用它:ChatGPT 可以是一種很好的工具,如果它能錨定在事實基礎上,與規劃系統相結合,將帶來更大的價值。但問題是,我們目前不清楚 ChatGPT 的工作原理,也很可能無法弄清它們,這需要一些概念上的突破,而這樣的突破很難預測。

他認為要構建真正智能的系統,我們應當更加關注數理邏輯和知識推理,因為我們需要將系統建立在我們了解的方法之上,這樣才能確保 AI 不會失控。他不認為擴大規模是答案,也不看好用更多數據和更多算力就能解決問題,這種想法過於樂觀,在智力上也不有趣。

如果罔顧深度學習數據效率低這一根本性的問題,「我擔心我們在自欺欺人地認為我們正在走向真正的智能。我們所做的一切實際上是向根本不是真正智能模型的東西添加越來越多的像素。」

第一部分

機器之心:在您看來,以 ChatGPT 為代表的大規模預訓練語言模型(LLM)是否從本質上將人工智能提升到一個更高的水平? LLM 是否克服了深度學習系統的一些根本性問題,比如常識獲取、知識推理?

Stuart Russell:我首先想到的回答是——我們不知道,因為沒有人知道這些模型是如何工作的,包括創造它們的人。

ChatGPT 知道什麼?它能推理嗎?它在什麼意義上理解了答案?我們不知道。

我在俄勒岡州立大學的一個朋友問模型「大象和貓哪個大?」模型回答「大像大」,但換種問法「大象和貓,哪個不比另一個大?」模型回答「大象和貓哪個都不比另一個大」。所以你說模型知道大象和貓哪個更大嗎?它不知道,因為換種問法,它就得出自相矛盾的結論。

那麼,模型知道什麼呢?

我再舉個例子,也是實際發生的事情。這些模型的訓練數據中有大量的國際象棋棋譜,用統一的代碼和符號表示,一局棋看起來是 e4 e5 Nf3 Nc6 Bb5...…的序列。棋手知道這些符號的含義,知道這些序列所描繪的走子過程。但模型不知道,模型不知道有棋盤,也不知道走子,在模型看來這些符號就是符號。所以,當你和它下盲棋時,你說「我們來下國際象棋吧,g4」,它可能回复「e6」,當然這可能是一步好棋,但模型並沒有對弈的概念,它只是從訓練數據中找到相似的序列,並對這些序列進行適當的轉換,然後生成下一步棋。在 80% 甚至 90% 的情況下,它會生成一步好棋,但其他時候它會走出很傻或者完全不符合規則的棋,因為它沒有在棋盤上下棋的概念。

不只是下棋,我認為這實際上適用於所有現在大模型在做的事情:80% 的情況下它看起來像一個很聰明的人,但在餘下 20% 的時間裡它看起來像一個徹頭徹尾的白痴。

看起來聰明是因為它有大量的數據,人類迄今為止寫的書、文章……它幾乎都讀過,但儘管如此,在接受瞭如此之鉅的有用信息後,它還是會吐出完全不知所謂的東西。所以,在這個意義上,我認為語言大模型很可能不是人工智能的一種進步。

ChatGPT 真正令人印象深刻的是它的泛化能力,它能夠在其與用戶進行的對話和此前讀過的文本中找到相似之處並進行適當的轉換,所以它的回答看起來很智能。但是,我們不知道模型是如何做到這一點的,我們也不知道這種泛化能力的邊界在哪裡,我們不知道這種泛化是如何在電路中實現的。

如果我們真的知道了,那確實可以說是人工智能的進步,因為我們能夠把它作為一個基礎,我們能夠基於 ChatGPT 開發其他系統。但現階段而言,一切都還是謎。我們所謂往前走的唯一方法是——模型不 work?好吧,我們再給它更多數據,把模型再做大一點。

我不認為擴大規模是答案。數據終有用完的一天,而現實世界總有新的情況發生。當我們編寫國際象棋程序的時候,那些真正能把棋下好的程序,都能很好地應對從未見過的情況,原因只有一個,那就是這些程序了解國際象棋的規則,能夠將棋子在棋盤上位置的演變——可以落子的點,對手接下來可能的走法,包括棋譜裡從未有過的走法——進行可視化。

我們現在還遠遠無法在現實世界的一般情況中做到這一點。同時,我並不認為語言大模型讓我們距離實現這一目標更近了。除了一點,那就是你或許可以說,語言大模型讓我們能夠使用存儲在文本中的人類知識。

如果我們能把語言大模型錨定在已知的事實中,它們會更加有用。想想看有 5000 億個事實的谷歌知識圖譜,如果 ChatGPT 能錨定在這些事實中,與這些事實相關的問題都能給出正確的回答,那麼 ChatGPT 會更加可靠。

如果我們能想辦法把語言大模型耦合到能夠正確進行推理和規劃的推理引擎中,那你可以說我們突破了人工智能的一個瓶頸。我們現在有很多規划算法,但要讓這些規划算法進行正確合理的規劃,比如製造一輛汽車,給它們提供所需的知識,是很難做到的,因為需要了解的東西太多了,很難把它們全部寫下來,並且保證全都是對的。但語言大模型讀遍了所有關於汽車的書籍,也許它們可以幫助我們構建出必要的知識,或者乾脆按需回答必要的問題,這樣我們在做規劃時,就能獲取所有這些知識了。

相比於只把 ChatGPT 看成是幫你做某件事情的黑盒子,把語言大模型與規划算法相結合,讓它們成為規劃系統的知識輸入,這將帶來真正有價值的商業工具。據我所知,已經有人在朝著這個方向努力了,如果成功,那將會是一大進步。

機器之心:作為教師,您如何看待 ChatGPT——您會允許學生用 ChatGPT 生成論文嗎?作為用戶,您如何看 ChatGPT 催生的各種應用,尤其是商業應用?

Stuart Russell:幾週前,當我在達沃斯世界經濟論壇上與商界人士交流時,每個人都在問我關於語言大模型,以及如何在他們的公司中使用這些模型的問題。

我認為你可以這麼想,那就是你會把一個 6 歲的孩子放在你公司裡同樣的崗位上嗎?

雖然兩者在能力上存在差異,但我認為是可以這樣類比的。語言大模型、ChatGPT 不可信,它們沒有常識,會一本正經地給出錯誤的信息。所以,如果你要在公司裡使用 ChatGPT 或類似的模型,你必須非常地小心。如果你把公司裡的某些崗位或職責看作是網絡中的節點,語言在這些節點裡輸入和輸出——當然,你完全可以這樣看,很多工作就是如此,比如記者,教授們做的也是這樣的事情。但是,這並不意味著你能用 ChatGPT 取代他們。

在教育方面我們必須非常謹慎。 ChatGPT 的出現讓很多人陷入恐慌。有人說,啊我們必須在學校裡禁用 ChatGPT。另一部分人則說,禁用 ChatGPT 太荒謬了,他們翻出 19 世紀的一些討論——當時有人說啊我們必須禁止機械計算器,因為如果學生開始使用機械計算器了,那他們永遠都學不會正確做數學計算了。

這聽起來是不是很有說服力?我們是不是好像沒必要禁止 ChatGPT?但是,這個類比是完全錯誤的——機械計算器自動化的,恰恰是非常機械的過程。將 26 位的數字相乘是非常機械的,是一套指令,你只要按照步驟,一步一步一步一步一步一步來,就能夠得到答案。遵循指令的知識價值是有限的,尤其是當人並不理解指令作用的時候。

但 ChatGPT 將要取代的並不是機械地遵循指令,而是回答問題的能力,閱讀理解的能力,將想法整理成文的能力。如果你連這些都沒有學會,就讓 ChatGPT 代而為之,那你可能真的會長成廢人。

現在有電子計算器了,但我們仍然教孩子們算術,我們會教他們算術的規則,努力讓他們理解數字是什麼,數字如何對應於物理世界中的事物,等等。只有當他們獲得了這種理解,掌握了算術規則之後,我們才會給他們電子計算器,這樣他們就不必按照機械的工序進行繁瑣的操作。

在我們那個年代,當時還沒有計算器,我們用的是打印出來的表格,裡面有各種正弦餘弦和對數函數的值,從來沒有人說用了這些表就學不會數學了。

所以,我們必須弄清楚什麼時候學生開始使用像 ChatGPT 這樣的工具是合適的。回答你剛才的問題,如果你能找到寫論文這個任務中無腦的部分——其實寫論文的過程中有很多時候是無需動腦的,只是在機械地重複繁瑣又無聊的工序——那麼你大可使用 ChatGPT,我對此沒有任何異議。

但是,寫作並不全是枯燥無聊的工序,寫作本質上是一種思考,也是人學會思考的一種方式。我們最不想要的是盲目使用 ChatGPT 的人,他們既不理解問題也不理解答案。

至於 ChatGPT 的其他應用,比如生成圖片或者音樂,我想情況也類似,關鍵是分清楚任務領域。我認為藝術創作的過程可以大致分為兩部分,首先是對你想要創作什麼有一個概念,然後是根據你的構想把它實際創造出來的相對機械的過程。對某些人來說,後者非常具有挑戰性,無論他們多麼努力,也無法製作出好看的圖片,所以我們才會有受過專門訓練的藝術家,尤其是商業藝術家,他們的工作不涉及太多創意,更注重按需求製作圖片的能力。我認為這是一個受到極大威脅的職業。

我在寫書時就有這樣的經歷,《人工智能:現代方法》中有五六百幅插圖,幾乎都是我自己畫的。製作一張好的插圖或圖示是一個緩慢而艱苦的過程,需要很多技巧和技能。如果有大模型或應用能生成跟我書裡那些插圖一樣的圖表或技術圖示,我非常樂意使用它們。

第二部分

機器之心:我們不清楚 ChatGPT 的原理,但通過工程實現,得到了在某些情況下好用的工具;ChatGPT 似乎也是將人納入迴路的一個很好的例子。從工程角度看,ChatGPT 是否是一種進步?

Stuart Russell:我不確定 ChatGPT 是否可以被稱為工程,因為通常講,我們認為「工程」是一門應用工程科學的學科,將物理學、化學、機械學、電子學等知識組合起來,以復雜而巧妙的方式製造出對人類有用的東西。同時,這些東西為什麼會有用,我們是理解的,因為它們那些有用的性質是我們通過特定的方法實現的,並且可以復現。

但我們是如何開發 ChatGPT 的呢?納入人類的反饋是有用的,但從結果看,ChatGPT 是我們是在大量數據集上做梯度下降得到的。這讓我想起了上世紀 50 年代,當時有大量的精力被投入到遺傳編程中,人們寄希望於通過模擬生物演化來實現智能的 Fortran 程序,結果一敗塗地。

理論上講,當你有足夠多的 Fortran 程序並讓它們產生足夠多的突變,原則上是可能會產生比人類更聰明的 Fortran 程序的。只是這種原則上的可能並沒有在實踐中成真。

現在,你在足夠大的電路和足夠多的數據上做梯度下降,突然之間就能創造出真正的智能了?我覺得可能性不大,或許比進化 Fortran 程序多那麼一點——但也說不好,或許 Fortran 程序才更有可能,因為有理由認為 Fortran 程序是一種比電路(circuits)表示能力更強的語言,而在 1958 年他們放棄 Fortran 程序那會兒,當時的計算能力比我們現在要低 15 或 16 個數量級。

機器之心:那不用「工程」這個詞,您如何看 OpenAI 正在做的這件事?

Stuart Russell:OpenAI 正在做的,你可以稱其為烹飪(Cookery),因為我們真的不知道這些模型的原理。就好比我做蛋糕的時候,我不知道它是怎麼變成蛋糕的,人類做蛋糕已經有幾千年曆史了,在嘗試了許多不同的原料和許多不同的方法,在各種原料和方法上做大量的梯度下降後,有一天發現了一個神奇的東西——蛋糕,這就是烹飪。現在我們對蛋糕的底層原理有了更多的了解,但仍不完美。通過烹飪,我們能得到的有限,這個過程也不具有大的知識價值。

要是因為 ChatGPT 的一些根本性問題,有一天你通過輸入提示(prompt)或指示(instruct)怎麼都得不到你想要的答案該怎麼辦?再去修改食譜?把 token 從 4000 提到 5000,再把網絡層數翻一番?這不是科學,而且我認為這在智力上並不有趣。

嘗試理解語言大模型的工作原理的研究當然是有價值的,因為 ChatGPT 正在進行大量驚人的泛化,只有弄清楚這是如何發生的,我們才可能真正開發有意義的智能係統。現在有很多人投身於此,這方面也有大量發表的論文。

但 ChatGPT 的內部機制是否能被理解,我認為很難說,它可能過於復雜,我們沒有辦法對裡面發生的事情進行逆向工程。

一個有趣的類比是 3 萬年前發生在人和狗之間的事情。我們不了解狗的大腦是如何工作的,你很難完全弄清楚一隻狗在想什麼,但我們學會了馴化它們,現在狗已經融入我們的生活,它們扮演著各種有價值的角色。我們發現狗擅長很多事情,包括看家護院、陪孩子玩耍,但我們並沒有通過工程來實現這一點,我們通過育種、通過調整配方,對這些特性進行選擇和改良。但你並不會期望你的狗幫你寫文章,你知道它們做不到這一點,並且你也很可能並不希望你的狗能做到這一點。

ChatGPT 這整件事令人意外的地方在於,我認為這是 AI 系統第一次真正進入了公眾的視野,這是一個很大的變化。 OpenAI 自己有句話說得好,那就是儘管 ChatGPT 不是真正的智能,但它讓人體嚐到了真正的(人工)智能實現後,每個人都能用那種智能做各種他們想做的事情的滋味。

機器之心:另一個很多人關注的點是 LLM 所帶來的中間任務的消失。您認為這些中間任務,比如語義分析、句法分析,從一種技術迭代的視角,現在還有多大價值,將來真的會消失嗎?那些處在中間的 AI 研究人員和從業者,那些沒有強大硬件資源,也沒有強大領域知識的人,是否存在失去工作的危險?

Stuart Russell:這是一個好問題。事實是現在很難發表語義分析的論文,實際上,現在很難讓 NLP 社區的人聽進去任何事情,除非你講語言大模型,或者用大模型刷新大基準。幾乎所有的論文都是關於刷新大基準的,你很難發表一篇不是關於刷新大基準的文章,比如語言結構、語言理解,或者語義分析、句法分析,等等,於是評測大模型的大基準成了寫論文的唯一選擇,而這些大基准其實跟語言沒有任何關係。

某種意義上說,如今的自然語言處理領域,我們不再研究語言,我認為這是非常不幸的。計算機視覺也是如此,在如今大部分的計算機視覺研究中,我們不再研究視覺,我們只研究數據、訓練和預測的準確性。

至於接下來如何發展 AI,我認為應該關注那些我們理解的方法,關注知識和邏輯推理。原因有兩方面,首先我們希望 AI 系統是可靠的,我們需要從數學上確保它們安全和可控,而這意味著我們必須理解我們所構建的系統。

其次,從數據效率的角度考慮,如果要實現通用智能,數據效率將是必須的,人腦以 20 瓦而不是 20 兆瓦的功率運行。電路不是一種很有表現力的語言,這些算法的數據效率比人類學習低好幾個量級,你很難在電路里寫下我們知道的關於這個世界的很多事情。在我們有了通用計算機和編程語言後,我們就不再使用電路,因為在程序中表達我們想要什麼要簡單得多,也好用得多,人工智能社區在很大程度上已經忘記了這一點,很多人都誤入了歧途。

延伸閱讀:ChatGPT令人驚艷卻並非萬能 會犯下嚴重錯誤 被揭有這致命弱點

+7

第三部分

機器之心:《人工智能:現代方法》第四版有一個重要的更新,那就是不再假設 AI 系統或智能體擁有固定的目標。此前人工智能的目的被定義為「創建一些試圖最大化期望效用的系統,其目標由人設定」,現在我們不再給 AI 系統設定目標,為什麼會有這樣的一種轉變?

Stuart Russell:原因有幾點。首先,隨著人工智能走出實驗室,走入現實世界,我們發現其實很難完全正確地定義我們的目標。例如,當你在路上開車時,你想快速到達目的地,但這並不意味著你應該以每小時 200 英里的速度行駛,而你如果告訴自動駕駛汽車安全第一,它可能永遠停在車庫裡。在安全和快速到達目的地,以及對其他司機友好、不讓乘客感到不舒服、遵守法律法規……等等各種目標之間需要權衡。路上總會有一些風險,會發生一些無法避免的意外,很難把你在駕駛時的目標全部寫下來,而駕駛只是生活中一件很小、很簡單的事情。所以,從實際操作的角度講,給 AI 系統設定目標是不合理的。

其次則涉及到我在書中舉的邁達斯王的例子(King Midas Problem)。邁達斯是希臘神話中的一位國王,他非常貪婪,求神賜予他點物成金的力量,神滿足了他的願望,他碰到的一切都變成了金子,他實現了他的目標,但後來他的水、他的食物也成了金子,他的家人被他碰了之後也成了金子,最後他在黃金圍繞中悲慘地死去。這警示我們,當你為非常強大的系統定義目標時,你最好確保你所定義的目標是絕對正確的。但既然我們已經知道我們做不到這一點,那麼隨著 AI 系統越變越強大,它們不知道真正的目標是什麼就越來越重要。

目標其實是一件非常複雜的事情。例如我說午飯想買個橙子,這可以是一個目標,對吧?在日常語境中,目標被視為某種可以被實現的東西,一旦實現了,事情就完結了。但在哲學與經濟學定義的理性選擇理論中,其實並不存在這樣的目標,我們有的是對各種可能的未來的偏好或排序,每一種可能的未來都從現在一直延伸到時間的盡頭,裡麵包含了宇宙中的所有。我想,這是對目標、對人類真正想要什麼的一種更複雜、更深遠的理解。

機器之心:這種轉變對人工智能接下來的發展有怎樣的影響?

Stuart Russell:自上世紀四五十年代人工智能伴隨計算機科學誕生以來,研究人員需要對智能有一個概念,這樣才能以此為基礎進行研究。雖然早期的一些工作更多是模仿人類的認知,但最終勝出的是理性的概念:一台機器越能通過行動實現其預期目標,我們就認為它越智能。

在人工智能的標準模型中,我們致力於創造的就是這種類型的機器;人類定義目標,機器完成餘下的部分。例如,對於確定性環境中的求解系統,我們給定成本函數和目標標準,讓機器找到實現目標狀態的代價最小的動作序列;對於隨機環境中的強化學習系統,我們給定獎勵函數和折扣因子,讓機器學習最大化期望折扣獎勵和的策略。在人工智能領域以外也能見到這種方法:控制學家最小化成本函數,運籌學家最大化獎勵,統計學家最小化預期損失函數,經濟學家最大化個人效用或群體的福祉。

但標準模型其實是錯誤的。正如剛才所說,我們幾乎不可能完全正確地指定我們的目標,而當機器的目標與我們真正期望的目標不符時,我們可能會失去對機器的掌控,因為機器會先發製人,採取措施,不惜一切代價確保其實現既定目標。幾乎所有的現有 AI 系統都在標準模型的框架中開發的,這就帶來了很大的問題。

在《人工智能:現代方法(第 4 版)》中,我們提出人工智能需要新的模型,新的模型強調 AI 系統對目標的不確定性,這種不確定使機器會去學習人類的偏好,採取行動前徵求人類的意見。在 AI 系統運行期間,必須有一些信息從人類流向機器,說明人類的真正偏好,而不是人類在最初設定目標後就無關緊要了。這需要讓機器與固定的目標解耦,以及讓機器與人類實現二元耦合。標準模型可以被視為一種極端的情況,也即在機器的作用範圍內,可以完全正確地指定人類所期望的目標,例如下圍棋或解謎。

我們也在書中提供了一些示例來說明新模型的工作原理,例如不確定偏好、關機問題(off-switch problem)、輔助博弈(assistance game),等等。但這些都只是開始,我們才剛剛開始研究。

機器之心:在人工智能這個快速發展的領域,如何緊跟技術趨勢又不盲目追逐熱點? AI 研究者和從業者應該將什麼常記於心?

Stuart Russell:要構建真正智能的系統,我認為根本問題是能夠用一種具有表示性的語言去表示宇宙中包含的各種不規則。智能和電路的本質區別就在於此,據我們所知,電路不能很好地表示那些不規則,這在實踐中表現為數據效率的極端低下。

舉一個簡單的例子,我可以寫下正弦函數的定義(用數學公式),或者我可以嘗試用大量像素憑經驗描述正弦函數。如果我只有 1000 萬像素,我只能覆蓋正弦函數的一部分,如果看我已經覆蓋的區域,我似乎有一個很好的正弦函數模型。但實際上,我並沒有真正理解正弦函數,我不知道函數的形狀,也不知道它的數學性質。

我很擔心我們在自欺欺人地認為我們正在走向真正的智能。我們所做的一切實際上是向根本不是真正智能模型的東西添加越來越多的像素。

我認為在構建 AI 系統時,我們需要關注那些具有基本表示能力的方法,其核心在於能夠對所有的對象(object)進行聲明。假設我要把圍棋的規則寫下來,那麼這些規則必須適用於棋盤上的每一格,我可以說對於每個 x 每個 y 會怎樣,我也可以用 C++ 或 Python 來寫,我還可以用英語寫,用一階邏輯寫。這些語言都能讓我以非常簡潔的方式寫下規則,因為它們都具有表達這些規則的表示能力。但是,我無法在電路中做到這一點,基於電路的表示(包括深度學習系統)不能表示這一類的泛化。

罔顧這一事實而企圖通過大數據實現智能,在我看來很荒謬,這就好比說不需要理解什麼是一顆圍棋的棋子,因為我們有幾十億的訓練樣本。你想想看人類智能做的事情,我們建造了 LIGO,檢測到了來自宇宙另一端的引力波。我們是怎麼做到的?基於知識和推理。在建造出 LIGO 之前,我們從哪裡去蒐集訓練樣本?很顯然,前人了解到了一些事情,包括他們的感官體驗,然後用英語和數學這樣一些表示性的語言將其記錄下來,我們從中學習,了解到宇宙運行的規律,並基於這些進行推理和工程和設計,等等,從而觀測到了宇宙另一端的黑洞碰撞。

當然,基於大數據實現智能是可能的,很多事情都是可能的,進化出一個比人類更加智能的 Fortran 程序也是可能的。但我們花了兩千多年理解知識和推理,也開發出了大量基於知識和推理的優秀的技術,並且基於這些技術開發出了成千上萬的有用的應用。現在你對智能感興趣,卻不關心知識和推理,我對此無話可說。

【本文轉自「機器之心」,微信公眾號:almosthuman2014】