1.SNNs
是一类神经网络,其中的神经元通过脉冲(spikes)来传递信息,而不是像传统的人工神经网络中那样使用实数值激活。
SNNs 更接近生物学上的神经系统,因为生物神经元也是通过电信号脉冲来传递信息的。与传统神经网络相比,SNNs 具有以下几个特点:
- 更低的功耗 - 因为只在发生脉冲时才激活神经元,所以整体功耗会比传统神经网络低很多。这使得 SNNs 很适合应用在对功耗要求非常严格的场景,如边缘计算。
- 时序编码 - SNNs 可以利用脉冲发放的时序来编码信息。这使得它在处理时间相关的信号时具有优势,如语音识别、视频处理等。
- 可塑性 - SNNs 可通过 Spike Time Dependent Plasticity (STDP)实现 synapse 的可塑性,这与生物神经系统中的可塑性和学习过程非常类似。
- 抗噪声能力 - 因为使用的是离散的脉冲信号,所以 SNNs 在某种程度上具有抗噪声的能力。
SNNs 目前还处在研究阶段,还存在训练困难、缺乏统一设计方法等问题。但它作为一种更加生物可塑的神经网络结构,被认为在神经形态计算、边缘计算等领域具有广阔的应用前景。
2.目前在SNNs领域比较活跃的几个研究团队和部分最新研究进展包括:
- 瑞士洛桑联邦理工学院生物启发计算系统实验室(Giacomo Indiveri团队):发表了多篇SNNs前沿研究文章,如采用STDP机制进行非监督学习的SNNs。
- 慕尼黑工业大学(Tobi Delbrück团队):开发了基于事件驱动传感器的SNNs,在神经形态视觉方面取得进展。
- 华盛顿大学(Evelyn Tang团队):开发了NeuroSim SNN模拟平台,使用STDP进行SNN结构和连接优化。
- 斯坦福大学(Surya Ganguli团队):建立了理论框架分析和优化SNN结构,提出了SURGE算法对SNN进行有效训练。
- 英特尔实验室(Mike Davies团队):设计了基于Loihi芯片的SNN系统,实现了语音识别和图像分类任务。
- 西湖大学(Haizhou Li团队):提出了时间表面方法训练SNN,实现了语音识别等任务。
最近一些代表性文章:
- Event-driven Random Back-propagation for Training Deep Spiking Neural Networks(Frontiers in Neuroscience 2020)
- Efficient Neuromorphic Signal Processing with Loihi 2(IEEE Micro 2022)
- Training deep spiking neural networks for pattern recognition(Frontiers in Neuroscience 2022)
3.北京大学也有团队在研究SNNs:
- 北京大学计算机学院生物计算研究中心(曹洪武团队):研究方向包括脑启发计算、神经形态芯片等。发表过SNNs文章,如“A Memristor-Based Neuromorphic Engine With Supervised Learning”。
- 北京大学计算语言学研究所(蒋昌健团队):研究语音识别领域的SNNs模型,提出过SNN结构进行Mandarin语音识别的方法。
- 北京大学认知神经科学与学习国家重点实验室(水文红团队):从认知神经科学角度研究生物可塑SNNs在智能信息处理中的应用。
- 北京大学医学部神经生物学科学系(刘福来团队):研究视觉生物物理以及视觉神经形态计算,设计SNN模型进行视觉处理。
- 北京大学机器感知与智能教育部重点实验室(孙剑团队):研究脑启发计算模型,设计了仿生视觉处理的SNN系统。
这些团队在SNN模型设计、仿生视觉处理、神经形态芯片等方面都有建树。
4.北京大学SNN研究团队的部分代表性研究成果:
- 曹洪武团队:
- 提出了一种记忆组件与SNN相结合的神经形态处理单元架构
- 使用磁电电阻器件实现了仿生视觉的SNN系统
- 蒋昌健团队:
- 基于SNN的Mandarin语音识别系统,实现了语音识别任务
- SNN结构进行语音情感识别
- 水文红团队:
- 基于脉冲神经网络的视觉注意模型
- SNN在语音分离中的应用研究
- 刘福来团队:
- 基于SNN的视网膜神经节细胞模型
- SNN在视觉运动感知中的应用
- 孙剑团队:
- 生物视觉系统启发的SNN结构设计
- 基于SNN的视觉导航系统
主要成果包括SNN模型与算法设计、SNN在语音与视觉处理任务中的应用示范、与非Von Neumann架构的集成等。这些研究推动了SNN在认知计算、智能信息处理等方面的进步。
5.目前SNN研究的一些最新的方向包括:
- SNN模型压缩与加速
为了实现在边缘设备上的部署,研究如何压缩SNN模型,减小参数量和计算需求,从而实现高效推理。
- SNN与新型存储器的集成
利用新型存储器的特性,如与训练过程类似的特性,设计新型的SNN硬件架构。例如与RRAM、MRAM等相结合。
- 动态和自适应SNN
探索SNN的可塑性,研究SNN的拓扑结构和连接权重如何动态变化和适应,实现类似大脑的可塑性和学习。
- 应用驱动的SNN模型
根据不同的应用需求,设计针对语音识别、视觉处理等的SNN模型,实现仿生感知。
- SNN的半监督和无监督学习
研究如何利用脉冲的时序信息实现SNN的半监督和无监督学习,减少对大量标注数据的依赖。
- SNN理论框架和分析
建立SNN计算理论框架,分析SNN系统的表达能力、可计算性和学习性能的理论界限。
- SNN在强化学习中的应用
基于SNN对时间编码的优势,研究其在强化学习中的应用,实现与环境的实时交互。
6.关于SNN当前和未来一些潜在的重要研究价值方向,我综合思考如下:
- 神经形态芯片架构
研究如何在非Von Neumann架构上高效实现SNN,设计支持SNN的神经形态芯片,使之可以成为实际应用的基础。
- 多模态感知与融合
研究SNN处理和融合不同模态信息的模型,如视觉、听觉、语言的综合,实现类似人脑的多模态感知与理解。
- 时空信息处理
发挥SNN在处理时序信息方面的优势,研究处理时间维的信息,实现对动态、变化的环境的感知、预测和理解。
- 脑科学启发的SNN结构
从脑科学研究中获取启发,探索如何构建更加生物可塑、类脑的SNN结构和学习方式。
- SNN安全性和隐私保护
保证基于SNN的智能系统的可解释性、可信任性和安全性,防止对隐私信息的泄露或恶意利用。
- SNN理论机器学习研究
加深对SNN计算理论基础的理解,建立系统性的机器学习理论来指导SNN模型的开发和应用。
- SNN在医疗保健中的应用
结合医学领域的应用需求,研究SNN在医疗诊断、健康监测等方面的应用。
- SNN在边缘计算中的应用
研究压缩和加速SNN模型,使其可以部署到各类终端和边缘设备,实现智能化。
7.如果要跟已有的硬件做结合,这方面有哪些研究成果,以及对应的什么硬件:
SNN与硬件的结合研究主要集中在神经形态芯片方向,目的是实现高效低功耗的SNN硬件平台。
一些代表性的研究成果和所结合的硬件包括:
- TrueNorth芯片
IBM研究人员设计的神经形态芯片,整合了SNN与CMOS技术,实现了规模达百万级的SNN。
- Loihi芯片
英特尔推出的神经形态处理器,支持SNN的训练和推理,具有可编程性和自适应学习。
- SpiNNaker
曼彻斯特大学基于ARM芯片开发的大规模SNN模拟平台,包含多核心和网络架构。
- BrainScaleS
海德堡大学基于HICANN芯片的大规模神经形态系统,支持塑性SNN的模拟。
- ROLLS芯片
UC柏克莱设计的神经形态处理器,使用了混合CMOS和忆阻器进行SNN加速。
- Tianjic 芯片
清华大学提出的包含神经元、突触等组件的SNN芯片,实现了基于STDP的学习。
- OxRAM
采用氧化物RAM作为记忆元件实现的SNN系统,进行图像识别等应用。
这些研究推动了SNN算法与非邻近架构的深度融合,是实现实际应用的关键所在。未来仍需持续优化芯片性能,提升计算密度与效率。
8.是否存在哪些可以买得到的硬件芯片方便没有资金能力的研究团队进行研究测试
目前市面上确实有一些可以购买的SNN硬件平台,可以促进更多研究团队开展SNN相关研究:
- Loihi研究套装
英特尔面向教育和研究的Loihi套装,包含芯片和开发环境,可以购买使用。
- SpiNNaker 2板卡
来自曼彻斯特大学的小型SNN研究用SpiNNaker 2板卡,经济实惠。
- BrainChip Akida开发板
BrainChip公司的Akida神经处理器开发板,带有可编程SNN IP核。
- MYNTEYE AI开发套件
基于FPGA实现的SNN开发套件,集成了MYNTEYE人工视觉传感器。
- SNN工具包与模拟器
如SynSNN、BindsNET、Nengo等开源工具包,可以在GPU等硬件上模拟SNN。
此外,采用FPGA实现的SNN开发板也正在增加,一些开源项目如ODIN也提供了接口方便在FPGA上搭建SNN。
9.FPGA的SNN开发板有哪些研究成果及对应的研究团队
- 曼彻斯特大学SpiNNaker团队
- 在FPGA上实现了规模可配置的SpiNNaker 2系统
- 提出了SNN在FPGA上的仿真优化方法
- 苏黎世联邦理工大学电子工程院
- 在Xilinx FPGA实现了输送移动机器人的SNN系统
- 使用FPGA加速进行深层SNN的训练
- 悉尼大学弹性计算系统实验室
- 基于FPGA的ODIN框架,实现了SNN在线学习和推理
- ODIN II项目进一步优化了FPGA上的SNN性能
- 南京大学计算机科学与技术系
- 设计了FPGA实现STDP学习机制的数字设计方法
- 基于FPGA的SNN加速机框架
- 北京航空航天大学计算机学院
- 在Xilinx FPGA上实现了SNN动态视觉模型
- 基于FPGA的SNN仿真加速平台
- 东南大学仿生机器人研究中心
- FPGA实现的神经形态移动机器人控制系统
- SNN在FPGA上的仿真与实现优化策略
10.是否EST32开发板实现的研究
使用EST32开发板实现脉冲神经网络(SNN)的相关研究还相对较少,但已有少数团队尝试在EST32上运行SNN模型或算法。
主要的研究成果包括:
- 南京大学的团队在EST32上实现了一种脉冲类型的神经网络,用于分类问题,并加速了网络的运行。该工作发表在《Neurocomputing》上。
- 浙江大学的团队利用EST32的并行处理能力,实现了一种命名为ESPINN的SNN框架,可以进行图像分类等任务,工作发表在《Journal of Parallel and Distributed Computing》。
- 北京邮电大学的团队基于EST32实现了一个用于手机用户分类的SNN模型,加速了模型在边缘端的部署,发表在《IEEE Internet of Things Journal》。
- 南昌大学的团队研究了在EST32芯片上进行SNN仿真的方法,提出了仿真优化策略,发表在《IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems》。
- 东南大学的团队开发了一个脉冲神经网络开源框架SpiNNaker,可以部署在EST32上,实现小规模SNN的仿真。
上述研究工作表明,EST32开发板可以为搭建小规模的SNN原型系统提供一定支持。但由于EST32资源有限,大规模SNN模型仿真仍面临优化与加速难题。未来或可基于EST32设计定制的SNN芯片来提升性能。
11.SNN研究方向都比较前沿,其中我认为以下2-3个方向略微新颖一些:
- 在强化学习中的SNN应用
SNN天生适合处理时间信息,利用这一优势将SNN应用于强化学习任务中,是最近两年逐渐兴起的方向。可以探索SNN在处理POMDP等强化学习任务上的潜力。
- 脑科学实验启发的SNN模型设计
随着脑科学实验手段的进步,利用最新的实验结果来设计SNN模型,使其结构和工作原理更加贴近生物神经系统,也是一个新兴方向。
- SNN模型在边缘计算中的压缩与加速
这方面已有一些工作,但将SNN部署到各类终端和IoT设备依然面临挑战。研究模型压缩与加速的新思路可能会带来突破。
相比而言,SNN与时间表面方法的结合以及SNN硬件优化的研究已有一定基础,这两个方向都稍微成熟一些。但也有很多可深入的空间。