Page 46 - 112-2小論文
P. 46

第三代人工智慧 SNN 模型原理解析與前景

                      圖二:基於幀的輸入和基於事件的輸入比較圖






















            圖二資料來源:Khodamoradi, A., Denolf, K., & Kastner, R. (2021). S2N2: A FPGA Accelerator for
            Streaming Spiking Neural Networks. Guo, L., Chi, Y., Wang, J., Lau, J., Qiao, W., Ustun, E., Zhang, Z.,
            & Cong, J. FPGA '21: The 2021 ACM/SIGDA International Symposium on Field-Programmable Gate
            Arrays (pp. 1-12). Association for Computing Machinery.

                           回顧  Khodamoradi, A., Denolf, K., & Kastner, R. (2021)的文獻便可得知非脈衝神經
                      元  (ANN)與脈衝神經元  (SNN)的操作所需輸入計算。表達式中     是輸入值、     是
                                                                                            
                                                                                                            
                      權重。非脈衝神經元如下:

                      (一)     = ∑             
                                               
                                            
                                       =0

                                脈衝神經元的輸入因為只有 0 和 1,故可以直接調用權重進行累加、省略輸
                           入   。脈衝神經元如下:
                                

                      (二)     = ∑       ∈         
                                             
                                  

                                根據(1)、(2)兩式,有幾項結果可以從中推斷。就以人工智慧最常見的單精
                           度浮點數(占 4 個 bytes)與半精度浮點數(占 2 個 bytes)舉例。首先,非脈衝
                           神經元就需要     及     各 N 個浮點數、I 一個浮點數,又忽略單層神經存在大量
                                                    
                                              
                           神經元而 N 值大時 I 的一個浮點數消耗位元組數太小,即一個神經元單次就要
                           消耗約 4N 或 8N 個位元組。其二,脈衝神經元因為尖峰多用只占一個位元組的
                           布林結構  (Boolean),因此便可以判斷  true 或  false 來選擇調用記憶體中對應的
                              ,從而使單次的消耗只等於約     為  true 數量乘 4 或 8 個位元組。這便形成了
                                                                
                              
                           SNN 模型在記憶體調用上的優勢。

                                另外,從上方算式中可以得知(1)的計算包含乘法和加法、(2)中只包含加法。
                           乘法的的運算步數、電路複雜度是加法的數倍,又(2)的加法只需要進行  Boolean
                           為  true 的權重,所以可以得知脈衝神經網路的計算能耗、電晶體需求上具有優
                           勢。不止如此,在其計算能耗等消耗極少的情況下,  SNN 模型的精確度也並沒
                           有被捨棄。表一為筆者根據  Roy, K.,et al. (2020)上對  ANN 和  SNN 模型的準確
                           度測試,可以得知  SNN 圖像識別上相差 ANN 僅約 2%,卻可以換得高能耗比,
                           故言其具有計算優勢。更不用說在部分場景  SNN 準確度表現更佳了。

                                                            3
   41   42   43   44   45   46   47   48   49   50   51