一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

介紹幾個(gè)脈沖神經(jīng)網(wǎng)絡(luò)的開源項(xiàng)目

OpenFPGA ? 來源:OpenFPGA ? 作者:OpenFPGA ? 2022-05-31 09:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

脈沖神經(jīng)網(wǎng)絡(luò)( Spiking neural network-SNN ) 是更接近自然神經(jīng)網(wǎng)絡(luò)的人工神經(jīng)網(wǎng)絡(luò)。除了神經(jīng)元和突觸狀態(tài)之外,SNN 還將時(shí)間概念納入其操作模型。這個(gè)想法是, SNN 中的神經(jīng)元不會在每個(gè)傳播周期傳輸信息(就像典型的多層感知器網(wǎng)絡(luò)一樣),而是僅在膜電位發(fā)生時(shí)才傳輸信息 - 與膜電荷相關(guān)的神經(jīng)元的內(nèi)在質(zhì)量 - 達(dá)到特定值,稱為閾值。當(dāng)膜電位達(dá)到閾值時(shí),神經(jīng)元會放電,并產(chǎn)生一個(gè)信號,該信號傳播到其他神經(jīng)元,這些神經(jīng)元又會根據(jù)該信號增加或降低它們的電位。在閾值交叉時(shí)觸發(fā)的神經(jīng)元模型也稱為脈沖神經(jīng)元模型。

3588ec0c-e07f-11ec-ba43-dac502259ad0.png

SNN 原則上可以應(yīng)用于與傳統(tǒng) ANN 相同的應(yīng)用。此外,SNN 可以模擬生物有機(jī)體的中樞神經(jīng)系統(tǒng),例如在事先不了解環(huán)境的情況下尋找食物的昆蟲。由于它們的相對真實(shí)性,它們可用于研究生物神經(jīng)回路的運(yùn)作。從關(guān)于生物神經(jīng)元電路的拓?fù)浣Y(jié)構(gòu)及其功能的假設(shè)開始,可以將該電路的記錄與相應(yīng) SNN 的輸出進(jìn)行比較,從而評估該假設(shè)的合理性。然而,SNN 缺乏有效的訓(xùn)練機(jī)制,這可能會抑制某些應(yīng)用,包括計(jì)算機(jī)視覺任務(wù)。

35b93b8c-e07f-11ec-ba43-dac502259ad0.png

基于 FTJ 的人工突觸

下面介紹幾個(gè)SNN的開源項(xiàng)目。

關(guān)于CNN vs. RNN vs. ANN區(qū)別,請看下文:

35ead3ea-e07f-11ec-ba43-dac502259ad0.png

https://www.analyticsvidhya.com/blog/2020/02/cnn-vs-rnn-vs-mlp-analyzing-3-types-of-neural-networks-in-deep-learning/

https://zhuanlan.zhihu.com/p/107993566

ODIN Spiking Neural Network (SNN) Processor

https://github.com/ChFrenkel/ODIN

363a5aa0-e07f-11ec-ba43-dac502259ad0.png

項(xiàng)目介紹

ODIN 是一種在線學(xué)習(xí)數(shù)字脈沖神經(jīng)處理器,在 2019 年發(fā)表在IEEE Transactions on Biomedical Circuits and Systems期刊上,在魯汶天主教大學(xué) ( UCLouvain ) 采用 28 納米 FDSOI CMOS 設(shè)計(jì)和原型制作。ODIN 基于單個(gè) 256 神經(jīng)元 64k 突觸橫桿神經(jīng)突觸核心,具有以下關(guān)鍵特性:

基于脈沖依賴的突觸可塑性 (SDSP) 在線學(xué)習(xí),

神經(jīng)元可以再現(xiàn) 20 種 Izhikevich 行為。

36892b08-e07f-11ec-ba43-dac502259ad0.png

因此,ODIN 是一個(gè)用于邊緣學(xué)習(xí)的多功能實(shí)驗(yàn)平臺,同時(shí)與所有先前提出的尖峰神經(jīng)網(wǎng)絡(luò) (SNN) 相比,記錄神經(jīng)元和突觸密度更高。

36d9644c-e07f-11ec-ba43-dac502259ad0.png

使用源代碼時(shí),請引用相關(guān)論文:

https://arxiv.org/pdf/1804.07858.pdf

同時(shí)該項(xiàng)目也有詳細(xì)的設(shè)計(jì)文檔:

https://github.com/ChFrenkel/ODIN/tree/master/doc

HedgeHog-Fused-Spiking-Neural-Network-Emulator-Compute-Engine

https://github.com/jerry-D/HedgeHog-Fused-Spiking-Neural-Network-Emulator-Compute-Engine

用于 RISC-V 的 HedgeHog 融合脈沖神經(jīng)網(wǎng)絡(luò)仿真器/計(jì)算引擎(有FPGA驗(yàn)證)

374dd3e0-e07f-11ec-ba43-dac502259ad0.png

介紹

在 Xilinx Kintex Ultra Plus 中運(yùn)行時(shí)鐘頻率約為 100MHz,它可以執(zhí)行大約 312qty。每個(gè)時(shí)鐘周期的浮點(diǎn)運(yùn)算約每秒 310 億次浮點(diǎn)運(yùn)算。指令集中的累積和激活位可以連接8個(gè)神經(jīng)元膜。如果你正在探索或試驗(yàn)使用 RISC-V 作為主機(jī) CPU 的 FPGA 嵌入式 AI 應(yīng)用程序的脈沖神經(jīng)網(wǎng)絡(luò),那么 SYMPL HedgeHog 非常適合你。

這是有關(guān) HedgeHog FSNN 模擬器/計(jì)算引擎的 .pdf 信息表:

https://github.com/jerry-D/HedgeHog-Fused-Spiking-Neural-Network-Emulator-Compute-Engine/blob/master/HedgeHog.pdf

在 Xilinx Vivado IDE 中進(jìn)行仿真

Vivado需要的所有 Verilog RTL 源文件都位于此存儲庫的“RTL”、“ASM”、“test bench”和“sim”文件夾中。頂級模塊是“HedgeHog.v”。建議第一次在 Vivado 中創(chuàng)建項(xiàng)目時(shí),選擇 Xilinx Kintex Ultra+ xcku5p-ffvd-900-3-e 作為目標(biāo)器件。在 Vivado 中創(chuàng)建項(xiàng)目后,需要設(shè)置“HedgeHog.v”為項(xiàng)目“Top”文件。

下一步是將“SpiNNe_tb.v”測試文件拉入 Vivado 作為激勵(lì)。然后向下滑動到“Simulation Sources”>“sim_1”,對測試文件“SpiNNe_tb.v”執(zhí)行與“HedgeHog”相同的操作,在仿真源中將其設(shè)置為“top”。

完成后,單擊“運(yùn)行仿真”。之后,會注意到仿真失敗。這是因?yàn)榉抡嫘枰皊pikeDemo.HEX”程序來執(zhí)行 HedgeHog。為了解決這個(gè)問題,將“spikeDemo.HEX”文件粘貼到仿真工作目錄中:“C:projectNameprojectName.simsim_1ehavxsimspikeDemo.HEX”,在“ASM”文件夾中可以找到匯編語言源代碼和對象列表。

379f6598-e07f-11ec-ba43-dac502259ad0.png

接下來,演示仿真,它只是將一系列脈沖推入 HedgeHog,需要“spike_trains.txt”尖峰輸入文件和位于“sim”文件夾中的“weights.txt”文件,因此將這兩個(gè)文件粘貼到與放置“spikeDemo .HEX”文件的工作目錄相同。

完成后,再次單擊“運(yùn)行仿真”按鈕以啟動仿真即可看到仿真結(jié)果。

該項(xiàng)目還有很多詳細(xì)的設(shè)計(jì)文檔,就不一一說明了。

37de5de8-e07f-11ec-ba43-dac502259ad0.png

CSE237D-PYNQ-SNN-Accelerator

https://github.com/snagiri/CSE237D-PYNQ-SNN-Accelerator

38001136-e07f-11ec-ba43-dac502259ad0.png

383b73de-e07f-11ec-ba43-dac502259ad0.png

脈沖神經(jīng)網(wǎng)絡(luò)在 PYNQ-Z1 板上的硬件實(shí)現(xiàn)

S2NN-HLS

https://github.com/eejlny/S2NN-HLS

該項(xiàng)目提出了一種用于脈沖神經(jīng)網(wǎng)絡(luò)的高性能架構(gòu),可優(yōu)化在主存儲器中的配置數(shù)據(jù)的數(shù)據(jù)精度和流式傳輸。神經(jīng)網(wǎng)絡(luò)基于 Izhikevich 模型,并使用HLS映射到 CPU-FPGA 混合設(shè)備。實(shí)驗(yàn)表明,將電壓和頻率縮放應(yīng)用于 DDR 存儲器和可編程邏輯可以分別將其能量需求降低高達(dá) 77% 和 76%。

詳細(xì)設(shè)計(jì)論文:

http: //dx.doi.org/10.1016 /j.micpro.2017.06.018。

Conversion from CNNs to SNNs

https://github.com/Dengyu-Wu/spkeras

38c3358a-e07f-11ec-ba43-dac502259ad0.png

SpKeras 可以通過以下步驟獲取和評估基于速率的脈沖神經(jīng)網(wǎng)絡(luò) (SNN):

使用 Tensorflow-keras 預(yù)訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò) (CNN)

使用 SpKeras 將 CNN 轉(zhuǎn)換為 SNN

評估 SNN 并獲取參數(shù),例如權(quán)重、偏差和閾值

其他

https://github.com/oshears/SNN-FPGA-Implementation

https://github.com/jasha64/SNN-FPGA

https://github.com/Minz9/SNN-on-FPGA

https://github.com/oshears/fpga_snn_models

總結(jié)

今天介紹了主要3個(gè)SNN的項(xiàng)目,主要是SNN復(fù)雜度較TPU或者CNN或者DNN又高了幾個(gè)臺階,所以用它來直接對FPGA進(jìn)行移植難度很大,建議對第一個(gè)前三個(gè)項(xiàng)目進(jìn)行研究,其他都不怎么推薦(想研究也沒有文檔)。

關(guān)于DNN或者CNN或者SNN也介紹了幾十個(gè)項(xiàng)目了,后面可能就不會出神經(jīng)網(wǎng)絡(luò)的項(xiàng)目了,感覺大家也看膩了,后續(xù)會出一些視頻處理或者圖像處理的項(xiàng)目。

最后還是強(qiáng)推一波官方神經(jīng)網(wǎng)絡(luò)加速的項(xiàng)目:

官方提供的各種案例也是基本覆蓋了常規(guī)應(yīng)用。

最后,還是感謝各個(gè)大佬開源的項(xiàng)目,讓我們受益匪淺。后面有什么感興趣方面的項(xiàng)目,大家可以在后臺留言或者加微信留言,今天就到這,我是爆肝的碎碎思,期待下期文章與你相見。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:優(yōu)秀的 Verilog/FPGA開源項(xiàng)目介紹(二十四)- 脈沖神經(jīng)網(wǎng)絡(luò) (SNN)

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    BP神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)原則

    BP(back propagation)神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)原則主要基于以下幾個(gè)方面: 一、層次結(jié)構(gòu) 輸入層 :接收外部輸入信號,不
    的頭像 發(fā)表于 02-12 16:41 ?734次閱讀

    BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)的比較

    BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)在多個(gè)方面存在顯著差異,以下是對兩者的比較: 一、結(jié)構(gòu)特點(diǎn) BP神經(jīng)網(wǎng)絡(luò) : BP神經(jīng)網(wǎng)絡(luò)是一種多層的前饋神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 02-12 15:53 ?650次閱讀

    BP神經(jīng)網(wǎng)絡(luò)的優(yōu)缺點(diǎn)分析

    BP神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network)作為一種常用的機(jī)器學(xué)習(xí)模型,具有顯著的優(yōu)點(diǎn),同時(shí)也存在一些不容忽視的缺點(diǎn)。以下是對BP神經(jīng)網(wǎng)絡(luò)優(yōu)缺點(diǎn)的分析: 優(yōu)點(diǎn)
    的頭像 發(fā)表于 02-12 15:36 ?906次閱讀

    什么是BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法

    BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法(Backpropagation Algorithm)是一種用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)的有效方法。以下是關(guān)于BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法的介紹: 一、基本概念 反向傳播算
    的頭像 發(fā)表于 02-12 15:18 ?760次閱讀

    BP神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)的關(guān)系

    BP神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)之間存在著密切的關(guān)系,以下是對它們之間關(guān)系的介紹: 一、BP神經(jīng)網(wǎng)絡(luò)的基本概念 BP神經(jīng)網(wǎng)絡(luò),即反向傳播神經(jīng)網(wǎng)絡(luò)(Ba
    的頭像 發(fā)表于 02-12 15:15 ?846次閱讀

    BP神經(jīng)網(wǎng)絡(luò)的基本原理

    BP神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network)的基本原理涉及前向傳播和反向傳播兩個(gè)核心過程。以下是關(guān)于BP神經(jīng)網(wǎng)絡(luò)基本原理的介紹: 一、網(wǎng)絡(luò)結(jié)構(gòu) BP
    的頭像 發(fā)表于 02-12 15:13 ?838次閱讀

    人工神經(jīng)網(wǎng)絡(luò)的原理和多種神經(jīng)網(wǎng)絡(luò)架構(gòu)方法

    在上一篇文章中,我們介紹了傳統(tǒng)機(jī)器學(xué)習(xí)的基礎(chǔ)知識和多種算法。在本文中,我們會介紹人工神經(jīng)網(wǎng)絡(luò)的原理和多種神經(jīng)網(wǎng)絡(luò)架構(gòu)方法,供各位老師選擇。 01 人工
    的頭像 發(fā)表于 01-09 10:24 ?1177次閱讀
    人工<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的原理和多種<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>架構(gòu)方法

    卷積神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)工具與框架

    : TensorFlow是由Google Brain團(tuán)隊(duì)開發(fā)的開源機(jī)器學(xué)習(xí)框架,它支持多種深度學(xué)習(xí)模型的構(gòu)建和訓(xùn)練,包括卷積神經(jīng)網(wǎng)絡(luò)。TensorFlow以其靈活性和可擴(kuò)展性而聞名,適用于研究和生產(chǎn)環(huán)境。 特點(diǎn): 靈活性: TensorFlow提供了豐富的API,允許用戶
    的頭像 發(fā)表于 11-15 15:20 ?664次閱讀

    卷積神經(jīng)網(wǎng)絡(luò)與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的比較

    在深度學(xué)習(xí)領(lǐng)域,神經(jīng)網(wǎng)絡(luò)模型被廣泛應(yīng)用于各種任務(wù),如圖像識別、自然語言處理和游戲智能等。其中,卷積神經(jīng)網(wǎng)絡(luò)(CNNs)和傳統(tǒng)神經(jīng)網(wǎng)絡(luò)是兩種常見的模型。 1. 結(jié)構(gòu)差異 1.1 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 11-15 14:53 ?1850次閱讀

    RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的區(qū)別

    神經(jīng)網(wǎng)絡(luò)是機(jī)器學(xué)習(xí)領(lǐng)域中的一種強(qiáng)大工具,它們能夠模擬人腦處理信息的方式。隨著技術(shù)的發(fā)展,神經(jīng)網(wǎng)絡(luò)的類型也在不斷增加,其中循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)和傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(如前饋
    的頭像 發(fā)表于 11-15 09:42 ?1122次閱讀

    LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)與工作機(jī)制

    的結(jié)構(gòu)與工作機(jī)制的介紹: 一、LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu) LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)主要包括以下幾個(gè)部分: 記憶單元(Memory Cell) : 記憶單元是LSTM
    的頭像 發(fā)表于 11-13 10:05 ?1623次閱讀

    Moku人工神經(jīng)網(wǎng)絡(luò)101

    Moku3.3版更新在Moku:Pro平臺新增了全新的儀器功能【神經(jīng)網(wǎng)絡(luò)】,使用戶能夠在Moku設(shè)備上部署實(shí)時(shí)機(jī)器學(xué)習(xí)算法,進(jìn)行快速、靈活的信號分析、去噪、傳感器調(diào)節(jié)校準(zhǔn)、閉環(huán)反饋等應(yīng)用。如果您
    的頭像 發(fā)表于 11-01 08:06 ?660次閱讀
    Moku人工<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>101

    matlab 神經(jīng)網(wǎng)絡(luò) 數(shù)學(xué)建模數(shù)值分析

    matlab神經(jīng)網(wǎng)絡(luò) 數(shù)學(xué)建模數(shù)值分析 精通的可以討論下
    發(fā)表于 09-18 15:14

    分享幾個(gè)用FPGA實(shí)現(xiàn)的小型神經(jīng)網(wǎng)絡(luò)

    今天我們分享幾個(gè)用FPGA實(shí)現(xiàn)的小型神經(jīng)網(wǎng)絡(luò),側(cè)重應(yīng)用。
    的頭像 發(fā)表于 07-24 09:30 ?1865次閱讀
    分享<b class='flag-5'>幾個(gè)</b>用FPGA實(shí)現(xiàn)的小型<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>

    神經(jīng)網(wǎng)絡(luò)專用硬件實(shí)現(xiàn)的方法和技術(shù)

    神經(jīng)網(wǎng)絡(luò)專用硬件實(shí)現(xiàn)是人工智能領(lǐng)域的一個(gè)重要研究方向,旨在通過設(shè)計(jì)專門的硬件來加速神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和推理過程,提高計(jì)算效率和能效比。以下將詳細(xì)介紹神經(jīng)網(wǎng)絡(luò)專用硬件實(shí)現(xiàn)的方法和技術(shù),并附上
    的頭像 發(fā)表于 07-15 10:47 ?2310次閱讀