文/張崢 編輯/甄知
未來論壇在上海紐約大學(xué)舉辦的一次講座之后,嘉賓互動環(huán)節(jié)有這么一個問題:“人工智能(AI)最大的應(yīng)用場景在哪?”我半開玩笑地回答:“在飯局上。”
人工智能是IT公司蜂擁爭搶的標(biāo)簽,也是媒體和大眾的熱點議題。這不是壞事,但并不是說不需勘誤。
比如這樣的說法:
“人類的發(fā)明史上,從來都是應(yīng)用需求領(lǐng)先,從來都不是技術(shù)領(lǐng)先。比如,人們想要飛,才有了飛機,并不斷改善;人們希望計算更快,才有了CPU。好像,人們并沒有迫切需要AI?!?/p>
以上句子,摘自曾刷爆朋友圈一篇文章——《現(xiàn)在說自己在做AI的都是忽悠!》
這讓我想起之前參加上??萍拣^一個面向中學(xué)生的科普活動時,給同學(xué)們留下的一句寄語:“以好奇之心,求無用之學(xué)。”因為在我看來,學(xué)界的AI研究動力,有一大半是(暫時的)無用之求。
科學(xué)和技術(shù)的原生力之一,是打造和使用工具。一部短短的文明史,也是人類不停發(fā)明和使用工具的歷史。但是,革命性的工具不但落地時刻模糊,還要受到已有工具的阻擊。集成電路芯片(IC)就是如此。電子管被晶體管替代,晶體管被IC替代,是從圖靈開始之后硬件上的兩大革命,但后者遇到了還在傳統(tǒng)工藝?yán)锎驖L的巨頭們的頑強抵抗,直到美國航天局用IC實現(xiàn)阿波羅登月艙里的電腦配設(shè)。我個人認(rèn)為,這是電腦史上最昂貴也最值得的原型展示(Demo):沒有登月這種“無用之舉”,連硅谷都不會存在。
關(guān)于“無用之有用”,我還從浙江大學(xué)王立銘教授那里偷來三個精彩的反詰案例:“新生的嬰兒有什么用?”(法拉第語);“這個研究不會有益于國防,但是會讓這個國家更值得保衛(wèi)”(費米實驗室主任威爾蓀語,于國會聽證會);“(找希格斯)沒用,但是我們就是想知道答案;而且我還知道你們其實也想知道答案,只不過你們自己沒有意識到”(強子加速器科學(xué)家語,于國會聽證會)。
康德說最大的謎團(tuán),除了星空,就是我們自己的心智。要了解人自己,還有比再造一個“人”更直接的辦法嗎?在人工智能上走得遠(yuǎn)的研究者,不但應(yīng)該廣泛涉獵貼近人心的幾個旁支,如心理學(xué)、行為學(xué)、神經(jīng)科學(xué),而在某種意義上更應(yīng)是披著科學(xué)家外衣的哲學(xué)家。
就像萊特兄弟向鳥學(xué)習(xí)、引領(lǐng)人類飛行史一樣,對人腦這個“老師”,人工智能也逐漸從“形似”過渡到“神似”,只不過萬里長征才剛剛開始。人腦和AI的關(guān)系,是展開本文的一條線索。
既然已提及芯片,那我們就從硬件開始談起。
既然人腦是由海量的神經(jīng)元鏈接而成,那么智能芯片采用同樣的結(jié)構(gòu)似乎天經(jīng)地義,這是IBM TrueNorth芯片的出發(fā)點。而且,實現(xiàn)一個由大量簡單計算加存儲單元組合而成的芯片要遠(yuǎn)比英特爾的任何一個芯片容易得多,這讓苦于摩爾定律遲早撞墻的芯片制造商看到了彎道超車的希望。另外,因為神經(jīng)元互相之間發(fā)放連續(xù)的脈沖信號,TrueNoth在計算單元之間運用異步的小數(shù)據(jù)包來模擬。在對大腦的硬件“形似”上,TrueNorth作為一個代表,可以說走得相當(dāng)遠(yuǎn)。
然而,這個思路有兩大問題。第一,手握一大堆原子而不明白上層的大結(jié)構(gòu),不要說復(fù)原一個世界,連造個板凳都困難。機翼加上速度取得升力之后,必須要有“迎風(fēng)而變”的可控性,而這正是萊特兄弟基于對鳥類飛行的大批觀察、在自行車作坊和沙灘上大量實踐之后成功的關(guān)鍵。其二,長程的電力運輸中交流電比直流電有效率,這是守舊的愛迪生在芝加哥博覽會的競標(biāo)中敗給西屋公司的原因。大腦的內(nèi)環(huán)境相當(dāng)“惡劣”,因為腦容所限,長長短短的鏈接要在“湯湯水水”中繞來繞去,脈沖信號是合理的選擇??稍谛酒弦策@么做,不見得必要。
▲ IBM TrueNorth,受腦啟發(fā)的芯片(來源:Esser, Andreopoulos, Appuswamy et al)
如果說中科院的寒武紀(jì)芯片還有些TrueNorth的影子,那么谷歌、微軟的AI芯片的架構(gòu)不但更激進(jìn),而且更簡單。
深度學(xué)習(xí)的模型依賴幾個基本的計算模塊(卷積網(wǎng)絡(luò)、長短程循環(huán)網(wǎng)絡(luò)等),但其背后更基本的精神,是高維矩陣的非線性變換,和由這些變換鏈接起來的數(shù)據(jù)流圖。因此,把這個計算框架做好,同時銜接上層的軟件開發(fā)環(huán)境,是開發(fā)AI芯片的兩大重點,而拘泥于大腦的硬件架構(gòu)只會自縛手腳。谷歌的TPU,存在對TensorFlow(谷歌開發(fā)的機器學(xué)習(xí)軟件工具)過度依賴的問題,卻是AlphaGo烏鎮(zhèn)圍棋一戰(zhàn)中非常亮眼的明星,勘稱廣告史上的經(jīng)典。TPU不是處理器,沒有指令集,就是一坨高度優(yōu)化的矩陣運算電路,其核心技術(shù)還是上世紀(jì)七十年代末的脈動陣列(Systolic array)。
換句話說,人工智能在硬件上對大腦的神似,至少從最底層的計算單元來說,已經(jīng)完成。在此之上,有些基本的、被廣泛應(yīng)用的計算模塊(比如卷積網(wǎng)絡(luò)和長短程循環(huán)網(wǎng)絡(luò))的設(shè)計也受大腦啟發(fā)。
相比人腦,人工智能在模塊種類上的積累還缺很多。但更多的困難來自(至少)兩方面:缺乏更好更強大的數(shù)學(xué)工具,缺乏對腦科學(xué)的了解,或者雖然有部分了解,但卻不知道怎樣“接入”最好。接下來我們就從一些貌似流行的看法說開去,不如先從很遠(yuǎn)的一個愿景——量子計算開始。
▲ 矩陣相乘單元的脈動數(shù)據(jù)流
訓(xùn)練再復(fù)雜的模型,數(shù)學(xué)上都能歸結(jié)為一個非線性的優(yōu)化過程。這決定了深度網(wǎng)絡(luò)和其錯誤回傳、梯度下降的訓(xùn)練方法不過是其中的一個不錯的、但絕不唯一的一個可能性。因此,不管白貓黑貓,能夠優(yōu)化就是好貓,任何數(shù)學(xué)工具都能用,都應(yīng)該嘗試,包括量子計算。
模型的學(xué)習(xí)過程的本質(zhì)是非線性優(yōu)化,對這一點,學(xué)界沒有異議,但對其計算過程要和大腦有多“形似”卻一直爭論不休。
反向傳遞方法的發(fā)明人之一Geoffrey Hinton教授有個多年的心病,就是在對大腦的研究中尚未發(fā)現(xiàn)類似機制,應(yīng)和者中不乏其他大佬,包括蒙特利爾的Yoshua Bengio,麻省理工學(xué)院的Tomaso Poggio等。但業(yè)界其他人,包括人工智能研究的“三駕馬車”(Geoffrey Hinton,Yoshua Bengio以及Yann LeCun)中的第三位——紐約大學(xué)的Yann LeCun就覺得,反向傳遞更優(yōu)美,是數(shù)學(xué)神器給我們的禮物。他對優(yōu)化過程是否和大腦“形似”不太關(guān)心。
我持拿來主義的態(tài)度:優(yōu)化就是優(yōu)化,優(yōu)化就是神似,過程形似沒有必要。不過我認(rèn)為,整個模型采用深度網(wǎng)絡(luò)是必要的,使得模型和腦科學(xué)的實驗比照存在可能性。從長遠(yuǎn)看,這么做會給腦科學(xué)提供另一種實驗手段,反過來也會進(jìn)一步促進(jìn)人工智能的“神似”之旅。
對腦科學(xué)的了解,也能讓我們判斷這樣的理由是不成立的:有一派人認(rèn)為,大腦的工作機理就是量子計算,所以要量子計算。
我覺得,人類在一個基本符合牛頓定律的物理世界中競爭而生,需要量子計算這么高端、復(fù)雜的計算模式作為基石不太可能,也沒有任何證據(jù)。支持者認(rèn)為,神秘的“第六感”源自量子糾纏,但很多心理學(xué)上的實驗表明,所謂“第六感”,不過是因為大腦在下意識中捕捉到很多細(xì)微、難以查覺卻無法言說的信號而已。
再讓我們看看眼前的一些人工智能實例。
一直以來,這幾個應(yīng)用有非常高的出鏡率。目前,這些模型背后的工作原理,是從海量數(shù)據(jù)里總結(jié)統(tǒng)計規(guī)律,完成一個自底向上的深度非線性的映射函數(shù),把標(biāo)簽Y拍到信號X上。但是,如果我們老老實實叫它們的實名——“統(tǒng)計學(xué)習(xí)”——那是多么不酷啊!
這些模型最底層的單元計算,采用卷積網(wǎng)絡(luò)或者長短程循環(huán)網(wǎng)絡(luò),除此之外,整個大的計算過程和人腦相差很遠(yuǎn),連神似的皮毛都不沾,可這幾個應(yīng)用的熱炒直接導(dǎo)致了不少的問題和誤解。
“大數(shù)據(jù)”是個十分混亂的概念。首先,什么是打造人工智能需要的大數(shù)據(jù)?其次,多大才算大?比如,掀起深度網(wǎng)絡(luò)大熱潮的ImageNet數(shù)據(jù)集,有一百二十萬張帶標(biāo)注的圖片。圖片中有哪類物體,在哪,通過互聯(lián)網(wǎng)眾籌的人力標(biāo)定,將上述問題再喂給模型來學(xué)習(xí)。一百二十萬張是個什么概念?相當(dāng)于一個人每秒一張,一天八個小時,看一整年的圖片量。
這其實并不算多。人活一年,睜眼看世界,攝入的視覺信息遠(yuǎn)比這個要多得多,更不提人活一輩子會看多少。但如果每張都要讓人記住是狗還是貓、是花還是草,不要說一年,我猜任何人連十分鐘都挺不住。
換句話說,人腦消耗的數(shù)據(jù)量要大得多,但其中刻意去學(xué)的又少得多。
除了大腦強大的記憶和泛化能力,至少還有兩個重要的手段,把大部分工作在下意識中自動處理掉了,這才使得昂貴的學(xué)習(xí)只成為了浮出水面的冰山一角。
第一個手段是,大腦對來自底層感官下一時刻的信號隨時預(yù)測,預(yù)測準(zhǔn)確則過濾掉,只有錯了才進(jìn)一步處理。不如此,淹沒在各種各樣的噪聲之中的大腦就會“過勞死”。這也是一個人撓自己癢癢不會發(fā)笑的原因。我們的日常生活空間尺度足夠大,符合牛頓物理定律,也因此充滿結(jié)構(gòu),這使得大腦能對周遭世界建立模型,有了模型就能進(jìn)一步建立預(yù)測機制。具有預(yù)測功能的大腦也更穩(wěn)健,能容錯通訊中因為噪音而丟失的信息。
第二個手段是讓來自不同感官的多路信號互相監(jiān)督。比如孩童把玩一個玩具,手上拿著的、眼睛看到的、耳朵聽到的,是不同模態(tài)的信號,分別在不同的大腦皮層被處理。來自同一個物體這個事實,已經(jīng)是個很強的監(jiān)督信號,并不需要額外標(biāo)注。相反,如果信號之間不自洽,比如看上去很輕的卻拿不動,才會被注意到,并得到進(jìn)一步處理。
帶自頂向下預(yù)測、多模態(tài)協(xié)同的無監(jiān)督學(xué)習(xí)方法,是現(xiàn)在的人工智能模型所缺失的。
強標(biāo)注的樣本在整個樣本群中比例越小越好。我的好朋友江鑄久九段說,人類棋手下過的好棋譜大概三萬左右,那么在學(xué)習(xí)完這些對局之后,AlphaGo自己下了幾盤呢?保守一點估計,AlphaGo自己對弈大概一秒一盤,每天八萬多盤。按臉譜公司田淵棟博士的推測,谷歌動用了上萬臺機器,而AlphaGo項目至今已經(jīng)兩年多了。所以,AlphaGo發(fā)展到今天的圍棋智力,其中有標(biāo)注的數(shù)據(jù)只占總數(shù)據(jù)量的千萬分之一或更少。
因此,人工智能確實需要更多的數(shù)據(jù),但更需要減少其中強標(biāo)注數(shù)據(jù)的占比。要達(dá)到這個目標(biāo),必須對算法和模型做原創(chuàng)性的改進(jìn),更“類腦”,而不是一味采集更多的人臉照片、標(biāo)注車輛、行人、人聲等。
▲ AlphaGo戰(zhàn)勝李世石,名噪一時
這又是一個似是而非,常用來批評人工智能的結(jié)論。其邏輯是這樣的:大腦功耗約25瓦,一個四卡GPU服務(wù)器超過1000瓦——AlphaGo勝之不武。由此可以推論,類腦必須低功耗,尤其必須在低功耗的類腦芯片上實現(xiàn)。
這里引出的一個問題是,人腦和AI,在能耗上應(yīng)該怎么比更合理?
能耗的分布在兩個地方,一個是模型的訓(xùn)練,一個是模型的使用。
訓(xùn)練模型的確非常耗能。我曾參與創(chuàng)立的深度學(xué)習(xí)平臺MxNet最近創(chuàng)了個最低記錄,從頭訓(xùn)練一個高性能圖像分類器ResNet,耗資120萬美元。這筆錢相當(dāng)于十幾個國家自然基金面上項目,顯然不便宜——但和訓(xùn)練AlphaGo的能耗比,實在可以忽略不計。
人腦確實只用25瓦能耗,如果必須耗用2500瓦,在自然界的競爭中必然被淘汰掉。但請注意,它不是一夜練成的,而是歷經(jīng)百萬年的進(jìn)化到了今天。把時間累積在一起,再加上各種試錯,再加上各種天災(zāi)造成的重啟和格式化,總能耗就一定低了嗎?
所以,我們更應(yīng)該關(guān)注模型在使用時的能耗。AlphaGo下棋的大致流程和人類棋手相符,但區(qū)別在于每一個變化都會一路算到底,而下一步又生出了新的變化。AlphaGo優(yōu)化了搜索策略,限制了搜索空間,即便如此,千萬步總要走的,而人類頂級棋手平均也就算二三十步。用幾十步抗衡千萬步,已經(jīng)非常了不起了。但反過來,如果限制AlphaGo的計算步數(shù),能耗下來了,勝率也一定會下跌。
在其他一般性的任務(wù)中,人工智能模型的效率確實非常低,但根源在于算法和人腦差很多。圖像解析我在下文會討論到,單拿自然語言處理來說,其他不提,成句時挑詞,要把整個詞表掃一遍,而實用的詞表有至少上萬個詞,這顯然極其浪費——人說話的時候,每個時刻的候選詞并不多,這其中的量級之差成百上千。
和人臉識別、實時翻譯等相比,下圍棋是個陽春白雪的活動。但是,谷歌的AlphaGo絕對是人工智能發(fā)展史上重大的一筆。它包括了智能思考過程中極為重要的幾個步驟:感知,自省,判斷,演繹,執(zhí)行。AlphaGo是對大腦智力活動的神似,正因為這樣,才走得遠(yuǎn)。
補充一句,AlphaGo算法中依賴的搜索樹是模型中的重要組成部分,但并不由深度網(wǎng)絡(luò)構(gòu)成——不代表不能這么做,只是效率不會高。這又是一個不拘泥于形似的例子。
AlphaGo離真正的智能還遠(yuǎn),但并不是因為以下幾個流行的說法。
流行說法之一,AlphaGo沒有通用性。這么批評AlphaGo的人忘了,大腦的通用性不在于它是變色龍,而在于它是瑞士軍刀,配備了大批靈活合作的專業(yè)腦區(qū)。要求下棋的AlphaGo變身通用型人工智能,是無理的要求。AlphaGo的通用性只針對一類問題,這些問題規(guī)則簡單,變化繁多,既有少量專家樣本,又能零成本產(chǎn)生無數(shù)新樣本。
人工智能要達(dá)到普適的通用性,需要繼續(xù)向人腦取經(jīng)。比如,如何以最經(jīng)濟、最靈活為準(zhǔn)則,實時實地整合高復(fù)用的組件來應(yīng)對復(fù)雜多變的環(huán)境?再如,怎么使得各組件的學(xué)習(xí)、計算的機制盡量一致,但又不失去專業(yè)性?舉例來說,整合自上而下的預(yù)測反饋和自底向上的注意力,利用工作記憶組裝在不同時間點獲取的信息塊,是各種任務(wù)都需要的基本架構(gòu)。但視覺要解決“是什么”“在哪里”,語言要解決語義、語法,每個任務(wù)內(nèi)含幾個互相纏繞的子問題,所涉及的功能塊和任務(wù)緊密相關(guān),無法也沒必要和其他任務(wù)的功能塊共享。
對AlphaGo的另外一個批評是,它沒有情感?!癆lphaGo可以贏棋,卻不能贏得快感”,我的一個朋友這么調(diào)侃。
不錯,它輸了也皮厚,一點不會不好意思??伤^至柔則剛,沒有勝負(fù)心、心無雜念,這種至高的境界卻是無數(shù)棋手苦求而不得的。人的世界完全不一樣,人是感情的動物,多巴胺的奴隸,在人生的舞臺上,太大、太小的壓力都會讓我們演砸了戲,只有適當(dāng)?shù)膲毫Σ艅倓偤谩?/p>
情感的來源在于對形勢的解讀,情感的作用在于對行動作出調(diào)整。再精準(zhǔn)的解讀如果沒有用武之地,就沒有多巴胺介入的必要性,而這正是AlphaGo實戰(zhàn)的情況。如果對AlphaGo運行環(huán)境做限制,設(shè)定耗能的上限,那么按照對局勢的判斷,它有時候會提高主頻放手一搏,有時候則進(jìn)入省電模式閉眼瞎蒙。時不時“臉紅耳赤心跳加速”的AlphaGo,是不是有了我們?nèi)祟惖那楦心兀?/p>
集萬千寵愛于一身的AlphaGo,沒有生存的壓力,“感情”是個多余的東西。而讓單兵作戰(zhàn)的人工智能獲取“感受”、改變策略,沒有那么難。在人機共生的未來,讓人工智能在這種環(huán)境中捕獲和預(yù)測人類微妙的情感變化,和人“感同身受”,才是真正需要研究的大問題。
既然說到了人類的情感,相對于人工智能,讓人“自豪”的另外一個領(lǐng)域是藝術(shù)創(chuàng)造,可果真如此嗎?(未完待續(xù))