來源丨科研圈(ID:keyanquan)

資料整理丨劉悅晨 魏瀟

編輯丨魏瀟

本週三,計算機領域最高獎項“圖靈獎”迎來了新一屆得主——加拿大蒙特利爾大學教授約書亞·本希奧(Yoshua Bengio)、谷歌副總裁兼多倫多大學名譽教授傑弗裏·欣頓(Geoffrey Hinton),以及紐約大學教授兼 Facebook 首席 AI 科學家楊立昆(Yann LeCun

這三位被業內人士稱爲“當代人工智能教父”的科學家是深度神經網絡(deep neural network)的開創者,這項技術已經成爲計算科學的關鍵部分,爲深度學習(deep learning)算法的發展和應用奠定了基礎——這正是現在計算機視覺(Computer Vison)、語音識別(Speech Recognizing)、自然語言處理(Natural Language Processing)和機器人研發等領域展現出驚人活力、掀起科技創業熱潮的重要原因。

圖靈獎(ACM A.M. Turing Award)由美國計算機協會於 1966 年設立,專門獎勵對計算機事業作出重要貢獻的個人,有着計算領域的諾貝爾獎”(Nobel Prize of Computing)的美譽。其名稱源自計算機科學先驅、英國科學家、曼徹斯特大學教授艾倫·圖靈(A.M. Turing),獎金高達 100 萬美元,由谷歌公司提供贊助。圖靈獎大部分情況下只頒給一位獲獎人,兩位或三位科學家同時獲獎的情況較爲少見。2000 年圖靈獎得主、中國科學院院士姚期智是目前唯一一位獲得該獎項的中國科學家。

2018 圖靈獎得主

約書亞·本希奧(Yoshua Bengio),在加拿大麥吉爾大學取得計算機博士學位。現爲加拿大蒙特利爾大學教授、加拿大數據定價中心主任(IVADO)、蒙特利爾學習算法研究中心(Mila)科學主任、加拿大先進研究院主任。同時,他與楊立昆一起擔任加拿大先進研究院機器與大腦學習項目的主管。他創建了目前世界上最大的深度學習研究中心——蒙特利爾學習算法研究中心

(MILA),使蒙特利爾成爲世界上人工智能研究最爲活躍的地區之一,引來大批公司和研究室入駐。

傑弗裏·欣頓(Geoffery Hinton),在愛丁堡大學獲得人工智能博士學位。現任谷歌副總裁、工程研究員、多倫多人工智能矢量研究所首席科學顧問、多倫多大學名譽教授。他是加拿大先進研究院神經計算和自適應項目(Neural Computation and Adaptive Perception Program)的創始人,還獲得了包括加拿大最高榮譽勳章(Companion of the Order of Canada)、英國皇家學會成員、美國工程院外籍院士、人工智能國際聯合會(IJCAI)傑出研究獎、IEEE詹姆斯·克拉克·麥克斯韋金獎(IEEE James Clerk Maxwell Gold Medal)等一系列榮譽。2017 年被彭博社(Bloomberg)評爲改變全球商業格局的 50 人之一。

楊立昆(Yann LeCun),在法國皮埃爾和瑪麗·居里大學獲得計算機科學博士學位。現任紐約大學柯朗數學科學研究所 Silver 冠名教授、Facebook 公司人工智能首席科學家、副總裁。他獲得了包括美國工程院院士、IEEE神經網絡先鋒獎(IEEE Neural Network Pioneer Award)等一系列榮譽。他還是紐約大學數據科學中心的創始人,與約書亞·本希奧一起擔任加拿大先進研究院機器與大腦學習項目的主管。

人工智能在 20 世紀 50 年代成爲了一門科學。那時研究者們樂觀地認爲,在自己有生之年就可以看到擁有人類智力水準的機器出現。然而,當時的算法和計算能力都無法承擔重任,美好的希望就此破滅。一些懷疑論者甚至認爲製造人工智能的企圖在根本上就是一種自大。直至 21 世紀初,約書亞·本希奧、傑弗裏·欣頓和楊立昆開創的深度神經網絡技術使人們重燃希望。如今他們的想法卻帶來了重大的技術革新,他們的方法也無疑已經成爲當今該領域研究中的主流範式。

下面這篇文章由本屆圖靈獎得主約書亞·本希奧親自撰寫,講述了深度學習算法從最初不被同行看好的弱勢項目,發展成爲拯救人工智能、改變世界的熱門技術的背後故事,帶你瞭解現代人工智能產業的前世今生。

深度學習:人工智能的復興

撰文 約書亞·本希奧

上個世紀 50 年代,計算機在西洋跳棋(checkers)上擊敗了人類,還可以解決代數題,在世間引起了巨大轟動。60 年代時,人們充滿信心地認爲科學家很快就可以通過硬件和軟件用計算機模擬人腦,而且這種“人工智能”很快就能在任何任務上與人類匹敵。1967 年,麻省理工學院的馬文·明斯基(Marvin Minsky)甚至宣稱,人工智能問題將在一代人的時間內被徹底解決(明斯基教授於 2016 年 1 月去世)。

現在看來,人們當時的樂觀情緒顯然過於幼稚了。儘管軟件工程師已經設計出了旨在幫助醫生更好診斷疾病的軟件,開發了用於識別圖片內容的模仿人腦的網絡模型,但是效果均不理想。早期的這些算法不夠複雜,而且依賴的海量數據也是當時無法提供的。另一方面,人類智能十分複雜,要想近似地模擬人腦功能需要巨大的計算量,可當時的計算機實在太慢,無法勝任。

到 2005 年前後,科學界幾乎已經沒人還看好機器可以達到人類的智能水平。在那個時候,“人工智能”似乎都已經變成了科幻的代名詞。科學家和作家們往往將 20 世紀 70 年代到 2005 年前後的這段時間稱爲“人工智能的冬天”——夢想幻滅的日子。

10 年之後,一切都不一樣了。從 2005 年開始,人工智能的形式出現了巨大變革。這一切源於“深度學習”(deep learning)技術的出現,這一方法原本指的是從腦科學中汲取靈感以製造智能機器,但後來已經自成體系。近年來,深度學習已經成爲了驅動人工智能領域發展的最主要力量,各大信息技術公司在這方面共擲下了數十億美元的資金。

深度學習指的是用計算機模擬神經元網絡,以此逐漸“學會”各種任務的過程,比如識別圖像、理解語音甚或是自己做決策。這項技術的基礎是所謂的“人工神經網絡”,它是現代人工智能的核心元素。人工神經網絡和真實的大腦神經元工作方式並不完全一致,事實上它的理論基礎只是普通的數學原理。但是經過訓練後的人工神經網絡卻可以完成很多任務,比如識別照片中的人物和物體,或是在幾種主要語言之間互相翻譯等等。

深度學習技術徹底改變了人工智能研究的面貌,讓計算機視覺、語音識別、自然語言處理和機器人領域重新煥發生機。2011 年,首個語音識別產品面世,也就是大家非常熟悉的 Siri。不久之後,用於識別圖像內容的應用也成熟了起來,該功能現已被整合進了 Google Photos 的圖片搜索引擎。

如果你嫌手機菜單操作起來太麻煩,那你一定會喜歡 Siri 或是其他智能手機助手給你帶來的使用體驗的飛躍。假如你對於幾年前的圖像識別軟件還有印象,那你一定記得當時的識別效果相當糟糕,有時甚至會誤把吸塵器認作犰狳。而現在這個領域早已發生了翻天覆地的變化,現在的軟件在某些情況下識別出貓、石頭或人臉的準確率甚至和人類相當。人工智能軟件如今已成爲了數百萬智能手機的標配,拿我自己來說,我已經很少用手輸入信息了,都是直接對手機說話,有時它也直接用語音迴應我。

這些技術進步一下子爲進一步的商業化打開了大門,人們對人工智能的熱情日益高漲。各大公司競相招攬人才,擅長深度學習的博士一下子變成了供不應求的稀缺商品。這個領域的很多大學教授(可能是絕大多數)都已經從象牙塔被拉到了產業界,企業爲他們提供了一流的研究環境與設施,以及優良的待遇。

在利用深度學習解決各種問題的過程中,科學家們取得了驚人的成就。2016 年 3 月,神經網絡模型 AlphaGo 擊敗了世界頂級圍棋選手李世石的新聞佔據了各大媒體的首頁(編者按:這篇文章發表一年後,AlphaGo 和世界圍棋冠軍柯潔的對戰再一次掀起了媒體的報道狂潮)。機器在其他領域超越人類的步伐也在加快,而且不侷限於競技遊戲。最新的深度學習算法可以從磁共振圖像中準確檢測出心臟是否衰竭,準確度甚至能和心臟病專家媲美。

智能、知識、學習

人工智能爲什麼在之前的幾十年會遇到這麼多挫折呢?因爲對機器來說,學習新事物是很難的。編寫計算機程序需要把任務用很規範的方式寫成一條條具體的規則,但世界上大部分知識並不是這樣的形式,所以我們很難直接給電腦編寫程序,讓它實現人類可以輕而易舉完成的任務,例如理解語音、圖像、文字或是駕駛汽車等。科學家之前嘗試過直接編程,將複雜的數據集按照某些規則進行細緻的分類,希望以此讓計算機漸漸擁有類似“智能”的東西,可是這種嘗試並無建樹。

但是深度學習突破了這個困境。深度學習屬於人工智能領域內一個更寬泛的概念——機器學習,即根據某些基本原理訓練一個智能計算系統,最終使機器具備自學的能力。其中一條基本原理,就涉及到人或者機器如何判斷一個決策是好是壞。對動物來說這就是演化原理,“好”的決策意味着提高存活和繁衍機率;在人類社會中,“好”決策可能是指提高地位或產生舒適感的社會活動;對機器而言,以智能汽車爲例,一個決策的“好壞”則可能被定義爲其行駛模式在多大程度上接近優秀的人類司機。

在特定情況下做出好決策所需的知識並不一定能輕易地用計算機代碼表示出來。比如說一隻小鼠,它會熟悉自身周圍的環境,而且本能地知道該去嗅哪裏,該如何移動四肢,該怎樣尋找食物或配偶,並避開天敵。但沒有哪位程序員可以用一行一行的代碼寫出一個能做出這些行爲的程序,雖然這些行爲所需要的知識都存儲在小鼠腦內。

在讓電腦學會自學之前,計算機科學家必須搞清楚一些基本問題,比如人類是如何獲取知識的?人類的知識部分是天生的,但大部分都是從經驗中學習而來。自上個世紀 50 年代以來,科學家就一直在尋找動物和人類(或是機器)從經驗中學習知識的基本原理。機器學習的研究致力於建立一系列所謂“學習算法”的流程,可以讓機器從樣例中學習。

機器學習在很大程度上算是一門實驗科學,因爲還沒有普適的學習算法出現,對於不同的任務,科學家需要開發不同的學習算法。每個學習知識的算法都需要在相應的情況下,用相應的任務和數據進行測試,有時候任務是識別一副圖像是不是日落,有時候任務是把英語翻譯成烏爾都語。我們沒法證明一個算法可以在任何任務中都比別的算法表現更好。

人工智能專家用正式的數學語言描述了這個原理——“免費午餐”定理。這個定理指出,不存在可以解決所有實際問題的“萬能”機器學習算法。可是人類的行爲似乎違背了這個定理:我們的大腦中似乎存在一些通用的學習算法,能讓我們學會各種任務。要知道,這並不能完全歸結於演化,因爲很多任務我們的祖先都沒有做過,比如下棋、建造橋樑,或者是研究人工智能。

這說明,人類智能利用了關於世界的一般性假設,啓發科學家創造出具有通用智能的機器。正因如此,科學家以大腦爲模仿對象,開發出了人工神經網絡

大腦的計算單元是一些叫做神經元的細胞,每個神經元可以通過叫做突觸間隙的小縫隙向其他神經元發放信號,神經元跨越間隙傳輸信號的效率叫做突觸強度(synaptic strength)。在神經元“學習”的過程中,它的突觸強度會增加,也就是說當它受到電信號的刺激時,它更有可能向鄰近神經元傳輸信號。

受腦科學的啓發,計算機科學家開發出了人工神經網絡,用軟件或硬件實現了虛擬神經元。人工神經網絡是人工智能領域的一個分支,該領域在早期又被稱爲“聯結主義”(connectionism)。計算機科學家認爲,神經網絡可以接收視覺或聽覺輸入,漸漸改變神經元之間的連接強度,最終網絡連接會形成一種特定模式,讓神經元的電信號可以提取出圖像內容或是對話短語的特徵,從而實現一些複雜的任務。隨着人工神經網絡接收的樣例越來越多,學習算法不斷調整神經元連接的突觸強度,可以更準確地對輸入數據(如日落的圖像)進行表徵。

圖片來源:toptal.com

給自己上一課

最新一代的神經網絡則在“聯結主義”的基礎上更進一步。在神經網絡中,每個突觸連接的強度都由一個數值決定,代表了這個神經元向其他神經元傳遞信號的可能性。以圖像識別爲例,每當網絡接收一幅新圖像時,深度學習算法就根據當前輸入對連接強度做一點小調整。隨着見過的圖像越來越多,網絡連接強度就會一點一點地變爲最優連接模式,使網絡預測圖像內容的準確度不斷提高。

爲了得到最好的結果,目前的學習算法仍然需要人的密切參與。大部分算法均使用了叫做“監督學習”(supervised learning)的技術,這是指在訓練過程中,每個訓練樣本都配有一個與內容相關的標籤,比如對一幅日落的圖像,同時還會附上標註“日落”。監督學習算法要做的,就是讓網絡以這幅圖像作爲輸入,並輸出圖像中央的物體名稱。在數學上,把輸入變成輸出的過程叫做函數(function)。機器學習的目標就是找到可以實現學習任務的函數所對應的參數,比如突觸連接強度。

用死記硬背的方式來記住正確答案固然直截了當,但也毫無意義。機器學習的終極目標是讓算法明白“日落”到底指的是什麼,然後可以認出任何一幅日落的圖像,不管這幅圖在訓練過程中有沒有出現過。

要獲得能夠識別出任何日落圖像的能力,也就是所謂的從具體示例中進行概括並推廣的能力,這纔是所有機器學習算法的主要目標。事實上,科學家評價網絡的學習效果時,就是用該網絡從未見過的圖像來測試其識別準確率。由於在每一類別下面都有無窮多種變體,要想識別從未見過的圖片並非易事。

想讓深度學習算法從大量樣例中概括出抽象的概念,除了輸入樣例以外還需要其他信息,比如一些關於數據的額外假設,或是對特定問題而言最優解大概該是什麼形式的猜想。具體來說,圖像識別軟件中常用的假設之一,就是當給特定網絡輸入相似的圖片時,網絡的輸出也不該有太大變化。比如把一張貓的圖像中的某幾個像素進行改動,那麼圖像依然是貓而不會變成狗。

有一類基於這些假設的神經網絡叫做“卷積神經網絡”(convolutional neural network),正是這項關鍵技術推動了人工智能的復興。深度學習中的卷積神經網絡包含很多層神經元,層與層之間通過特定的方式連接,使得輸出結果對圖像中央物體的變化(例如位置稍稍偏移)不會非常敏感,這樣的網絡在訓練完成後可以認出從不同角度拍攝的人臉。卷積神經網絡的設計靈感源自人腦視覺皮層的層狀結構,它在人腦中負責處理從眼睛接收的圖像信號。卷積網絡中包含很多層虛擬神經元,“深度”學習的“深”指的就是這個。這類網絡涉及到的計算量十分巨大,但是它可以學會很多任務。

深度學習

從實踐角度看,大概是10年前出現的一些研究進展,讓深度學習從一些技術創新中脫穎而出。當時的人工智能領域正跌入幾十年來的最低點,但一個由政府和私人資助者支持的加拿大組織重燃了科學家的研究熱情。這個名爲加拿大高等研究所(Canadian Institute for Advanced Research,簡稱 CIFAR)的組織資助了由多倫多大學的傑弗裏·欣頓(Geoffrey Hinton)領導的一項計劃,計劃參與者還包括紐約大學的楊立昆(Yann LeCun)、斯坦福大學的吳恩達(Andrew Ng)、加利福尼亞大學伯克利分校的布魯諾·奧爾斯豪森(Bruno Olshausen)、本文作者本希奧以及其他一些科學家。當時這個研究方向並不被世人看好,導致相關工作很難發表,研究生們也不願意在這個方向發展。但是我們中的一小部分人還是有強烈的預感:這是一條正確的道路。

人工智能之所以在當時不受待見,部分原因是科學家普遍認爲訓練好一個神經網絡幾乎是不可能的,很難找到可以高效地優化網絡以提升其性能的學習方法。“最優化理論”(optimization)是數學的一門分支,它所做的事是嘗試找到能達到一個給定數學目標的參數組合,而在神經網絡中,這些參數被稱作“突觸權重”(synaptic weight),反映了信號從一個神經元通向另一個神經元的強度。

深度學習的最終目標是做出準確的預測,也就是將誤差控制在最小的範圍內。當參數與目標之間的關係足夠簡單時——更確切地說,目標是參數的“凸函數”(convex function)時,可以逐步對參數進行調整,直到接近最優解(或稱“全局最小點”),即整個網絡的平均預測誤差最小時。

然而,神經網絡的訓練過程並不簡單,需要另一種“非凸優化”(nonconvex optimization)過程。非凸優化就更麻煩了,很多研究者甚至認爲這一障礙是不可克服的。學習算法在運算過程中可能會陷入所謂的“局部最小點”處,此時,輕微調整參數值就無法減小預測誤差,也就無法進一步提升模型性能了。

科學家一直覺得神經網絡難以訓練的罪魁禍首是局部最小點,這個誤解直到 2015 年纔得到澄清。本文作者在研究中發現,當神經網絡足夠大時,局部最小點造成的麻煩會小很多。對於一個穩定的網絡,大部分局部最小點都反映了模型已學到的一定程度的知識,而且幾乎和全局最小點處的情況一致。

即使知道最優化問題在理論上是可解的,研究者在訓練包含兩三層以上的神經元網絡時依然常常失敗,當時很多人認爲繼續這類研究毫無希望。從 2005 年開始,由 CIFAR 支持的一些工作不斷取得突破,成功解決了這個問題。2006 年時,我們找到了訓練深層網絡的算法,所用到的技巧就是逐層訓練。

後來,在 2011 年我們又發現,只要改變一下每個虛擬神經元的運算,讓它們表現得更像真實的神經元,就可以訓練包含更多層神經元的深層網絡。我們還發現,在訓練過程中給網絡中傳輸的信號上加上噪音,也可以讓網絡更好地識別圖像或聲音,這一點也類似於大腦中的信息處理流程。

深度學習技術的成功依賴於兩個關鍵因素。首先是計算速度的大幅提升:科學家借用了本爲電子遊戲所設計的圖形處理器(GPU),使計算速度提升了 10 倍,這使得在有限的時間內訓練大規模網絡變爲可能。讓深度學習研究開展得如火如荼的第二個因素是海量帶標記數據集的出現,這些數據集內的所有樣例都配有正確的標記——如一幅圖中有貓這個元素,便會被標上“貓”。

深度學習近年來的成功還有一個原因:它可以通過學習算法找到一系列運算操作,對一幅圖像、一段音頻或是其他信號進行逐步的重構或分析,這裏的步數,就代表着網絡的深度。目前人工智能可以高效地處理很多視覺或聽覺識別任務,都要求網絡的深度足夠大。事實上,最近的理論和實驗的相關研究表明,假如網絡深度太淺,是無法完成這些複雜的數學運算的。

深層神經網絡中的每一層把接收的輸入進行處理,再把輸出傳向下一層。越到深層,其所表徵的概念就越抽象,因爲這些層離最初的輸入信息距離太遠(見圖文框“不斷進化的類腦網絡”)。實驗發現,深層的虛擬神經元往往對應了一些抽象的語義概念,比如代表了“桌子”的圖像。即使在訓練過程中網絡從來沒有看到過單獨被標註有“桌子”的樣例,一些深層虛擬神經元在處理信息時依然可以認出對應着桌子的圖像。而且“桌子”這個概念還可以作爲中間步驟,在更深的神經元層中產生更抽象的概念,比如“辦公室場景”。

模式識別之外

直到不久前,神經網絡的成功還大部分侷限在識別靜態圖像方面,但是也有一些神經網絡擅長處理隨着時間變化的任務。以遞歸神經網絡(recurrent neural network)爲例,這種網絡可以連續執行一系列運算,處理語音、視頻或其他數據。時序數據由一個個單元(不管是音素還是詞語)依序排列形成,遞歸神經網絡處理這些輸入信息的方式也和大腦的工作模式相似:當大腦在處理感官輸入的信號時,神經元傳遞的信號也不斷變化。大腦內的這種神經狀態會把輸入信號視作周圍環境中發生的各種事件,進而輸出合適的指令,告訴身體該如何行動以達成特定目標。

遞歸神經網絡可以預測一句話中的下一個詞是什麼,由此產生連續的詞語序列。它們也可以完成更復雜的任務:在“讀”完整個句子之後,猜測出句子的意思。然後再使用另一個遞歸神經網絡,就可以利用前一個網絡做完的語義分析,把句子翻譯成另一種語言。

遞歸神經網絡研究在上世紀 90 年代末到本世紀初也經歷過低潮。本文作者的理論工作表明,這種網絡在處理時序信息時,很難回憶起太久之前的輸入,即輸入序列中最早的那部分。想象一下當你讀完一本書時,是否還能逐字逐句回憶起書的開頭?但後來的幾項技術創新在部分程度上解決了這個問題,使網絡的記憶能力得到顯著提升。現在,神經網絡會在電腦中留出一塊額外的臨時存儲空間,專門處理分散的多段信息,例如分散在一個長文檔中的各種句子的含義。

在經歷了人工智能的寒冬之後,深度學習神經網絡的強勢迴歸不僅僅代表着技術上的勝利,也給整個科學領域上了一課。回顧人工智能的歷史,我們必須意識到,哪怕一些好的想法受到當時的技術狀態限制而看似前景渺茫,我們也不應放棄。鼓勵多樣化的科研課題與方向,或許有一天就會讓一時處於低谷的領域迎來複興

翻譯:馬驍驍

審校:封舉富(北京大學信息科學技術學院智能科學系教授,研究方向主要包括圖像處理、模式識別和生物特徵識別)

本文原載於《環球科學》2016 年第 7 期。

相关文章