郵票大小、重量只有幾克,但卻集成了54億個硅晶體管,內置了4096個內核,100萬個“神經元”、2.56億個“突觸”,能力相當于一臺超級計算機,功耗卻只有65毫瓦。
這就是IBM公布的最新仿人腦芯片:TrueNorth。
為什么要做TrueNorth?
因為自2008年以來,美國國防部研究機構DARPA給了IBM 5300萬美元。TrueNorth是IBM參與DARPA的研究項目SyNapse的最新成果。SyNapse全稱是Systems of Neuromorphic Adaptive Plastic Scalable Electronics(自適應可塑可伸縮電子神經系統,而SyNapse正好是突觸的意思),其終極目標是開發出打破馮 諾依曼體系的硬件。
為什么要打破馮 諾依曼體系?
馮 諾依曼體系是傳統計算機的基礎。這種體系的特點是存放信息和程序指令的內存與處理信息的處理器是分離的。由于處理器是按照線序執行指令的,所以必須不斷與內存通過總線反復交換信息—而這個會成為拖慢速度和浪費能量的瓶頸。盡管后來采用了多核芯片和緩存技術,但是這些只能提高速度而不能降低太多能耗,而且沒辦法實時處理,因為通信是瓶頸—內存和CPU的大量通信要通過總線進行。因此,近幾十年來研究人員一直在致力于尋找突破原有體系的技術。
模仿大腦
模仿人類大腦是科學家尋求突破的方向。人類大腦的神經元盡管傳導信號的速度很慢,但是卻擁有龐大的數量(千億級),而且每個神經元都通過成千上萬個突觸與其他神經元相連,形成超級龐大的神經元回路,以分布式和并發式的方式傳導信號,相當于超大規模的并行計算,從而彌補了單神經元處理速度的不足。人腦的另一個特點是部分神經元不使用時可以關閉,從而整體能耗很低。
在了解了人腦的這種機理之后,研究人員開始了在軟硬件上對人腦的模擬。在硬件方面,近年來主要是通過對大型神經網絡進行仿真,如Google的深度學習系統Google Brain,微軟的Adam等。但是這些網絡需要大量傳統計算機的集群。比方說Google Brain就采用了1000臺各帶16核處理器的計算機,這種架構盡管展現出了相當的能力,但是能耗依然巨大。
而IBM則是在芯片上的模仿。
集成度和能效令人印象深刻
這種芯片把數字處理器當作神經元,把內存作為突觸,跟傳統馮諾依曼結構不一樣,它的內存、CPU和通信部件是完全集成在一起。因此信息的處理完全在本地進行,而且由于本地處理的數據量并不大,傳統計算機內存與CPU之間的瓶頸不復存在了。同時神經元之間可以方便快捷地相互溝通,只要接收到其他神經元發過來的脈沖(動作電位),這些神經元就會同時做動作。
2011年的時候,IBM首先推出了單核含256 個神經元,256 256 個突觸和 256 個軸突的芯片原型。當時的原型已經可以處理像玩Pong游戲這樣復雜的任務。不過相對來說還是比較簡單,從規模上來說,這樣的單核腦容量僅相當于蟲腦的水平。
不過,經過3年的努力,IBM終于在復雜性和使用性方面取得了突破。4096個內核,100萬個“神經元”、2.56億個“突觸”集成在直徑只有幾厘米的方寸(是2011年原型大小的1/16)之間,而且能耗只有不到70毫瓦,IBM的集成的確令人印象深刻。
IBM的TrueNorth芯片結構、功能、物理形態圖
這樣的芯片能夠做什么事情呢?IBM研究小組曾經利用做過DARPA 的NeoVision2 Tower數據集做過演示。它能夠實時識別出用30幀每秒的正常速度拍攝自斯坦福大學胡佛塔的十字路口視頻中的人、自行車、公交車、卡車等,準確率達到了80%。相比之下,一臺筆記本編程完成同樣的任務用時要慢100倍,能耗卻是IBM芯片的1萬倍。
跟傳統計算機用FLOPS(每秒浮點運算次數)衡量計算能力一樣,IBM使用SOP(每秒突觸運算數)來衡量這種計算機的能力和能效。其完成460億SOP所需的能耗僅為1瓦—正如文章開頭所述,這樣的能力一臺超級計算機,但是一塊小小的助聽器電池即可驅動。
通信效率極高,從而大大降低能耗這是這款芯片最大的賣點。TrueNorth的每一內核均有256個神經元,每一個神經有分別都跟內外部的256個神經元連接。
但是相比之下,人腦有上千億個神經元,每個神經元又有成千上萬的突觸,那樣一個神經網絡就更加無法想象了。IBM的最終目標就是希望建立一臺包含 100 億個神經元和 100 萬億個突觸的計算機—這樣的計算機要比人類大腦的功都強大10 倍,而功耗只有一千瓦,而且重量不到兩升(我們大腦的大小)。
應用
不過,計算能力并非這種最強大腦的長處,其強項在于認知能力。認知芯片可以執行感知、交互、識別等任務,就像演示中的識別對象一樣。IBM預計這種認知能力可以在物聯網中充分能力,部署在傳感器中處理現實世界的感知問題。使用認知計算機通過傳感器網絡和微型電機網絡不斷記錄和報告數據如溫度,壓力,波高,聲學和海潮等來監測世界范圍內的供水狀況。然后,它還可以在發生地震的情況下發出海嘯警報。而這樣的任務傳統計算機根本不可能完成。或者這種芯片也可以部署在它的Watson上面,從而大大提升這臺在智力競賽中戰勝人類冠軍的超級計算機的能力和能效。
因此,有人把IBM的芯片稱為是計算機史上最偉大的發明之一,將會引發技術革命,顛覆從云計算到超計算機乃至于智能手機等一切。
前景
但是從短期來看,情況也許并沒有那么樂觀。
首先芯片的編程仍然是個大問題。芯片的編程要考慮選擇哪一個神經元來連接,以及神經元之間相互影響的程度。比方說,為了識別上述視頻中的汽車,編程人員首先要對芯片的仿真版進行必要的設置,然后再傳給實際的芯片。這種芯片需要顛覆以往傳統的編程思想,盡管IBM去年已經發布了一套工具,但是目前編程仍非常困難,IBM團隊正在編制令該過程簡單一點的開發庫。(當然,如果我們回顧過去編程語言從匯編一路走來的歷史,這一點也許不會成為問題。)
其次,在部分專業人士看來,這種芯片的能力仍有待證實。
在神經網絡和機器學習專家看來,DARPA的NeoVision2 Tower的數據集相對比較簡單,演示只是識別了5種對象,相對于Google和百度等圖像識別使用的是有上百萬中對象的ImageNet,芯片在這種測試集的表現如何尚不得而知。
再者,真正的認知計算應該能從經驗中學習,尋找關聯,提出假設,記憶,并基于結果學習,而IBM的演示里所有學習都是在線下的馮諾依曼計算機上進行的。不過目前大多數的機器學習都是離線進行的,因為學習經常需要對算法進行調整,而IBM的硬件并不具備調整的靈活性,不擅長做這件事情。但是IBM并不排除硬件實現的可能性(這家公司在歷史上已經表現出極佳的持續改進能力)。但是從事同類研究的LeCun認為,應該開發能實現最新算法的芯片,那種芯片應該不是IBM芯片的樣子,而是類似于改良版的GPU(參見微軟的Adam)。
所以說,IBM的芯片是否真如其名稱TrueNorth所述、為計算機的未來找到了真正的方向,目前尚不得而知。但是,至少這款芯片超高集成度和超低能耗已經給人留下了深刻印象。
IBM集成16塊TrueNorth芯片的電路板