AI 教父Hinton:我已經老了,如何控制比人類還智能「超級智能」,交給你們了


來源:極客公園

作者| Li Yuan、凌梓郡
編輯 | 衛詩婕

「而我已經老了」,75 歲的Hinton 對在場所有年輕的科學家說,他希望大家好好研究「如何擁有超級智能」這件事。在他看來,不那麼智能物種控制比它自己更智能事物,是一場前所未有的挑戰。

在智源人工智能大會上,AI 教父Hinton 做了《通往智能的兩條路徑》的演講。他從對計算架構和原理的分析中,得出了自己結論「人造神經網絡將比人腦更智能」,這比他原先想像地快很多。

30 分鐘的演講中,他從目前軟硬件分離的計算架構談起,在這種規則下,訓練大模型耗費大量的算力。為了能用更少的能量訓練大模型,他提出了非不朽計算(Mortal Computing)的概念——像一個人的智慧依賴他的身體,不可隨意複製到另一個身體,軟件也更依賴它所存在的硬件。

但隨之而來的問題是,當具體的硬件損壞,軟件也隨之受損,「學到的知識也隨之一起死亡」。他提出的解決思路是,把舊硬件上的知識用「蒸餾」的方式轉移給新硬件,就像老師教授學生一樣。

與「知識蒸餾」(生物計算)相對應的概念則是「權重共享」(數字計算),它們便是Hinton 所說的「通向智能的兩條路徑」。大語言模型和其副本之間的關係是權重共享,每一個副本都直接獲得整個模型參數所擁有的知識——比如ChatGPT 可以基於背後的模型,同時和成千上萬人對話。而跟每個人對話的繼續學習過程中,就屬於「知識蒸餾」。

儘管「知識蒸餾」比「權重共享」的效率低很多,帶寬也低,但是大模型可以有1000 個副本,最終會獲得比任何一個人都多1000 倍的知識。

目前模型僅僅從文檔——也就是人類加工過的知識中學習,隨著技術的發展,它們將能夠從視覺信息中學習,接著可能學會操縱機器人。那麼它們很容易比人類更聰明,聰明到擅長騙人。而人類不擅長比與自己更智能事物相處。如何避免這些「超級聰明」智能帶來危險?這是他留給每一位年輕科學家的課題。

以下是經極客公園編譯整理的主要演講內容:

我今天要談的是使我相信超級智能比我想像的更接近的研究。

我有兩個問題想談,我的精力將主要中心化於第一個問題,即人工神經網絡是否很快就會比真實的神經網絡更智能?我將詳細闡述我的研究,它們使我得出一個結論,這樣的事情可能很快就會發生。在講話的最後,我將談一談我們是否能保持對超級智能的控制,但這不會是此次講話的主要內容。

在傳統計算中,計算機被設計成精確地遵循指令的樣子。我們可以在不同的物理硬件上,運行完全相同的程序或神經網絡,因為我們知道硬件會精確地遵守指令。這意味著,程序中的知識或神經網絡的權重是不朽的(immortal),即它不依賴於任何特定的硬件。實現這種不朽性的成本很高。我們必須以高功率運行晶體管,所以它們的行為是數字化的。而且我們不能利用硬件的豐富的模擬和可變屬性。

因此,數字計算機存在、以及它們精確遵循指令的原因,是因為傳統設計中,人類會去看一個問題,會想出需要採取什麼步驟來解決問題,然後我們會告訴計算機採取這些步驟。但這已經改變了。

我們現在有一種不同的方式來讓計算機做事情,這就是從實例中學習,我們只需向它們展示我們希望它們做什麼。因為有了這樣的變化,現在我們有機會可以放棄計算機科學最基本的原則,即軟件與硬件分離的原則。

在我們放棄它之前,讓我們先來看看為什麼它是一個如此好的原則。可分離性讓我們可以在不同的硬件上運行同一個程序。我們也可以直接研究程序的屬性,而不用擔心電子硬件的問題。而這就是為什麼計算機科學係可以獨立於電子工程係自成一個學科。

如果我們真的放棄了軟硬件的分離,我們就會得到我稱之為非不朽計算的東西。

它顯然有很大的缺點,但也有一些巨大的優勢。為了能以更少的能量運行大型語言模型,尤其是以更少的能量訓練它們,我開始研究非不朽計算。

從放棄不朽性中得到的最大好處是:放棄了硬件和軟件的分離可以節約大量能源。因為我們可以使用非常低的功率的模擬計算,而這正是大腦正在做的事情。它確實需要進行1 bit 的計算,因為神經元要么啟動,要么關閉。但大部分的計算是以模擬方式進行的,能夠以非常低的功率完成。

我們還可以得到更便宜的硬件。因此,目前的硬件必須在2D(平面)中非常精確地製造,而我們可以讓其在3D(環境)中成長,因為我們不需要確切地了解硬件的導電性,或者確切地了解它的每一塊如何工作。

顯然,要做到這一點,需要大量新的Nano技術,或者也許需要對生物神經元進行基因再造,因為生物神經元要做的事情,大致上是我們想要的。在我們討論非不朽計算的所有缺點之前,我想舉一個計算的例子,它使用模擬硬件來完成可以便宜得多。

如果你想把神經活動的矢量乘以一個權重矩陣,這就是神經網絡的中心計算,它也是神經網絡所承載的大部分的工作。我們目前所做的是以非常高功率驅動晶體管來表示數字的比特,以數字表示。然後我們進行O(n^2),將兩個n 位數字相乘。這可能是計算機上的一個操作,但它是n 的平方比特級別的操作。

另一種方法是將神經元活動以電壓和權重作為電導率來實現。然後在單位時間內,電壓乘以電導就得到了一個電荷,而電荷是自己加起來的。因此很明顯,你可以將電壓矢量與電導矩陣相乘。這種方式更節能,而且已經存在能夠以這種方式工作的芯片了。

不幸的是,人們隨後所做的是試圖將模擬答案轉換為數字,這需要使用非常昂貴的交易所轉換器。如果可以,我們希望完全停留在模擬領域。但這樣做會導致不同的硬件最終會計算出略有不同的東西。

因此,非不朽計算的主要問題是,當進行學習時,程序必鬚根據它所在的模擬硬件的具體屬性進行學習,而不知道每一塊硬件的具體屬性到底是什麼,例如,不知道將神經元的輸入與神經元的輸出聯繫起來的確切函數,不知道連接性。

這意味著我們不能使用像反向傳播算法來獲得梯度,因為反向傳播需要前向傳播的精確模型。所以問題是,如果我們不能使用反向傳播算法,我們還能做什麼?因為我們現在都是高度依賴反向傳播的。

我可以展示一個非常簡單和直接的權重擾動學習(weight perturbation),人們已經對此已經有了很多研究。對網絡中的每個權重,產生一個隨機的小的臨時擾動向量。然後在一小批例子上測量全局目標函數的變化,你根據目標函數的改善情況,通過擾動向量的規模永久地改變權重。因此,如果目標函數變得更差,你顯然要去另一個方向。

這種算法的好處是,平均而言,它的表現與反向傳播一樣好,因為平均而言,它也會遵循梯度而行。問題是它的方差非常大。因此,當你選擇一個隨機的方向來移動時,所產生的噪音會隨著網絡規模增加而變得非常糟糕。這意味著,這種算法對少量的連接有效,但對大的網絡無效的。

我們還有一個更好的算法活動擾動學習(activity perturbation)。它仍然有類似的問題,但比權重擾動好得多。活動擾動是你考慮對每個神經元的總輸入進行隨機矢量擾動。你對神經元的每個輸入進行隨機矢量擾動,看看當你對一小批例子進行這種隨機擾動時,你的目標函數會發生什麼變化,你會得到由於這種擾動而產生的目標函數的差異,然後你可以計算如何改變神經元的每個傳入權重以遵循梯度。這種方法噪音更小。

對於MNIST 這樣的簡單任務,這樣的算法已經足夠好。但它的效果仍然不足以好到可以擴展到大型神經網絡。

我們可以嘗試找到一個適用於大型神經網絡的學習算法,而不是尋找可以適用於小型神經網絡的目標函數。我們的想法是要訓練一個大型神經網絡。而我們要做的是有很多小的目標函數,適用於整個網絡的一小部分。因此,每個小的神經元組都有自己的局部目標函數。

總結一下,到目前為止,我們還沒有找到一個真正好的可以利用模擬特性的學習算法,但是我們有一個學習算法還不錯,能夠解決MNIST 這樣的簡單問題,但不是那麼好。

非不朽計算第二個大問題是就是它的非不朽性。這意味著,當一個特定的硬件死亡時,它學到的所有知識都會隨著它一起死亡,因為它的學習都是基於其特定的硬件細節的。所以解決這個問題的最好辦法是在硬件死亡之前,你把知識從老師(舊硬件)那裡提煉出來給學生(新硬件)。這就是我現在正在努力推動的研究方向。

Midjourney 生成

老師會向學生展示對各種輸入的正確反應,然後學生試圖模仿老師的反應。這就好像是特朗普的推特。有些人對特朗普的推特非常生氣,因為他們覺得特朗普說的是假話,他們以為特朗普是在試圖闡釋事實。不是的。特朗普所做的是選出一種情況,對這種情況作出針對性的非常情緒化的反應。他的關注者看到之後,就學會瞭如何處理這種情況,知道瞭如何調整神經網絡中的權重,也對這種情況做出同樣的情感反應。這與事實無關,這是一個邪教領袖在向邪教追隨者傳授偏執,但它非常有效。

所以,如果我們考慮一下蒸餾法的工作原理,考慮一個agent 將圖像分類到1024 個不重疊的類別中。正確的答案大概只需要10 比特就能闡述清楚。因此,當你在一個訓練實例上訓練那個agent 時,如果你告訴它正確的答案,你只是把10 比特的約束放在網絡的權重上。

但是現在假設我們訓練一個agent,讓它按照老師對這1024 類別的回答調整自己。那就能得到同樣的概率分佈,分佈中得到1023 個實數,假設這些概率都不小,這就提供了數百倍的約束。

通常情況下,當你訓練一個模型時,你要在訓練數據集上進行正確的訓練,然後希望它能正確地歸納到測試數據上。但在這裡,當你找到學生時,你直接訓練學生進行歸納,因為被訓練的歸納方式與老師的方式一致。

我舉來自MNIST 關於數字2 的圖片數據作為例子講解。我們能看到老師分配給各種類別的概率。

第一行很明顯是一個2,老師也給出了2 的概率很高。第二行,老師非常有信心這是一個2,但它也認為它可能是一個3,或者它可能是一個8,你也可以看到,確實3 和8 與這個圖片有一絲相似性。在第三行中,這個2 與0 非常接近。所以老師會告訴學生,這個時候你應該選擇輸出2,但是你也要在0 上面下一個小質押。這樣,比起直接告訴學生這是一個2,學生在這個案例中能學到更多,它能學到這個圖形像什麼數字。第四行中,老師認為這是一個2,但是也有很大可能這是一個1,是圖片中我手寫的1 的那種寫法,偶爾會有人這樣寫1。

而最後一行,實際上AI 猜錯了,它認為這是一個5,而MNIST 數據集給出的正確答案是2。而學生實際上能從老師的錯誤中學習。

我非常喜歡知識蒸餾模型的一點是,我們是在訓練學生以與老師相同的方式來歸納,包括給錯誤的答案標記出小概率。通常,當你訓練一個模型時,你是給它一個訓練數據集和正確答案,然後希望它能正確地概括好而到測試數據集產出正確的答案。你試圖讓它不要太複雜,或者做各種事情,希望它能正確歸納。但在這裡,當你訓練學生時,你直接訓練學生以和老師相同的方式歸納。

所以我現在想談談一個agent 社區如何分享知識。與其考慮單個agent,不如考慮在社區內分享知識。

而事實證明,社區分享知識的方式決定了你做許多有關計算方式的事情。因此,有了數字模型,有了數字智能,你可以有一大堆agent 使用完全相同的權重副本,並以完全相同的方式使用這些權重。這意味著不同的agent 可以查看訓練數據的不同bits。

他們可以在這些訓練數據的bits 上計算出權重的梯度,然後可以平均他們的梯度。所以現在,每個模型都從每個模型看到的數據中學習,這意味著你獲得了看到大量數據的巨大能力,因為你會有不同的模型副本看不同的數據bits,他們可以通過共享梯度或共享權重來非常有效地分享他們學到的東西。

如果你有一個有一萬億個權重的模型,這意味著每次它們分享東西時,你會得到一萬億比特的帶寬。但這樣做的代價是,你必須以完全相同的方式進行數字agent 的行為。

因此,使用權重共享的一個替代方法是使用蒸餾。而這就是我們在數字模型方面已經做的事情。這是不同的架構。

但是,如果你有生物模型,而這些模型正在利用某一特定硬件的模擬特性,你就必須這樣做。你不能分享權重。因此,你必須使用分佈式共享知識,這不是很有效率。用蒸餾法來分享知識是很難的。我產生的句子,你試圖找出如何改變你的權重,以便你會產生同樣的句子。

但是,這比僅僅分享梯度的帶寬要低得多。每個曾經教過書的人,都希望說出他們所知道的東西,並把它倒入學生的大腦。那將是大學的終結。但我們不能這樣工作,因為我們是生物智能,我的方式對你沒有用。

目前為止,我們有兩種不同的方式來進行計算。數字計算和生物計算,後者是利用動物的特性。在如何在不同agent 之間有效地分享知識方面,它們是非常不同的。

如果你看一下大型語言模型,它們使用數字計算和權重共享。但是模型的每一個副本,每一個agent,都在以一種非常低效的方式從文件中獲取知識。用一個文件並試圖預測下一個單詞,實際上是非常低效的知識蒸餾,它學習的不是教師對下一個詞的概率分佈的預測,而是文件作者所選擇的下一個詞的內容。因此,這是很低的帶寬。而這就是這些大語言模型向人們學習的方式。

雖然大語言模型的每個副本學習效率都很低,但你有1000 個副本。這就是為什麼他們能比我們多學1000 倍。所以我相信,這些大型語言模型知道的是任何個人的1000 多倍。

現在,問題是,如果這些數字agent 不是通過知識蒸餾,非常緩慢地從我們這裡學習,而是開始直接從現實世界學習,會發生什麼?

我應該強調一下,即使用知識蒸餾法學習的速度很慢,但當它們向我們學習的時候,能夠學習到非常抽象的東西。人類在過去的幾千年裡已經學到了很多關於世界的知識,而數字agent 能夠直接利用這些知識。人類可以用語言闡述我們所學到的東西,所以數字智能體可以直接獲得人類在過去幾千年裡所學到的關於世界的一切知識,因為我們把這些東西寫了下來。

不過這樣,每個數字agent 的帶寬還是很低,因為它們是從文檔中學習的。如果它們進行無監督學習,比如通過對視頻建模,一旦我們找到對視頻進行建模來訓練模型的有效方法,它們就能從所有的YouTube 視頻中學習,這是將大量的數據。或者如果它們能夠操縱物理世界,比如它們能控制機器人手臂等。

我真心相信,一旦這些數字agent 開始這樣做,它們將能夠學習到比人多得多的東西,它們將能夠相當快地學會。因此,我們需要談到我PPT 上面提到的第二點,即如果這些東西變得比我們更聰明會發生什麼?

當然,這也是這次會議的主要內容。但我的主要貢獻是,我想告訴大家,這些超級智能到來的時間可能會比我過去認為的要早得多。

壞人們將利用它們來做諸如操縱電子設備,在美國或其他許多地方其實已經有人這樣做了,人們還會試圖利用人工智能贏得戰爭。

如果你想讓一個超級智能體更有效率,你需要允許它創造子目標。這就帶來一個明顯的問題,因為有一個很明顯的子目標,能夠極大增強它幫助我們實現做任何事情的能力:那就讓人工智能係統獲得更多的權力和控制力。控制力越強,實現你的目標就越容易。我不知道我們怎麼能夠阻止數字智能試圖獲得更多的控制權,以實現它們的其他目標。所以一旦它們開始這樣做,問題就產生了。

對於超級智能來說,即使你將其存放於完全離線隔絕的環境中(airgap),它也會發現可以很容易地通過操縱人來獲得更多的權力。我們不習慣思考比我們聰明得多的東西,以及我們要如何與它們互動。但在我看來,它們顯然會通過學習變得極其擅長欺騙人。因為它能夠看到大量的小說中或者尼古洛·馬基雅維利的作品中我們欺騙他人的實踐。而一旦你非常擅長欺騙別人,你就可以讓別人去執行你想要的任何行動。例如,如果你想入侵華盛頓的一座建築,你不需要去到那裡,你只需欺騙人們,讓他們認為通過入侵那座大樓,他們在拯救民主。而我覺得這非常可怕。

我現在看不出如何防止這種情況發生,而我已經老了。我希望,很多年輕而傑出的研究人員,就像大會中的你們一樣,能夠研究出我們如何能擁有這些超級智能——它們將使我們的生活更美好,而不讓它們變成主導的一方。

我們有一個優勢,一個微小的優勢是,這些東西不是進化而來,我們建造了它們。因為它們沒有進化,所以可能它們沒有人類所具有的競爭性攻擊性目標,也許這一點會有所幫助,也許我們可以給它們提供道德原則。但目前,我只是很緊張,因為我不知道在智力差距很大的情況下,有什麼例子表明更智能東西被不如它智能東西所控制。我喜歡舉的一個例子是,假設青蛙創造了人類。你會認為現在是誰擁有掌控權?青蛙還是人?我的講話就到這裡。

資訊來源:由0x資訊編譯自8BTC。版權歸作者所有,未經許可,不得轉載

Total
0
Shares
Related Posts