Categories
程式開發

實現通用人工智能,還需要解決這三個問題


原文最初發佈在 SICARA 博客,經原作者 Etienne Bennequin 授權,InfoQ 中文站翻譯並分享。

我們離通用人工智能還有多遠?我們通過研究當前機器學習的三個局限性來回答這個問題。

又來了。上週,當我給別人解釋我的工作時,他們打斷了我的話,說:“我明白了,你這是在建設天網對吧?”我認為我有必要寫下本文給他們看,因為我覺得,我這樣做能很好地為他們描述人工智能領域的現狀。

譯註:天網(Skynet),是《終結者》(The Terminator)電影系列中挑戰人類的人工智能超級計算機,原本是一個由美國政府研發出來的國防計算機系統,未來的世界因計算機防衛系統“天網” 產生自我智能,判定人類是威脅它們的物種,所以將其人類設定“毀滅” 而發生核戰。

image

通用人工智能與務實思維

不用說,超人類的人工智能遠未實現。儘管如此,我認為公眾對超級智能計算機統治世界的想法很著迷。這種著迷就叫做:奇點神話。

所謂奇點,是指人工智能將進入一個呈指數級提升的過程。一個軟件的智能程度會越來越高,以至於它能夠越來越快地提升自己。到了這個時候,技術進步將成為人工智能的專屬行為,對人類物種的命運產生不可預見的影響。

奇點與人工智能的概念有關。通用人工智能可以定義為能夠執行人類能夠完成的任何任務的人工智能。我覺得,這個概念比奇點概念更有意思,因為這個概念的定義至少比較具體。

譯註:奇點(singularity),一般設想為將由超越現今人類並且可以自我進化的機器智能、或者其它形式的超級智能的出現所引發。由於其智能遠超今天的人類,因此技術的發展會完全超乎全人類的理解能力,甚至無法預測其發生。之所以被稱為奇點,因為它是一個臨界點。當我們越來越接近這個臨界點,它會對人類的事物產生越來越大的影響,直到它成為人類的共識。但當它最終來臨的時候,也許仍會出人意料並且難以想像。就好比物理學上引力接近無窮大時產生的黑洞的物理屬性一樣,已經不在一般正常模型所能預測的範圍之內。

因此,你可以使用一些元素來決定一個算法是否為通用人工智能。我,一個人類,可以設計出實用和創新的解決方案,以增加你的數據的價值。但當前的人工智能軟件還不能做到這點。因此,它還沒有達到通用人工智能的級別。

更為有用的是:如果我們能夠識別出人類智能的特徵,那麼我們就可以知道我們的算法中缺少什麼,從而可以改進它們。

讓我們就這樣做吧。

我們該如何描述人類智能的特徵?

我們對通用人工智能定義為:至少可以與人類智能能力相匹配的人工智能。如果我們想更進一步的話,最好能夠知道是什麼造就了人類智能。

我們有兩個選擇:要么我們關注人類智能的本質,要么我們關注它的特徵。它起源於自然,特徵就是我們如何識別它。

在每個研究領域中,都有成千上萬的理論旨在定義人類智能的本質,如心理學、生物學、遺傳學、社會學、認知科學、數學、神學……而所有這些我幾乎一無所知。但有個好消息是:我們只需關注人類智能的特徵即可。

如果我們想要更接近通用人工智能,最好的辦法就是不要試圖複製人類大腦。通用人工智能的定義是功能性的:一種可以執行人類能夠完成的任何事情的人工智能。那麼,人類智能能夠做什麼呢?

當然,要列舉出一個詳盡的清單,我們可做不到。但我們能想到的特徵倒是有很多,比如:

  • 抽象推理

  • 從過去的經驗學習

  • 元素的組成

  • 對新環境的適應性

  • 創造力

  • 共情能力

  • 感知

  • 解決問題

  • 溝通

  • 還有更多

我說過,我們離實現通用人工智能還很遠的原因有三個。因此,我將任意選擇人類智能的三個特徵,這三個特徵是我們的算法目前所不具備的:

  • 分佈外泛化(Out-of-distribution generalization)

  • 語意合成性(Compositionality)

  • 有意識的推理(Conscious reasoning)

平心而論,我選擇這三個特徵也不是那麼武斷。之所以要關注人類智能的這三個特徵,是因為我們有辦法實現它們。這難道不令人興奮嗎?

通用人工智能的這三個特徵

分佈外泛化

根據認知結構可變性(Structural Cognitive Modifiability)理論,智能是是指“人類改變或修改其認知功能結構以適應生活環境不斷變化的需求的獨特傾向。”不可否認的是,我們人類非常善於適應巨大的變化。當還是嬰兒最小的時候,人類的身體和環境變化就非常快,但嬰兒就能夠適應這些變化,不斷學習。

譯註:所謂認知結構,就是學習者頭腦裡的知識結構。個人的認知結構是在學習過程中通過同化作用,在心理上不斷擴大並改進所積累的知識而組成的,學習者的認知結構一旦建立,又成為他學習新知識的極重要的能量或因素。認知結構可變性的核心思想是個體認知結構是一個開放的系統,個體在新情境的學習活動中有學習並改善自身認知結構的潛能,這種潛能也被稱為“認知改變力”也即“’學會如何學’的能力”。

但就目前機器學習的現狀來看,人工智能是不可能適應如此徹底的變化的。我想,我有一個堪稱完美的例子,可以告訴你我們在通往通用人工智能的路上到底處於什麼位置。

ObjectNet 示例

幾個月前,麻省理工學院的學生髮布了 ObjectNet。它是目標識別算法的測試數據集。而且它完全是由奇怪的角度或不尋常的環境中的物體照片組成的。

image

人類在識別這些物體時,絕對不會有任何問題。因此,通用人工智能也不會有問題。然而,當在這個數據集上進行測試時,與通常的 ImageNet 的測試集相比,最先進的算法正確率下降了 40~45%。即使這些算法已經用成千上萬的錘子或烤箱手套訓練過,但當它們被設定在一個從未見過的環境中時,反而無法識別出來。

這背後的原因是,最先進的機器學習算法並不善於在其訓練過的分佈之外進行泛化。它們所擅長的是在這個分佈之內進行推斷。這意味著,如果你展示一張與它們所看過的非常相似的圖像,如果這個圖像能夠以很高的概率存在於它們從你已經展示給它們的圖像所構建的世界的視野中,那麼它們就會擅長處理這個圖像。但是截止目前,人工智能的想像力還是非常弱。這使得它們對世界的看法受到所展示樣本的限制。

元學習和語意合成型

但是,為什麼我們人類就擅長這種泛化問題呢?最先進的算法在達到通用人工智能方面還缺少什麼?對於這一問題,我有兩個答案。當然這答案並不是詳盡的,但對我來說,它們提供了令人滿意的改良區。

第一個原因是元學習(Meta-learning)。元學習可以定義為學會學習。我們說,當一個個體(人類或人工智能體)在一個特定任務上的表現隨著這個任務的經驗而提高時,它就是在學習。相比之下,當個體在一個新任務中的表現隨經驗和任務數量的增加而提高時,它就是在學習如何學習。

因此,元學習的目標是開發能夠快速、有效地適應新任務的算法。所以,元學習算法通常在訓練分佈中的泛化能力較好,因為它們沒有經過專門處理某項任務的訓練。它們已經被訓練成能夠適應新的、以前不太可能見過的數據。人類是元學習的實踐者,因為:

  1. 他們終其一生都在接受各種任務的訓練;

  2. 他們從祖先的經驗中受益。自然選擇是進化的訓練策略。我們和所有其他物種一樣,從基因中繼承,這些基因從生活在難以想像的多樣化環境中的先祖身上學到一點東西。這是我能想到的、最令人印象深刻的元學習例子。

我能提供的第二個解釋是,為什麼人類比機器學習算法在對未見過情況的歸納能力要強得多,這就是語意合成性。我有一整章的篇幅來說明這一點。

語意合成性

語意合成性的含義可能不是一眼就能看清楚的。 Chrome 甚至堅稱它不是一個詞彙。那麼悶,讓我們從一個定義開始。語意合成性是從有限的組合中學習,關於一組更大的組合。讓我們來看看這個典型的社交網絡垃圾的例子。

image

你是天才嗎?

這是語意合成性的一個很好的例子。從三個元素(本文是蘋果、香蕉和葉子)的有限組合狀態中,你應該能夠推斷出這些元素的任何新組合的值。

語意合成性與語言哲學密切相關。複合性原理指出,一個複雜表達式的意義是由其各組成部分的意義以及用以結合它們的規則來決定的。 “People love apples”有著特殊的含義,而“Apples love people ”則有另一種含義。同樣的元素,但組合方式不同。

更廣泛地說,我們一直在組合元素:發明新概念、新對象,並理解它們。 2015 年,Bernden Lake 和他的團隊在他們的論文《通過概率程序歸納進行人類水平的概念學習》(Human-level concept learning through probabilistic program induction)中,選擇了交通工具作為例子。

image

通過語意合成性,我們能夠很容易地想像新的對象。總結一下,我們可以利用我們所知道的關於一組對象的知識來學習組成對象的概念,因此,我們可以推斷出在訓練數據集的分佈下概率為零的新對象。

數學插曲:零概率

image

在訓練數據集的分佈下,概率為零是什麼意思?在上圖中,訓練數據集是用綠點表示的所有示例的集合。使用這組示例,大多數機器學習算法都會對概率分佈進行建模(這裡用的是高斯(Gaussian)模型)。

這代表了算法認為最有可能發生的事情。有些案例,通常是因為它們與訓練集中實際發生的案例很接近,因此即使在我們從未見過的情況下,它們在訓練分佈下的概率也很高。機器學習算法非常擅長處理這些情況。

在訓練數據集分佈情況下,其他情況概率為零。這並不意味著它們永遠不會發生。這只是意味著,根據算法在訓練數據集中“看到”的內容,它們不是算法的世界觀的一部分。這種算法在處理這些情況時,表現會非常糟糕。

但是,使用語意合成性,我們已經看到,我們可以通過重新組合構成我們已經看到的案例的元素來生成這些案例。這是拓寬機器學習算法視角的絕佳機會。直到今天,我依然相信這是我們最好的改良區之一,也許,在未來某一天,通用人工智能將會得以實現。

意 識

“意識”是一個很大的詞。就像所有的大詞一樣,它有很多複雜的定義。有些人考慮的是意識的本質,有些人則考慮的是意識的功能。每一次都是從不同的角度來看的。我們不會試圖去解決意識的整個概念。我們將重點討論有意識的推理。

當我們以積極的方式思考時,我稱之為有意識的推理。例如,當你想到呼吸,有意識地進行呼吸時,你會交替地專注於吸氣和呼氣。而當你不去想呼吸這碼事的時候就不一樣了。

很難想像,當你不專注於呼吸時(甚至當你睡著的時候),你的身體在吸氣和呼氣之間控制著你的呼吸。這個過程更像是許多生物現象的組合的結果(許多器官收縮和舒張,氧氣從空氣轉移到血液中,二氧化碳從血液轉移到空氣中……)。

這就是有意識推理的特殊性:它能夠通過非常高層次的概念來處理現實。通常情況下,這些概念可以用文字或句子來表達。為了理解這一點,我在 2019 年 NeurIPS 大會上聽到 Yoshua Bengio 演講中的一個最好的例子,正是這個例子啟發了本文。

image

當你開著車上下班時,每天都是同樣的通勤,就會變成自動駕駛。你走的是一條完全熟悉的路,根本不會去想它。然而,當你開車去朋友家,在很遠很遠的地方,在一個你從未去過的城市,你開車的方式就完全不同了。你會更加專注。你會主動地去思考每一個轉彎,看清每一個路標。

這種操縱高級概念的能力,是最先進的機器學習算法所缺乏的另一點。幸運的是,實現這種能力還有希望。

全局工作空間理論

image

在認知科學中,全局工作空間理論(Global Workspace Theory)認為存在信息瓶頸。在每一個瞬間,只有一小部分感知到的信息被這個瓶頸過濾,並在整個大腦中進行廣播。這種信息連續流動的概念受到個社區的廣泛質疑。不過,這裡有一個有趣的收穫。我們在有意識的推理過程中操縱的高層次概念是基於低層次、高緯度的信息。所有進入瓶頸的感知。

這啟發了機器學習的一個新興分支:注意力機制(Attention mechanisms)。 2015 年,Dzmitry Bahdanau 和蒙特利爾大學的研究人員於 2015 年首次提出。從那時起,注意力機制讓神經機器翻譯和自然語言處理以及其他技術改進取得了巨大的進展。例如,他們提出了一個有效的解決深度神經網絡中反復出現的梯度消失問題的解決方案。

注意力機制背後的邏輯很簡單:通過一次只關注幾個輸入元素來簡化計算。這聽起來是不是很耳熟?如果我們繼續研究注意力機制,我們就能更接近人類的能力,將成千上萬的低級感知與少量有意識操縱的高級概念聯繫起來。

我們離通用人工智能還有多遠?

我剛才說漏了一句:很遠。我們必須承認,在那三個特徵中,即使我們可以希望在不久的將來取得巨大的進步,但離人類水平的表現仍然相去甚遠。我們還必須記住,這是三個最有希望的改良區,就算解決了它們,也遠不足以實現通用人工智能。

通用人工智能是一個讓人熱血沸騰的熱門詞彙,因為它要么是巨大的承諾,要么是可怕的威脅。像其他任何一個熱門詞彙一樣,必須謹慎地使用它。我必須承認,在本文中,我將它作為一個藉口,就是為了讓讀者註意到有意識的推理、語意合成性和分佈外泛化。因為與奇點或通用人工智能不同,它們代表了改進機器學習算法的實用方法,實際上是可以提升人工智能的性能的。

作者簡介:

Etienne Bennequin,數據科學家,致力於元學習和少樣本計算機視覺的研究。

原文鏈接:

https://www.sicara.ai/blog/artificial-general-intelligence