一个超长综述,其实只有22页,22——88全是参考文献.jpg
- paper:A Survey of Neuromorphic Computing and Neural Networks in Hardware、
- 文章主要内容:发展动机,变化历史,模型,算法,学习,硬件实现,支持组件,通信方案,软件系统,应用类型,前瞻总结与挑战等
- 定义:神经形态计算(Neuromorphic computing)用来指代与普遍的冯·诺依曼计算机体系结构形成鲜明对比的灵感来源于大脑的计算机、器件和模型。【最早由Caver Mead 提出,1990】
- 难点:建立准确的大脑神经模型,到寻找材料和技术来构建支持这些模型的设备,到开发一个能使系统自动学习的编程框架,再到创建具有类脑功能的应用程序
- 优势:快,高效,低耗能,小占地面积【还是More law 问题】,搞大规模在线实时学习平台【人工智能
一. 动机
- 很明显,动机主要就是图中的几条:实时性能、并行性【早期,自定义硬件】、冯·诺依曼的瓶颈、可扩展性、低功耗【人类大脑:20W】、封装大小、容错、速度更快、在线学习、神经科学
二. 模型
2.1神经元模型
- 模型:组成网络的组件【网络模型】,组件如何操作【神经元模型】,组件的相互作用【突触模型】
- 轴突:axon;树突:dendrites;突触:synapse;
-
分类:五类
- 生物学上可信的【Biologically-plausible】:精确模拟
- 受生物学启发的【Biologically-inspired】:模拟了,但没完全模拟【复制行为,不一定合理】
- 神经元+其它【Neuron+Other】:不算模拟,但有的部分结构
- 整合与触发【Integrate-and-fifire】:一种更简单的受生物基因启发的尖峰神经元模型
- 麦卡洛克-皮茨【McCulloch-Pitts】:神经元模型是大多数人工神经网络文献中使用的原始麦卡洛克-皮茨神经元的衍生物【就是带激活函数的全连接】
模型组件:细胞膜动力学,离子通道动力学,轴突模型与树突模型
-
生物可信:
-
Hodgkin-Huxley 模型【1952】,四维非线性微分方程描述神经元的离子转移进入和流出神经元的行为
-
Morris Lecar 模型【2015】,简化版,二维非线性方程
-
-
生物启发:HH版本简化,种类繁多,更简单,比如 Fitzhugh-Nagumo【Implementation of compact vlsi fifitzhugh-nagumo neurons】,Hindmarsh-Rose【Digital multiplierless realization of two-coupled biological hindmarsh–rose neuron model】等
- Izhikevich spiking neuron 模型【2003】,产生与霍奇金-赫胥黎模型相似的爆发和尖峰行为,但计算更简单
- Mihalas¸-Niebur 模型【2012】,使用一组线性微分方程复制爆发和峰值行为
-
部分结构:比普通神经网络包含更多生物细节,或者硬件相关更新。
-
整合触发:在生物学上不那么真实,但产生了足够的行为复杂性
-
全连接:研究多聚焦于激活函数实现
2.2 突触模型
- 特点:多,并且占硬件空间【因此通常简化的比较简单】,可塑性机制
- 分类:生物启发【synaptic dynamics, homeostasis mechanisms】与基于传统神经网络【 Hebbian learning, least mean-square】
- spike-timing dependent plasticity (STDP):见4
2.3 网络模型
- 描述了不同的神经元和突触如何连接与如何相互作用【神经元和突触模型的生物学灵感和复杂性,网络拓扑结构,现有的训练或学习算法对所选网络模型的可行性和适用性,对一组应用程序的普遍适用性】
- 峰值网络,因其事件驱动特性广为流传:峰值前馈网络,峰值循环网络,峰值深度神经网络,峰值深度信念网络,峰值赫比亚系统,峰值霍普菲尔德网络或联想记忆,峰值赢家通吃网络峰值概率网络,和峰值随机神经网络…。通常在传统计算机上训练。
- 生物启发网络模型,峰值神经网络通常使用中央模式生成器【central pattern generators 】CPG实现。cpg产生振荡运动,如生物系统中的行走步态或游泳运动。
三. 算法与学习
- 选什么模型适应什么算法,训练在哪实现,是否在线,有无监督,速度如何,结果价值【成功,广泛应用】,生物启发还是合理
-
分类:反馈,进化,Hebb,STDP
-
Evolutionary: 将进化的思想用于神经网络参数迭代或者结构设计的过程中
-
Hebb: neurons fires together, wire together【指同一时间被激发的神经元间的联系会被强化】巴普洛夫
-
STDP:Hebb学习的时间不对称形式,突触前神经元与突触后神经元,触发之间的时间越短,权重变化的幅度就越大
四. 硬件
-
分类:数字、模拟和混合模拟/数字平台
-
数字类:
- FPGA【如果开发一个神经形态系统的目标是通过软件模拟实现加速,那么fpga可能是一个很好的选择,如果目标是实现一个小的、低功耗的系统,那么fpga可能不是正确的方法】,设计和制造时间短,不同应用具有可重构性和可重用性,每个问题的单独优化,易于与主机接口
- ASIC:BM的TrueNorth是当今最流行的神经形态学实现之一,它是一个完整的自定义ASIC设计。
- SpiNNaker,另一种流行的神经形态实现,也是一个完整的定制数字,大规模并行系统
TrueNorth每个连接消耗25pJ,而SpiNNaker每个连接消耗10nJ————灵活,但高耗能
-
模拟类:
- FPAAs:FPNA,NeuronsFPAA
-
混合类:Neurogrid ,BrainScaleS
五. 支持系统
5.1通信框架 【片上片下】
- 标定地址与邮寄 address event representation (AER)
5.2支持软件
- 可视化工具
- 映射,编程,模拟等
六. 应用范围
-
范围图
-
视觉,声音,脑机接口,机器人【自主导航】
-
需要实时性能、能够部署到具有较小空间占用的环境中和/或低功耗的任务是神经形态系统的常见用例,使用神经形态系统的一般数据分类也很受欢迎。该领域的应用领域,包括事故诊断[1015]、谷物识别[657],[659],计算机用户分析[2641]、[2642]、驾驶员嗜睡检测[2434]、气体识别或检测[622],[943],[972],产品分类[781]、高光谱数据分类[750]、股价预测[1537]、风速估计[939]、焊料联合分类[1050]、太阳辐射检测[929]、气候预测[966]、高能物理[982]的应用,[1018]。医学领域的应用也很流行,包括冠状动脉疾病诊断[954]、肺部疾病诊断、肺疾病诊断[887]、深部传感器监测[404]、DNA分析[1146]、心律失常检测、心电图(ECG)[900]、[922]、[965]、[1007]、脑电图(E电图)[403]、[1100]、[1103]、[1850]、肌电图(EMG)[1039]、[1103]结果和药理学应用[2643],淋巴细胞学[1842]、[1845]、蘑菇[1840]、[1842]、[1845]、音素[952]、皮马印度糖尿病[998]、[1027]、[1336]、[1338]、[1504]、[2648]、semion[983]、甲状腺[998]、[1840]、[1345]、[1336]、[2646]和威斯康星乳腺癌[305]
七. 总结
- 针对神经形态系统的适当的训练和/或学习算法是什么
- 使用新的和新兴的技术和材料用于神经形态设备
- 神经形态计算机如何开发支持软件系统【构建专门为神经形态设备的编程语言,其中设备不是作为神经网络模拟器,而是作为一种具有特定特征的特殊类型的计算机】
- 神经形态社区需要做很多工作来开发和通信神经形态系统的用例
参考:
【1】解读神经形态计算:从基本原理到实验验证 | 机器之心 (jiqizhixin.com)
【2】神经形态计算与神经网络硬件最全调查:从研究全貌到未来前景 - 云+社区 - 腾讯云 (tencent.com)
【3】Nature 长文综述:类脑智能与脉冲神经网络前沿 - 知乎 (zhihu.com)