邁克爾·喬丹,美國加州大學伯克利分校陳丕巨集傑出教授( Pehong Chen Distinguished Professor),美國科學院、美國工程院、美國藝術與科學院的院士,ACM,IEEE,AAAS,,AAA I,ASA,IMS等學會會士(Fellow),機器學習領域國際著名學者。
本文分七部分:為何我們談論計算模型時不該繼續用腦作比方 霧裡看花的機器視覺 為什麼大資料可能只是一場空歡喜 有10億美元他會幹什麼 如何避談「技術奇點」(singularity) 比起P=NP 他更關心什麼 圖靈測試的意義到底在哪裡
一、為什麼我們談論計算模型的時候不該繼續用腦作比方
S:從您的文章中可以看出,您認為外界對於深度學習、大資料、計算機視覺凡此種種存在著諸多誤讀。
M:嗯,所有學術問題都有這樣的誤讀。媒體總是盡力發掘那些抓人眼球的話題,有時候有些報導就言過其實了。就拿深度學習來說,基本上就是把神經網路重新包裝了一下,而神經網路20世紀80年代就有了,甚至可以再往前追溯到60年代,感覺每二十年它就會捲土重來一次。目前在這一撥熱潮中,主要的成功例子是卷積神經網路,可是這個想法早在上一撥就出現過了。那時候就有一個問題,並且遺憾的是目前這個問題仍然存在:即人們總是認為它(指人工神經網路。——譯者注)和神經科學有著某種聯絡,並且認為深度學習是人們對腦如何處理資訊、學習、決策乃至應對大規模資料的認識。而事實顯然不是這樣。
S:作為媒體從業人員,我對您剛才的話有些異議,原因是很多時候正是學術圈裡的人非常渴望地想讓我們寫一些關於他們的故事。
M:是的,這算是一種合作關係吧。
S:我一直以來都有這樣的印象,當電腦科學領域的人描述腦是如何工作的時候,他們總是採用一些極其簡化的說法,而神經科學家們也許永遠都不會採用這樣的說法。您稱之為腦的「卡通模型」。
M:我可不想簡單地給人貼上標籤,說電腦科學家們都是某種樣子,神經科學家們又是另外一種樣子。但有一點是對的,對於神經科學來說,理解一些深刻的原理可能要耗費數十、甚至數百年之久。神經科學的最底層研究的確有一些進展,但是說到更高階的認知行為——比如我們如何感知、記憶或行動,我們還毫無頭緒,包括神經元如何儲存資訊、如何進行計算、遵循什麼準則和演算法、採用哪種表示等。所以,我們還沒有步入可以利用我們對腦的認識來指導搭建智慧系統的時代。
S:除了批評那些腦的「卡通模型」,您其實還進一步批評了那一整套所謂「神經現實主義(ne ural realism)」的思潮——他們認為一個硬體或者軟體系統只要擁有了某些腦的疑似特徵就會因此變得更加智慧。您是如何看待那些聲稱比如「我的系統是一個類腦系統因為它是大規模並行的」的電腦科學家?
M:啊,這些只是打個比方而已,某些時候還挺管用的。流和流水線就是從各種電路里引申出來的概念。我記得20世紀80年代早期的時候,電腦科學還基本都在關注順序架構——也就是馮·諾依曼的那種一段儲存的程式被順序執行的模式。由此便有了想要突破這種正規化的需求,所以人們尋求高度並行大腦的一些比喻,那還是有用的。
可是研究內容轉變之後,並不是所謂的神經現實主義引導著主要的進展。在深度學習中被證實最為成功的演算法是基於一種叫做反向傳播的技術:(假設)你有若干層處理單元,並且從最後一層獲得了輸出,然後你把一個訊號反向傳播回去以調整所有的引數。顯然腦是不會這樣做的,這絕對是與「神經現實主義」偏離的,但是它帶來了顯著的研究進展。可是人們往往將那些個別的成功例子與其他所有企圖搭建類腦系統而效果卻又不及萬一的嘗試混為一談。
S:對於神經現實主義的失敗,您還提到了(人工)神經網路中並不存在哪怕一處比較符合神經科學的地方。
M:深度學習系統中並不存在神經脈衝這樣的東西,也沒有神經樹突,倒是有雙向訊號這樣的腦中並不存在的東西。
我們不知道神經元是如何學習的。它是隻在負責學習的突觸的權重中有一個細微的改變嗎?人工神經網路就是這麼做的,而我們對於在腦中到底如何進行學習的則知之甚少。
S:我經常讀到工程師們在描述他們新的晶片設計時採用了一種在我看來是不可思議的亂用的說法。他們會說晶片上的「神經元」或「神經突觸」。但那簡直是不可能的——神經元是一個活生生的細胞並且具有非凡的複雜性。難道工程師們不是擅用了生物學的語彙來描述一些在複雜程度上不及生物系統萬一的結構嗎?
M:呵呵,我想我還是小心為上。我認為有必要區分兩個使用「神經」這一詞彙的不同場合。
一個是深度學習。在那裡每個「神經元」其實是一種簡筆畫式的描述。它實際上是一個線性的加權求和再通過一個非線性(變換),電子工程領域內隨便誰都熟識這種非線性系統。把那稱作為神經元顯然是一個簡稱,就像簡筆畫一樣。有一種在統計學中被稱之為邏輯迴歸的過程,可以追溯到20世紀50年代,它跟神經元毫無關係而又和上述這種微小單元(指人工神經網路中的「神經元」。——譯者注)別無二致。
另一個就與你剛才提到的相關。如果我沒理解錯的話,他們試圖模擬實際的腦,或者至少是一個實際的神經元迴路的簡化模型。但我發現一個問題,那就是這種研究沒有與對這個系統在演算法層面上究竟可以實現什麼功能的認識相結合,也沒有與一個接收資料並且解決問題的學習系統相結合,比如視覺系統。它其實僅是一個架構,指望著哪一天人們會找到一些讓它能派上用場的演算法,可是又沒有什麼清晰的跡象表明這種願景指日可待。我覺得它是基於這樣一種信念,即如果你造出了像腦一樣的東西,有朝一日它自會找到用武之地。
S:如果可以,您會宣稱禁止將腦的生物學原理當成計算模型來使用嗎?
M:我不會。你應該從任何可能的地方汲取靈感。就像我剛才提到的,早在20世紀80年代,說一些「讓我們跳出順序的馮·諾依曼架構,來多想想高度並行化的系統吧」的話事實上是很有益處的。但是就現在來講,顯然腦所用的細緻的處理方式對於(我們設計)演算法過程沒有太大啟示,因此我認為用腦來刻畫我們的所作所為是不合適的。我們並不知道腦是如何處理視覺資訊的。
二、霧裡看花的機器視覺
S:在談到視覺系統的研究時,您曾經使用了「hype」(意為猛烈且誇大的宣傳——譯者注)一詞。最近似乎盛傳著一些故事,談到計算機已經如何解決了視覺問題並且就視覺而言與人類已經不相上下。您認為這靠譜嗎?
M:人類(的視覺系統)可以應對混雜的場景,可以處理為數眾多的(物體)類別,還可以針對場景做出推理,比如「如果我坐在那上面會怎樣」,「我把一個東西放在另一個東西上面會怎樣」,而這些都遠超目前機器能力之所及。深度學習只是在某些影象分類的問題上效果不錯,可以回答如「這個場景中有什麼物體?」這類的問題。
但是計算視覺問題的範疇非常大。這就好比聲稱當(牛頓看見)那個蘋果從樹上掉下來的時候,我們就已經掌握了整個物理學。誠然,由此我們對於力和加速度有了更多一點兒的瞭解,這很有意義。在(機器)視覺方面,我們現在有了一個可以解決某一類問題的工具,但因此就說它解決了全部的問題是荒謬的。
S:與人類能做的所有事情比起來,我們現在能解決的視覺問題佔了多大一部分呢?
M:比如人臉識別問題,人們認為它是可以解決的已經有一段時間了。除了人臉,還有其他一些物體類別也是如此,比如「場景中有一個杯子」,「場景中有一隻狗」。但是要同時識別一個場景中的許多種類的不同物體以及它們如何相互關聯,或是一個人或機器人會如何與那個場景互動,這仍然是一個很難的問題,離解決還差得很遠。
S:即使是人臉識別,我印象中它也只是在有了非常乾淨的影象的前提下才有效果。
M:對,要讓它更有效仍然是一個工程問題。隨著時間推移,你會看到它會變得更好。但要說什麼「革命性的」之類的話就言過其實了。
三、為什麼大資料可能只是一場空歡喜
S:現在我們不妨將話題轉到大資料上。您的言論中始終認為當前對大資料的執著裡有把「黃銅當金子」的成分。比如您就曾預測公眾即將經歷一場大資料專案帶來虛警的流行病。
M:當你有了大量的資料之後,你就會想提出更多的假設。而一旦提出假設的速度超出了資料的統計內涵(statistical strength),那麼你的推斷裡有很多都可能是錯誤的。它們也許就只是白噪聲。
S:為什麼會這樣?
M:在傳統的資料庫裡,你有比方說幾千個人(的資料)。你不妨把他們看成資料庫中的行,而列就對應了這些人的屬性:年齡、身高、體重、收入等等。
現在,這些列的組合數目是以指數的速度隨著列數增加的。因此如果你有非常非常多的列(現代的資料庫裡的確如此),那麼對每個人你都會得到數以百萬計的特性。
假如我現在開始檢視這些屬性的所有組合——你是否在北京生活,是否騎自行車上班,是否從事某項工作,是否處於某個特定的年齡——那麼你得某種疾病或者你喜歡我的廣告的概率是多少呢?我將得到數以百萬計的屬性組合,並且這些組合的數目是指數級別的;它會達到宇宙中的原子數目的規模。
這些就是我想要考慮的假設。在任何一個特定的資料庫裡,我都能找到這些列的某種組合來完美地預測任何結果,哪怕只是隨機地挑選。如果我只是檢視所有發生過心梗的人,把他們同所有未發生過心梗的人作比較,並尋找可預測心臟病的列的組合,我就的確能夠找到列的各種各樣的疑似組合,這是因為它們數量龐大。
這就好像讓好幾十億隻猴子在那打字,總有一個會寫出莎士比亞。
S:您認為大資料的這一面目前沒有得到重視嗎?
M:當然。
S:有哪些東西是人們承諾大資料能帶來的而您認為其實是無法兌現的?
M:我認為資料分析能夠按某些質量標準釋出一些推斷,然而我們必須交代清楚這些質量標準到底是什麼樣的。我們必須在我們所有的預測上加上誤差線(error bar),而這正是在目前很多機器學習文獻中所欠缺的。
S:如果處理資料的人並不理會您的建議會發生什麼情況呢?
M:我喜歡使用造橋來做類比。假設我不依從任何準則,毫無科學根據地建造了上千座橋樑,那麼它們有很多都會崩塌,造成巨大的災難。
與此類似,假設人們使用資料並根據這些資料做出推斷而完全沒有考慮誤差線、資料異構、噪聲資料、取樣模式,以及所有那些作為一個工程師和統計學家必須慎重對待的事情,他們就會做出很多的預測,並且有很大可能會偶爾解決一些真正有意思的問題。但是時不時地還會做出一些災難性的糟糕決定。這其中的差別你事先是不會知道的。你就只能做出預測然後祈禱一切順利。
這就是我們的現狀。許多人在(用大資料)做一些事情,期望它們能有用,有時它們確實起作用了。從某種意義上講,這麼做也無可指摘,這本就是探索性的工作。但是就整個社會而言,不能放任這種情況發展,我們不能只是「但願」它們有用,到頭來我們還是要給出切實的保證。土木工程師最終學會了如何建造能夠持久屹立的橋樑。那麼說到大資料,我猜可能還要過幾十年才能形成一個真正的工程學方法,以便你能夠有一定程度的保證說,你正在公佈合理的答案並且在對出錯的可能性進行量化分析。
S:我們現在有提供那些誤差線的工具嗎?
M:我們正在著手把這門工程科學組裝起來。我們有許多想法,它們來自於數百年的統計學和電腦科學的研究,我們正致力於把它們融合到一起,讓它們具有可擴充套件性。過去30 年間湧現了許多關於如何控制所謂的「族群誤差」(family wise errors)的想法,也就是在有多個假設的情況下想知道誤差率。但這些想法仍有許多還沒有從實際計算的角度進行研究。解決這些問題是很難的數學和工程課題,並且需要時間。
這不是一兩年的問題,而是需要幾十年才能做好。我們仍舊在學習如何用好大資料。
S:在閱讀關於大資料和醫療保健的報導時,差不多每三篇就有一篇在談我們將幾乎完全自動地靠著從每個人身上(尤其是在雲端)收集資料來獲得令人驚歎的臨床診斷的發現。
M:對這種事,你既不能全盤懷疑也不能徹底樂觀,應該就在這兩個極端之間。但是如果你把某些資料分析中得到的假設全部列出來,那麼總有一部分是有用的,你只是不知道是哪一部分。所以如果你隨便挑出幾條來——比如說「吃燕麥麩就不會得胃癌」之類的,因為從資料上看似乎如此,那麼你會有一些走運的機會。資料是能提供某種支援的。
但是這還是在賭博,除非你真的做了完整的工程統計分析來給出誤差線並且量化錯誤率。雖然它比沒有資料就直接賭博要好些,那是純粹的輪盤賭。而這是一種部分的輪盤賭。
S :如果我們繼續在您描述的那條(錯誤的)軌跡上前進,大資料將會面對怎樣的不利後果?
M:最主要的就會是一次「大資料的冬天」(暗指20世紀七八十年代的「人工智慧的冬天」——譯者注)。在一場泡沫之後——人們已經投了錢,一大批公司作了承諾卻又拿不出嚴肅的分析結果——泡沫會破碎。並且很快,在2至5年間,人們就會說「大資料來了又走了,它死了,並且是錯的。」我預言的是那樣。當炒作過了頭的時候,這就是在那些迴圈往復之中會發生的事情。這些炒作或者說斷言,既不是基於對真正的問題是什麼的理解,也不是基於解決問題可能要好幾十年或者說我們會取得逐步進展的理解,而是基於一種我們還沒有在技術進步中取得關鍵性跨越的理解。在此之後可能會有一個時期,獲取資源來做資料分析變得十分困難。(當然)這個領域會繼續發展,因為它是真實的也是有實際需求的。不過這種反彈勢必會對一大批重要的研究專案造成不利影響。
四、有10億美元他會幹什麼
S :想想花在那上面的那麼多錢,展示廣告的背後的科學仍然看上去不可思議的簡單原始。我有個愛好就是去搜尋一些荒唐的Kickstarter(一個面向全球的眾籌平臺,人們在上面釋出專案創意吸引感興趣的人投資,投資者將會獲得一些特別的先期回報——譯者注)項的相關資訊,主要就是想感受一下它們到底有多可笑,然後我就在好幾個月內都一直被展示來自那些公司的廣告。
M:嗯,這仍然是個「譜分佈」,取決於我們如何設計系統以及我們涉及的範疇。在某些範圍狹窄的範疇內,它(指廣告推薦)可以工作得非常好;而在非常寬泛的範疇下,語義變得比較模糊,則可能變得很糟糕。我個人覺得亞馬遜公司針對圖書和音樂的推薦系統非常非常棒。那是由於他們擁有大量的資料,並且(系統所涉及的)範疇相當受限制。而在襯衫或者鞋子這樣的範疇下,語義變得比較模糊,他們擁有的資料量也較少,因此係統效能就差得多。
雖然還有許多問題,但是搭建這些系統的人們仍在全力以赴。我們目前的切入點就是語義與人的偏好。假如我購買了一個冰箱,這並不表示我通常對冰箱有興趣。我已經買了一個,那麼我可能不太會再對它們有興趣了。然而假如我購買了一首泰勒·斯威夫特(Taylor Swift)的歌曲,則我很有可能購買更多她的歌曲。這與歌手或是產品或者物體的特定語義相關。要在人們廣泛的興趣「頻譜」範圍內把這件事做好需要大量的資料與工程實踐。
S:您曾經說要是您有一筆不受限制的10億美金的資助,您會把它用在研究自然語言處理上。您會做什麼事是谷歌在谷歌翻譯中還沒有做的呢?
M:我相信我想幹的事谷歌都已經在做了,但是我認為谷歌翻譯(它涉及機器翻譯)不是唯一的語言問題。另有一個好的語言問題的例子就是問答系統,比如「加州第二大不臨河的城市是哪個?」假設我現在把這句話輸入谷歌,我不太可能得到一個有用的答案。
S:所以您的意思是有了那10億美元,至少就自然語言而言,您能夠解決通用知識的問題並且摘取人工智慧的冠上明珠,即像人那樣思考的機器?
M:是的,你得要切出一個較小的問題,這類問題並不包羅永珍,卻能讓你取得進展。我們做研究就是如此行事。我可能會挑一個特定的領域——實際上我們在進行地理問答的研究。那會讓我得以專注於某類特定的關係與資料,而不是這世上的所有事情。
S:如此說來,要在問答上取得進步,您就得把它侷限在某個特定的領域內嗎?
M:你能取得多大的進步是一個經驗主義的問題。答案取決於在這些領域中有多少可用資料,你能付多少錢讓人們把他們對這個領域的瞭解落實到紙上,以及有多少標註資料。
S:即使有10億美元,我們仍然可能只是得到一個不那麼通用的,只在某一個領域內可用的系統,這聽上去不太給力啊。
M:通常每一項這樣的技術都是這樣演進的。我們早先討論過視覺。最早的視覺系統是人臉識別系統,那是領域受限的。但也正是從那兒開始我們見證了一些早期的進展並且對於它們可能真的管用(這個信念)有了一點感性認識。在語音領域也是如此,最早的進展是針對單一獨立的單詞的;然後慢慢地開始進到了能夠處理整句話的地步。(技術)進步都是那樣的——從一個受限的東西變得受限越來越少。
S:我們到底為什麼需要更好的問答系統呢?谷歌現在這樣難道還不夠好嗎?
M:谷歌有一個非常厲害的自然語言研究組正好就在做這事,因為他們認識到他們對某類查詢表現得很糟糕,比如使用「不」這個詞的查詢。而人們需要使用「不」,比方說「告訴我一個不在河邊的城市」。在當前的谷歌搜尋引擎裡,這個查詢得不到很好的處理。
五、如何避談「技術奇點」
S:現在換個話題。假設您在矽谷和人談話,然後他們對您說,「告訴你啊喬丹教授,我可是技術奇點(singularity)的擁躉呢。」您對他們的印象會變好還是變壞?
M:幸運的是我還從來沒有碰到這樣的人。
S:天啊,怎麼會!
M:真的沒有,我生活在工程師和數學家組成的知識分子的小圈子裡。
S:但是假設您真的碰到了這樣的人,您會怎麼辦?
M:我會摘下自己作為一名學者的帽子,然後就跟個想著幾十年後會發生些什麼的普通人一樣。我會饒有興趣,就好像我讀科幻小說時那樣。然而這並不能指導我所做的任何學術研究。
S:好吧,但是基於您做學術研究的認識,您怎麼看待這個問題呢?
M:我的理解是它不是一個學術上的科目,在一定程度上是關於社會演化以及個體改變的哲學問題,同時在某種程度上又是文學,就像科幻小說那樣思考著技術發展帶來的一系列後果。但這並不能產生演算法層面的創意,至少我是這麼認為的因為我從來沒有見到,而這些創意才能啟發我們如何取得技術進步。
六、比起P=NP他更關心什麼(譯者注:P指的是在圖靈的計算模型下有多項式複雜度演算法的解的問題,NP為已知可解但未知有多項式複雜度演算法的解的問題。P是否等於NP是理論電腦科學關心的核心問題之一,即探討這兩類問題是否實際為同一類,亦即是否任何一個圖靈可解問題都存在一個多項式複雜度演算法的解。)
S:您對P是否等於NP有猜想嗎?您關心嗎?
M:對於多項式與指數之間的差別我倒不是那麼在意,我更感興趣的是低維多項式——線性時間和線性空間。P還是NP意謂把演算法分類為多項式複雜度(因而可以有效求解)以及指數複雜度(因而沒法有效求解)。我認為大多數人會贊成也許P是不等於NP的。作為一個數學問題去弄明白它是很有趣的。但是這兩者的界限並不那麼分明。有許多指數時間的演算法在某些受限的領域內仍然是可用的,其中部分原因是由於現代計算機的發展。此外,對於最大規模的問題,多項式複雜度不足以保證有效求解。多項式只是代表複雜度以一個超線性的速度增長,比如平方或者立方,而最大規模的問題確實有必要要求時、空開銷隨規模以線性速度增長。就是說,假設你又拿到了5個資料樣本,你就只須再多付出5份計算開銷;甚至是次線性,比如對數級別:我拿到100個新的資料樣本,開銷就增加2份;拿到1000個新樣本,開銷增加3份。
那是理想的情況。那樣的演算法正是我們要關注的,而這個問題與P和NP的問題相去甚遠。P是否等於NP是一個非常重要也非常有趣的智力問題,但是它對於我們研究的問題並沒有多少指導意義。
S:同樣的問題對量子計算又如何呢?
M:從學術研究的角度講,我對這些東西都感興趣。它是真實的,它是有趣的,只是它確實對於我的研究領域還沒有什麼影響。
七、圖靈測試的意義到底在哪裡
S:在您的有生之年機器會通過圖靈測試嗎?
M:我認為機器的能力是慢慢地積累起來的,包括在諸如語音、視覺與自然語言這樣的領域內。也許不會有那麼一個孤立的時間點讓我們想說「現在宇宙中誕生了一個新的智慧體」。我認為像谷歌這樣的系統就已經提供了一定程度上的人工智慧。
S:這些系統的確很有用,但是它們從來不會被誤認成是一個人。
M:的確不會。我認為我們多數人不會覺得圖靈測試是一個非常清晰的界限。然而,當我們看到智慧的時候我們都能認出來,並且它在我們周圍的各種裝置上逐漸顯現。它並不一定要嵌入一個單獨個體。我能意識到我周圍的基礎架構變得更加智慧。我們所有人不論何時都正在意識到這一點。
S:在您說「智慧」這個詞的時候,您是否只是把它用作「有用」的同義詞?
M:沒錯。我們這一代感到驚奇的事情——比如計算機某種程度上識別到了我們的所需、所求、所欲——我們的孩子們會覺得沒那麼驚奇,而他們的孩子們會更加覺得沒什麼驚奇。(到了那時)人們會理所當然地覺得我們周圍的環境是自適應的,是有預測能力的,魯棒的。那還包括通過自然語言與你的環境進行互動的能力。某一天,你會驚訝於可以與你的環境進行一場自然的對話。目前我們在非常受限的條件下可以部分地做到這些,比如說我們可以(在網上)進入自己的銀行賬戶。這是非常非常初級的。但是隨著時間的推移,我們將會發現這些東西變得更加細緻,更加魯棒,也更加廣泛。某一天,我們會讚歎:「哇!我小時候跟現在天差地別。」圖靈測試幫助這個領域起了步,但是到頭來它就會像土撥鼠日(譯者注:北美地區每年2月2日的一個傳統節日,那一天人們用土撥鼠預測春天的到來。)那樣——是一個媒體事件,但其實沒那麼重要。
譯者資訊:
徐旻捷,清華大學博士生。主要研究方向為非引數化貝葉斯方法、矩陣低秩分解。chokkyvista06@gmail.com
朱 軍,CCF會員、本刊編委,CCF青年科學家獎、優秀博士學位論文獎獲得者。清華大學副教授。主要研究方向為大規模機器學習等。dcszj@mail.tsinghua.edu.cn
原文出自IEEE Spectrum,作者Lee Gomes,本文為中國計算機學會授權機器之心轉載,禁止再次轉載。
本文轉載自《中國計算機學會通訊》2014年11月期《機器學習大家邁克爾·喬丹談大資料等重大技術探索的迷思 》和2014年12月期《機器學習大家邁克爾·喬丹談大資料可能只是一場空歡喜》兩篇文章,譯者為徐旻捷和朱軍。微信公眾號:中國計算機學會。