標籤:神經網路
(原文地址:維基百科)
簡介:
脈衝神經網路Spiking neuralnetworks (SNNs)是第三代神經網路模型,其類比神經元更加接近實際,除此之外,把時間資訊的影響也考慮其中。思路是這樣的,動態神經網路中的神經元不是在每一次迭代傳播中都被啟用(而在典型的多層感知機網路中卻是),而是在它的膜電位達到某一個特定值才被啟用。當一個神經元被啟用,它會產生一個訊號傳遞給其他神經元,提高或降低其膜電位。
在脈衝神經網路中,神經元的當前啟用水平(被建模成某種微分方程)通常被認為是目前狀態,一個輸入脈衝會使當前這個值升高,持續一段時間,然後逐漸衰退。出現了很多編碼方式把這些輸出脈衝序列解釋為一個實際的數字,這些編碼方式會同時考慮到脈衝頻率和脈衝間隔時間。
前言:
Alan Lloyd Hodgkin 和 Andrew Huxley在1952年提出了第一個脈衝神經網路模型,這個模型描述了動作電位是怎樣產生並傳播的。但是,脈衝並不是在神經元之間直接傳播的,它需要在突觸間隙間交換一種叫“神經遞質”的化學物質。這種生物體的複雜性和可變性導致了許多不同的神經元模型的產生。
從資訊理論的觀點來看,找到一種可以解釋脈衝,也就是動作電位的模型是個問題。所以,神經科學的一個基本問題就是確定神經元是否通過時間編碼來交流。時間編碼錶明單一的神經元可以取代上百個S型隱藏層節點。
應用:
這種神經網路大體上可以和傳統的人工神經網路一樣被用在資訊處理中,而且脈衝神經網路可以對一個虛擬昆蟲尋找食物的問題建模,而不需要環境的先驗知識。並且,由於它更加接近現實的效能,使它可以用來學習生物神經系統的工作,電生理學的脈衝和脈衝神經網路在電腦上的類比輸出相比,確定了拓撲學和生物神經學的假說的可能性。
在實踐中脈衝神經網路和已被證明的理論之間還存在一個主要的不同點。脈衝神經網路已被證明在神經科學系統中有作用,而在工程學中還無建樹,一些大規模的神經網路已經被設計來利用脈衝神經網路中發現的脈衝編碼,這些網路根據儲備池計算的原則,但是現實中,大規模的脈衝神經網路計算由於所需計算資源多而產能小,發展受限,造成了只有很少的大規模脈衝神經網路被用來解決複雜的計算問題,而這些之前都是由第二代神經網路解決的。第二代神經網路模型中難以加入時間,脈衝神經網路(特別當演算法定義為離散時間時)相當容易觀察其動力學特徵。我們很難建立一個具有穩定行為的模型來實現一個特定功能。
脈衝神經網路Spiking neural network