英特爾發新神經形態晶元 31mm²容納100萬人工神經元
近日,英特爾發佈了第二代神經形態晶元Loihi,面積為31mm²,最多可封裝100萬個人工神經元,而上一代面積為60mm²,支援13.1萬個神經元。 同時,Loihi 2比上一代快10倍,資源密度提高了15倍,且能效更高。
Loihi 2有128個神經形態核心,相較於第一代,每個核心都有此前數量8倍的神經元和突觸,這些神經元通過1.2億個突觸相互連接。 據英特爾的早期評估,與在第一代Loihi上運行的標準深度網路相比,在準確性沒有降低的情況下,Loihi 2上每次推理運算的次數減少到原來的至少60分之一。
英特爾神經形態計算實驗室總監Mike Davies表示:「第二代晶片極大地提高了神經形態處理的速度、可程式設計性和容量,擴大了在功耗和時延受限的智慧計算應用上的用途。 英特爾正在開源Lava,以滿足在實踐中對軟體融合、基準測試和跨平臺合作的需求,並加快商業可行性的進程。 ”
Davies認為,Loihi 2等晶元擅長於處理賦予計算機感官(例如視覺和嗅覺)的任務。 因為效率很高,神經形態晶元非常適合電源有限且不受傳統計算機網路束縛的行動裝置。
為什麼需要神經形態晶片?
在曾經很長一段時間內,規則式(rule-based)方法都在人工智慧領域佔據主流,對計算機進行程式設計需要編寫分步說明。 以教計算機學會識別狗舉例,這會涉及列出一組規則來指導其判斷,如檢查它是否有四隻腳等等。 但如果電腦遇到一隻只有三隻腿的小狗怎麼辦? 這時也許就需要更多規則,但是列出無窮無盡的規則,並讓計算機每次做出類型決策時都重複該過程是低效且不切實際的。
而人類的學習方式則與此相異,在區分狗與貓時無需被告知任何相關規則,於是學習人類大腦的運行方式成為人工智慧發展的一個重要方向。
20世纪40年代,科学家们开始用数学方法对神经元进行建模,此后则开始用计算机对神经元网络进行建模。人工神经元和突触比大脑中的要简单得多,但它们的运作原理相同——大脑中的神经元通过跨突触相互发送尖峰信号(Spiking Signals)来进行交流。
许多简单的单元(“神经元”)连接到许多其他单元(通过“突触”),一个神经元接收来自许多其他神经元的信号,当刺激达到某个阈值时,它会将自己的信号发送给周围的神经元,大脑则通过调整神经元之间的连接强度来学习。
人工神经网络(Artificial Neural Networks)通常由层组成,具有许多此类层的网络称为深度学习网络。神经网络是机器学习的一种形式,是计算机根据经验调整其行为的过程,在今天用于自动驾驶、人脸识别等领域。
康奈尔大学的神经生物学家Thomas Cleland曾说,神经形态计算(Neuromorphic Computing)“将成为摇滚明星”,“它不会把一切都做得更好,但它将完全拥有计算领域的一小部分”。
然而模仿大脑的计算成本非常高,人脑有数十亿个神经元和数万亿个突触,即使模拟一小块大脑也可能需要对每块输入进行数百万次计算。运行所有这些小计算并不适合必须一次处理一条指令的经典计算架构(CPU),而今天常用的图形处理单元(GPU)仍然没有像大脑那样有效地执行深度学习——人类的大脑可以一边驾驶汽车,一边谈论自动驾驶的未来,但使用的瓦数比灯泡还少。
常规计算机架构与神经形态架构的对比
于是,解决神经形态计算问题的芯片出现了。最初是在20世纪80年代,工程师Carver Mead创造了术语“神经形态处理器”(neuromorphic processors)来描述以基于大脑的松散方式运行的计算机芯片,为这个领域奠定了基础。
神經形態晶元如何運行?
Loihi晶片包含通過通信網路連接的128個獨立內核,每個獨立內核中都有大量單獨的”神經元”或執行單元,每一個神經元都可以接收來自任何其他神經元脈衝形式的輸入——同一核心中的鄰居、同一晶元上不同核心中的一個單元或完全來自另一個晶元。 隨著時間的推移,神經元會整合它接收到的尖峰信號(Spiking Signals,神經元通過跨突觸相互發送尖峰信號進行交流),並根據其程式設計的行為來確定何時將自己的尖峰信號發送到與其連接的任何神經元。
所有尖峰信號都是異步發生的。 在設定的時間間隔內,同一晶元上的嵌入式x86內核會強制同步。 屆時,神經元將重新計算其各種連接的權重——本質上,是決定對所有向其發送信號的單個神經元給予多少關注。
具體運行過程是,晶元上的部分執行單元充當樹突,部分基於從過去行為得出的權重處理來自通信網路的傳入信號,以確定活動何時超過臨界閾值,並在超過時觸發其自身的峰值。 然後執行單元的「軸突」查找它與哪些其他執行單元進行通信,並向每個執行單元發送一個尖峰信號。
與普通處理器不同,神經形態晶元沒有外部RAM(Random-access memory,隨機記憶體),而是每個神經元都有自己專用的小型記憶體,這包括它分配給來自不同神經元的輸入的權重,最近活動的緩存,以及發送尖峰信號的所有其他神經元的清單。
神經形態晶元與傳統處理器間的另一大區別則是能效。 IBM於2014年推出的TrueNorth晶元,使用的功率還不到在傳統處理器上類比尖峰神經網路所需的0.0001%。 英特爾神經擬態計算實驗室主任Mike Davies 表示,Loihi在某些特定工作負載上可以比傳統處理器高2,000倍。
最新的Loihi 2取得了什麼樣的新進展?
Loihi 2使用了更先進的製造工藝——英特爾第一個EUV工藝節點Intel 4,現在每個內核只需要原來所需空間的一半。 同時,Loihi 2不僅能夠通過二維連接網格進行晶元間的通信,還可以在三維尺度上進行通信,從而大大增加了能處理的神經元總數。 每個晶元的嵌入式處理器數量從三個增加到六個,每個晶元的神經元數量增加了八倍。
同時,英特爾表示,它已經通過並優化了所有異步硬體,使Loihi 2在更新神經元狀態時的性能提高了一倍,並將尖峰生成的性能提高了十倍。
另一個主要變化是處理器評估神經元狀態以確定是否發送尖峰信號的部分。 在原始處理器中,用戶可以執行一些簡單的數學運算來做出決定。 在Loihi 2中,則可以訪問簡化的可程式設計管道,執行比較和控制指令流。 據科技媒體《Ars》表示,Davies在接受其採訪時表示,”你可以將這些程式指定到每個神經元級別,這意味著兩個相鄰的神經元可以運行完全不同的程式。 ”
不僅如此,「每個神經元處理其內部記憶的方式也更加靈活——會有一個固定分配和一個可以更動態劃分的記憶體池。 ”
與Loihi 2同時推出的開源軟體框架——Lava
雖然尖峰神經網路(spiking neural networks)可以非常有效地解決很多問題,但目前的一個困難在於,這是一種非常不同的程式設計類型,需要以同樣不同的方式思考演演算法開發,要怎樣找到瞭解如何使用的人? Davies表示,目前精通它的大多數人都來自理論神經生物學背景。
到目前為止,這意味著英特爾主要將Loihi推向了研究社區,這限制了其市場銷售範圍。
從長遠來看,英特爾希望看到Loihi衍生品最終出現在更廣泛的系統中,從充當嵌入式系統中的協處理器到數據中心的大型Loihi集群。 那麼,英特爾就需要很容易找到可以為其程式設計的人。
為此,英特爾將Loihi 2的發佈與Lava的開源軟體框架的發佈結合起來。 “Lava旨在幫助神經形態程式設計傳播到更廣泛的計算機科學界,”Davies在接受外媒採訪時表示。