11.28 讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

今年,清華大學研發的類腦芯片天機(Tianjic)登上Nature雜誌封面。

與傳統芯片的馮諾依曼架構不同,天機顛覆性地使用了類似人類大腦機制的非傳統架構,能夠同時支持傳統深度學習網絡和類腦神經脈衝網絡。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

這款人工通用智能芯片讓我們離“類腦計算”的世界又近了一步。讓電腦像人腦一樣運轉,一直是個令人慾罷不能的腦洞。很多人都想研發出擁有大腦計算核心本質的計算機架構,學術界和工業界都將之視作熱門技術方向。

那麼,到底什麼是類腦芯片?它未來的發展方向怎麼樣?將怎樣改變我們的生活?

1990年加尼福尼亞理工學院教授Carver Mead在Proceeding of IEEE發表文章Neuromorphic Electronics Systems,首次提出神經形態計算(neuromorphic computing)概念。

根據當時對芯片技術的預測,電腦每進行一次計算需要消耗的能量是10-9J,而大腦每做一次計算需要10-16J能量,遠低於計算機。受此啟發,Carver Mead提出了類腦計算的概念:計算機能不能像大腦一樣運轉,同時擁有超高計算功效和超低功耗?

如果一套計算設備的計算機制從本質上和腦神經系統的計算機制一樣或者相似,這個系統就可稱為類腦系統

Carver Mead設想用CMOS模擬電路去模仿生物視網膜outer plexiform layer,搭建具有生物計算特性的系統。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

右:模擬電路用來模擬視神經計算特性(圖源 Carve Mead論文)

從生物神經學中學習計算機制的做法早已有之,機器學習中常見的ReLU激活函數 ,最早就是生物學家受到生物視網膜啟發而發明的。只是當今主流的機器學習門派過了十幾年之久才開始使用它。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

類腦計算的基本運算單元是脈衝神經網絡,其中,神經元接收不同數目的輸入(x1,x2,x3),經過數學函數積分計算,如果結果超過閾值,則產生一個脈衝。

脈衝神經元的計算機制可以是最簡單的Leakage Integration-and-Firing (LIF模型),也可以hodgkin-huxley, Izhikevish和spike representation model等其他模型。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

在信息表達和應用層面,類腦計算涉及到兩個關鍵步驟:脈衝信息編碼和解碼。這兩個模塊會影響整個系統的計算性能。另外,脈衝神經網絡的拓撲結構對其應用和性能也有重要影響。在真實的腦神經網絡中,拓撲結構千變萬化、非常複雜。

現有計算機的計算特性,是隻在時間域上進行信息處理,而脈衝神經網絡最核心的計算特性,是時間-空間域結合和動態時間域結合。基於脈衝序列的計算機制還具有異步計算, sparsity, additive weight operation, energy efficient, stochastic 和對外界噪音抗干擾性強的特性。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

早期,工程師認為大規模神經網絡只有非常稀疏的神經元活動,並且神經元處理遵循序延遲-積分-輸出(decay-propagate-out)過程。通訊量不大,計算主要基於具有單個總線通道的多核處理器架構實現。晶圓級集成技術首先被用來建模大規模網絡。

隨著研究的推進,大家開始嘗試實現更復雜的生物機制,提高神經形態系統的計算能力,並精心設計處理架構。為了計算效率和靈活性,流水線架構被引入,用以定製設計數據路徑和有限狀態機技術。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

後來,神經網絡規模擴大到數百萬,日益接近真實的生物神經網絡。這就要求計算架構具有用於突觸通信的高帶寬數據。片上多核網上系統(NoC)技術被引入,不少流行的類腦系統都採用了硅小腦,也就是基於48核的NoC系統,來模擬小腦對時間概念的學習機制。

越來越多新穎的類腦架構開始出現,目前,數字計算架構設計主要有五種類型:

1)基於單線的單核/多核引擎

2)基於分層總線系統的多核引擎

3)Crossbar 結構

4)片上多核網絡結構

5)基於樹拓撲的系統

從應用的角度來看,現在已經出現SpiNNaker、Bluehive和NeuroFlow等模擬大規模神經網絡的類腦計算平臺,比如英國人史蒂夫弗伯(Steve Furber)開發的SpiNNaker系統,已經形成相當豐富的生態,成為工程師和神經科學家的寶貴工具。在醫學神經修復方面,人們正在研發用來恢復/替換受損生物系統的實時小腦、海馬VLSI芯片和硅CPG等產品。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

從計算性能和通信性能兩個維度來看,神經形態系統的發展趨勢符合藍色箭頭方向,越來越強調大規模神經元的通訊能力。工業微處理器的發展趨勢則遵循灰色箭頭方向,單核計算能力日益強大,單核集成的晶體管越來越多。這符合大數據時代的算力要求。

最新的類腦硬件技術已經有能力實時模擬一百萬個神經元,但上層算法的缺失導致硬件系統不能有效複製一些重要的生物認知特徵,比如適應、補償和學習行為。或許我們需要逆向工程思維,重新考慮硬件架構的研發。

具備認知能力、能夠快速學習、擁有超低功耗、支持小樣本學習,是類腦計算的主要特點。認知計算可以很好地利用脈衝神經網絡的時間域和空間域結合的特點。從功耗和能效來講,邊緣計算或者物聯網端上學習(AIoT)可能是類腦計算最適合的落地場景。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

左圖來自Dong Song的IEEE 文章,右圖來自於Junwen Luo IEEE文章

過去20年,神經形態計算不斷進步,發展出三條不同路線,長遠來看,它們也代表了類腦芯片的三大應用方向

一、研發下一代計算機架構,使其能夠有效應用於視頻、圖像、語言處理領域。人工智能時代,用類腦計算系統解決當前AI技術的瓶頸,比如動作識別和認知相關的視頻處理任務,讓AI技術更好地服務於城市交通調度、人物行為識別等場景。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

二、研發用於醫學腦神經修復的醫療植入性芯片,治療腦部疾病。比如,用人工類腦電子系統代替受損的生物腦神經,這類研究目前已經有所進展。同為研究熱門的還有記憶修復技術、小腦共濟失調疾病治療等,相關技術都在動物或人體上取得了一定的實驗治療效果。

三、模仿生物腦神經行為設計大規模的電子計算系統,用來了解生物大腦計算機制。曼徹斯特大學的Spinnaker類腦計算機就是為這個目的而建。

1.樹突學習引發新關注

神經元不僅包含體細胞,還有樹突。樹突在神經網絡有很重要的計算作用,可以執行被動計算和主動計算,是一種多輸入多輸出的異構計算架構。最新研究發現樹突在生物神經網絡中有和深度學習中Back Propagation (BP)相似的error propagation計算理論。這將給脈衝神經網絡帶來新啟發。

類腦計算機制可以下沉到最底層的單獨離子通道計算模式,也可以上升到很抽象的大規模並行計算系統。越往上層,計算越簡單有效,但會損失很多神經科學本身的有趣的計算特性。如果往下層走,盡力復現神經科學的計算特性,又會消耗大量運算資源,而且對系統性能的提升水平並不確定。所以,從哪個層面進行類腦仿真,需要從神經科學、計算機架構和應用場景三個方面綜合考量。

讓電腦像人腦一樣思考,類腦芯片離我們到底有多遠?

1)用傳統的深度神經網絡訓練方法來訓練脈衝神經網絡,將backpropagation轉化成spike train的形式;

2)修改深度神經網絡的訓練方法來訓練脈衝神經網絡,同時加一些限制條件;

3)用神經科學裡生物系統的學習機制比如STDP來進行訓練。訓練算法應該充分利用脈衝神經網絡的計算特性和形態拓撲結構,這樣才能發揮其優勢。

目前脈衝神經網絡的硬件架構發展略領先於算法研發,這些硬件架構可以很好地幫助到軟件和算法研發,實現硬件-算法一體化設計。

機器學習在工業界已經取得了巨大成功,人臉識別、無人駕駛和語音處理技術發生了革命性的進步。但深度學習仍有幾個核心痛點,比如在計算機視覺上不能提取物體的全局信息(無認知功能);抗干擾性較差和需要大量訓練數據等。理論上,這些正好是脈衝神經網絡的計算優勢,脈衝神經網絡應該立足於此,幫助深度學習解決目前的痛點問題,這將是類腦計算取得成功的關鍵。


分享到:


相關文章: