首页>参考读物>计算机科学与技术>人工智能

高能效类脑智能:算法与体系架构
作者 : [中]郑楠(Nan Zheng),[美]皮纳基·马祖姆德(Pinaki Mazumder) 著
译者 : 刘佩林 应忍冬 薛建伟 译
出版日期 : 2021-06-03
ISBN : 978-7-111-68299-8
定价 : 99.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 222
开本 : 16
原书名 : Learning in Energy-Efficient Neuromorphic Computing: Algorithm and Architecture Co-Design
原出版社: John Wiley & Sons(UK)
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书主要关注如何构建高能效具有学习能力的脉冲型神经元网络硬件,并且提供建立具有学习能力的脉冲型神经元网络硬件协同设计、协同优化方法。完整地描述从高级算法到底层硬件实现的细节。本书同样涵盖了脉冲型神经元网络中的许多基础知识和关键点。
本书从对脉冲型神经元网络的概述开始,讨论基于速率的人工神经网络的应用和训练,介绍实现神经网络的多种方法,如通用处理器和专用硬件,数字加速器和模拟加速器。同时展示了一个为能适应神经网络动态编程而建立的高能效加速器,验证脉冲神经网络的基础概念和流行的学习算法,简介脉冲神经网络硬件。后面的章节为读者介绍三个实现前述章节学习算法的设计案例(两个基于传统CMOS工艺,一个基于新兴的纳米工艺)。本书的结尾对脉冲型神经元网络硬件进行总结与展望。

图书特色

图书前言

1987年,我在伊利诺伊大学攻读博士学位时,有一个难得的机会去听加州理工学院的John Hopfield教授给厄巴纳香槟分校鲁姆斯物理实验室的学生讲述他在神经网络上的开创性研究。他绘声绘色地讲述了如何设计和制作一个循环神经网络芯片来快速解决基准旅行商问题(TSP)。TSP是指:当TSP中的城市数量增加到一个非常大的数目时,没有物理计算机能够在渐近有界的多项式时间内解决这个问题,从这个意义上说,TSP是一个可证明的NP完全问题。
神经网络领域的一个重要里程碑是,发现了可以解决复杂组合问题的硬件算法,因为现有的感知器型前馈神经网络技术只能对有限的简单模式进行分类。尽管如此,神经计算的创始人——康奈尔大学的Frank Rosenblatt教授在20世纪50年代末建造了一台感知计算机,当时诸如IBM 650这样的第一波数字计算机刚刚商业化。后续的神经硬件设计进展受阻,主要是由于当时的技术(包括真空管、继电器和无源元件如电阻、电容和电感等)不具备集成实现大型突触网络的能力。1985年,美国贝尔实验室利用MOS技术制造出第一个固态电子晶体芯片,在概念上验证了John Hopfield教授解决TSP的神经网络架构,从而为在硅片上解决非布尔型计算和类脑计算开辟了道路。
John Hopfield教授的开创性工作表明,如果组合算法中的目标函数可以用二次型表示,循环神经网络中的突触连接可以相应地通过将大量神经元的连接进行编程来降低目标函数的值(即局部最小值)。Hopfield的神经网络由横向连接的神经元组成,这些神经元可以被随机初始化。随后,该网络可以迭代地减少网络固有的Lyapunov能量函数值,使其达到局部最小状态。值得注意的是,Lyapunov函数在循环神经网络的动态作用下呈单调下降,神经元不具有自反馈。 

在Mazumder和Yih的著作中[1],我们证明了Hopfield网络所获得的解的质量可以通过选择性地提供自反馈使神经元远离局部最小值而得到显著改善。这种方法类似于梯度下降搜索中的爬坡,通常会陷入局部最小点。由于神经元的自反馈会影响Hopfield神经网络的稳定性,所以在网络收敛到局部最小状态之前,我们没有对神经元施加任何自反馈。然后,通过爬坡机制提高网络的能量,将网络从局部最小值中拉出。我们在上述文章中表明,通过使用这项创新技术,芯片修复提高约25%,改善了VLSI存储器的良率。

Hopfield教授使用四个独立二次函数的组合来表示TSP的目标函数。目标函数的第一部分确保若旅行商恰好一次穿越城市则能量函数最小;第二部分确保旅行商访问行程中的所有城市;第三部分确保不同时访问两个城市;第四部分确定连接TSP中所有城市的最短路径。因为神经元之间通过连接的突触有大量的同步交互作用,这些突触被精确地调整以满足上述二次函数的约束,所以简单的循环神经网络可以迅速生成质量非常好的解。然而神经网络由于其简单的连接结构,与经过良好测试的软件处理(例如模拟退火、动态规划和分支定界算法)不同,它通常无法找到最佳解决方案。
在听了Hopfield教授的精彩演讲之后,我对他这种创新的感触颇深。一方面,我很高兴地从他的演讲中了解到,通过使用具有非常小的硬件开销的简单神经形态CMOS电路,可以快速地解决计算上困难的算法问题。另一方面,我认为Hopfield教授为了证明神经网络解决组合优化问题的能力而选择的TSP应用程序并不合适,因为精心设计的软件算法,可以获得神经网络几乎无法得到的最佳解决方案。我开始考虑开发可自愈的超大规模集成电路(VLSI)芯片,利用受神经网络启发的自修复算法的力量来自动重组有缺陷的VLSI芯片。低开销和通过神经元之间的并行交互同时解决问题的能力是两点显著的特性,可以用来巧妙地通过内置的神经网络电路来自动修复VLSI芯片。
不久之后,我作为助理教授来到密歇根大学,与我的一个博士生\[2\]一起工作,起初,我们设计了一款具有异步状态更新的CMOS模拟神经网络电路,因晶元内部工艺变化等因素导致这个芯片鲁棒性不够好。为了提高自修复电路工作的可靠性,我和一名理科硕士\[3\]设计了一个同步状态更新的数字神经网络电路。这些神经网络电路通过在二分图中寻找节点覆盖、边覆盖或节点对匹配来确定修复问题,从而能够用于修复VLSI芯片。在我们的图的形式体系中,二分图中的一组顶点表示故障电路元件,另一组顶点表示备用电路元件。为了将故障VLSI芯片改造成无故障的可操作芯片,在通过嵌入式内置自检电路识别出故障元件之后,再通过可编程开关元件自动调用备用电路元件。
最重要的是,与TSP一样,二维数组修复可以证明是一个NP完全问题,因为修复算法寻找最优的多余的行、列数,它们可以被分配以绕过故障组件(比如记忆细胞、字线和位线驱动),以及位于存储器阵列内部的读出放大器队列。因此,由计数器和其他块组成的简单数字电路无法解决这种棘手的自修复问题。值得注意的是,由于无法部署VLSI芯片的输入和输出引脚来查询深度内嵌的嵌入式阵列中的故障模式,因此无法使用外部数字计算机来确定如何修复嵌入式阵列。
在1989年和1992年,我获得了美国国家科学基金会的两项资助,将神经形态自愈设计风格扩展到更广泛的嵌入式VLSI模块,如内存阵列\[4\]、处理器阵列\[5\]、可编程逻辑阵列\[6\]等。但是,这种通过内置的自检和自修复提高VLSI芯片产量的方法比VLSI芯片应用的时代早了一点,因为在20世纪90年代初期,最先进的微处理器仅包含数十万个晶体管。因此,在开发了基于神经网络的自愈VLSI芯片设计方法以用于各种类型的嵌入式电路模块之后,我停止了对CMOS神经网络的研究。我对神经网络应用于其他类型的工程问题并不是特别感兴趣,因为我想继续专注于解决VLSI研究中出现的问题。
另外,在20世纪80年代末,CMOS技术的预言者越来越担心,即将到来的红砖墙效应预示着CMOS缩小时代的结束。因此,为了促进几种可能推动VLSI技术前沿的新兴技术,美国国防部高级研究计划局(DARPA)在1990年左右启动了“超电子:超密集、超快速计算元件研究计划”。与此同时,日本的国际贸易工业部(MITI)推出了量子功能器件(QFD)项目。这两个研究项目早期的成功与大量的创新non-CMOS技术推动了美国国家纳米技术项目(NNI)的创建,这是一个美国政府研究和开发(R&D)计划,包括20个部门和独立机构,将带来纳米技术的革命,从而影响整个行业和社会。
在1995年到2010年期间,我的课题组最初专注于基于量子物理的器件和量子隧穿器件的电路建模,然后我们广泛研究了基于一维(双障碍共振隧穿器件)、二维(自组装纳米线)和三维(量子点阵列)受限量子设备的细胞神经网络(CNN)图像和视频处理电路。随后,我们使用电阻突触装置(通常称为忆阻器)和CMOS神经元开发了基于学习的神经网络电路。通过在二维处理元件(PE)集成的计算节点中混合量子隧穿和记忆器件,我们还开发了模拟电压可编程纳米计算体系结构。我们对纳米神经形态电路的研究发表在我们的新书Neuromorphic Circuits for Nanoscale Devices中,由英国River出版社在2019年出版。
在用各种新兴纳米电子和自旋电子器件开发了十多年的神经形态电路之后,我决定开始研究基于学习的数字VLSI神经形态芯片,在亚阈值和超阈值两种操作模式中使用纳米CMOS技术。我的学生和这本书的合著者Nan Zheng博士,完成了有关数字神经网络的体系结构和算法的博士学位论文。我们从机器学习和生物学习的角度出发,设计和制造了基于TSMC 65nm CMOS技术的高效节能VLSI芯片。
我们从机器学习的角度捕获了演员评论家类型的强化学习(RL)\[7\]和一个采用离线策略更新的时间差(TD)学习示例,称为VLSI芯片上的Q学习\[8\]。此外,我们还捕捉到生物无监督学习应用中常用的基于脉冲相关的突触可塑性。我们还制定了硬件友好的基于脉冲时间依赖可塑性(STDP)学习规则\[9\],在修改后的MNIST数据库基准上,单隐藏层和双隐藏层神经网络的分类正确率分别为97.2%和97.8%。硬件友好的学习规则支持高效节能的硬件设计\[10\]以及对与芯片制造\[11\]相关的过程电压温度(PVT)变化的鲁棒实现。通过仿真RL软件程序的核心——自适应动态规划(ADP),证明了用于演员评论家网络的硬件加速器VLSI芯片可解决一些控制理论基准问题。此外,与在通用处理器上运行的传统软件强化学习相比,在175MHz下运行的VLSI芯片加速器在计算时间上缩短了两个数量级,同时只消耗了25mW[12]。
图1中的芯片布局图包含了大量使用CMOS技术的数字神经网络芯片的样本,这是我的研究小组在过去35年中设计的。图1的左栏是1991年设计的一个自愈芯片,通过在一个二分图上运行节点覆盖算法来自动修复有缺陷的VLSI内存阵列,二分图代表有缺陷的组件集和可用的备用电路元件。2013年设计的STDP芯片,用于控制虚拟昆虫从初始起点到预定目的地的运动,避免了在一组任意形状的阻塞空间中导航时的碰撞。前一段描述的深度学习芯片是2016年设计的。
图1的右栏为2016年设计的RL芯片。其中还包括两个超低功耗(ULP)CMOS芯片,利用亚阈值技术,用于可穿戴的医疗保健应用。在其中一个应用中,利用神经网络的Kohonen的自组织映射(SOM)对心电图(ECG)波形进行分类,设计了一种带有无线收发器的人体传感网络,利用可植入的多极传感器对模拟神经元信号进行感知,并通过内置的唤醒收发器向医生提供数字化数据,帮助医生对精神分裂症、慢性抑郁症、阿尔茨海默病等脑相关疾病中神经元和突触层面上对药物的疗效进行监测。
最初,当我们决定以CMOS类脑计算的神经形态芯片的形式出版一本强调我们工作的专著时,我们想要汇总在前言中引用的论文的各种结果,从而构成这本书的内容。但是,在准备手稿的过程中,我们修改了最初较狭隘的目标,因为在常规课程中采用本书来向大学生和研究生讲授具有学习能力的最新一代神经网络将是有局限性的。

图 1
后来我们决定写一本全面的关于具有各种学习能力的神经网络高能效硬件设计的书,讨论正在进行的神经硬件的扩展研究。这显然是一项艰巨的任务,需要仔细研究数百个参考文献的存档来源,描述能够学习执行各种任务的硬件神经网络的协同设计和协同优化方法。我们试图提供一个全面的视角,从高级算法到低级硬件实现细节,涵盖神经网络的许多基础和要素(如深度学习),以及神经网络的硬件实现。简而言之,本书目前的版本有以下几个显著特点:
●包括神经形态算法硬件加速器的多层次全面评述。
●涵盖架构与算法的协同设计,并采用新兴器件来极大地提升计算效率。
●关注算法与硬件的协同设计,这是在神经形态计算中应用新兴器件(如传统忆阻器和扩散型忆阻器)的关键。
最后,由于完成这本书有严格的时间限制,所以本书目前的版本没有像教科书那样以教学的方式描述教学材料,在每一章的结尾也没有习题。在收集了来自学生、教师、实践工程师和其他读者的宝贵反馈后,这些目标有望在下一版中实现。如果你能提供正面和负面的指导性反馈,我将非常感激,这将使我能够准备本书的第2版。我的联系方式如下:
Pinaki Mazumder
地址:4765 BBB Building Division of Computer Science and Engineering Department of Electrical Engineering and Computer Science University of Michigan, Ann Arbor,MI 48109-2122
电话:734-763-2107
邮箱:mazum@eecs.umich.edu,pinakimazum@gmail.com
网址:http://www.eecs.umich.edu/~mazum
参考文献

上架指导

计算机\人工智能

封底文字

阐述构建面向机器学习应用的脉冲型神经元网络硬件与算法协同设计、优化的方法论
人人都能读懂的类脑计算入门指南 
本书主要关注如何构建具有学习能力的高能效神经网络硬件,并介绍这种硬件的协同设计、协同优化方法,完整地描述从高级算法到底层实现的细节。本书同样涵盖了神经网络的基础知识、关键技术(如深度学习)以及硬件实现。
本书从对神经网络的概述开始,讨论基于速率的人工神经网络的应用和训练,介绍实现神经网络的多种方法,如从通用处理器到专用硬件,从数字加速器到模拟加速器。接下来展示了一个为神经网络的自适应动态规划而建立的高能效加速器,然后是脉冲神经网络的基础概念和流行的学习算法,以及脉冲神经网络硬件概述。本书还为读者介绍了三个实现书中学习算法的设计案例(两个基于传统CMOS工艺,一个基于新兴的纳米工艺),最后对神经网络硬件进行总结与展望。

本书特点:
包括神经形态算法硬件加速器的多层次全面评述。
涵盖架构与算法的协同设计,并采用新兴器件来极大地提升计算效率。
关注算法与硬件的协同设计,这是神经形态计算中应用新兴器件(如传统忆阻器和扩散型忆阻器)的关键。 

研究者、科学家、软件工程师和硬件工程师对能耗和响应时间的要求越来越高,本书为他们应对这类要求提供了十分理想的参考资源。本书也非常适合作为本科生、研究生学习有强大学习能力的新一代神经网络的教材。

译者序

以“旧神退散,新神未立”来形容近年来计算架构领域的发展的确很形象,2017年计算机图灵奖的两名得主David Patterson和John L.Hennessy在一篇文章中也曾给出类似判断,即“未来十年是计算架构发展的黄金十年”。神经形态计算便被认为是计算架构创新的“新神”之一。这本由Zheng和Mazumder撰写的书即是对这个“新神”的引荐。
人工智能作为当前的研究热点,受到国内外学术界和工业界的追捧,而且很多成熟的产品已经落地。目前所用的人工智能算法主要集中在深度神经网络上,即第二代神经网络。该网络结构虽然效果好,但是功耗大,难以应用在一些移动设备上,且很难充分模仿人脑的智能性。而神经形态计算作为第三代人工神经网络,可以充分模拟大脑的低功耗计算特点,作为人工智能以及脑科学的交叉研究领域,具有很大的研究前景。
本书重点讨论如何为具有学习能力的神经网络构建节能硬件,致力于构建具有学习与执行各种任务的能力的硬件神经网络,提供协同设计和协同优化方法,并提供了从高层算法到底层实现细节的完整视图。开发硬件友好算法的目的是简化硬件实现,而特殊的硬件体系结构的提出则是为了更好地利用算法的独特功能。在本书的各章中,讨论了用于节能型神经网络加速器的算法和硬件体系结构。低功耗对于所有将功耗作为重要考虑因素的应用而言至关重要,使用耗电的GPU和将原始数据发送到可以进一步分析数据的云计算机都不是可行的选择。
作为一本介绍神经形态计算算法和硬件设计思想的书,本书不仅是信息学科、软件工程等学科的基本教材(或参考书),更是可以带领零基础的人进入神经形态计算领域的引路石。在内容的介绍上,本书循序渐进,深入浅出,展示了当前人工智能的算法,并逐步引入神经形态的智能算法当中,再介绍关于神经形态算法硬件实现的设计思路。本书的一大特色是关注基于新兴器件的神经形态计算的架构设计,探讨新兴器件带来的设计问题及其解决思路。本书附带了一些案例供读者学习,覆盖了书中所涉及领域的众多代表性工作。虽然本书不可能完全展示当前的神经形态计算算法和硬件设计中的所有技术细节,但是可以对初入该领域的技术人员提供一个较为完整的认识和强有力的帮助。
本书的内容广泛,包括人工智能的前沿与新兴工艺技术,为了尽可能地翻译准确,我们得到了上海交通大学类脑智能应用技术研究中心全体师生的大力支持,特别是得到了耿相铭老师的帮助与指正。同时也十分感谢杨石玉、朱肖光、陈发全、耿豪、宋扬、尹树雨、计星武、程宇豪、潘敏婷等同学在校对过程中给予的帮助,他们的帮助使本书翻译工作得以顺利完成。
最后,本书虽然经过仔细校对,但限于译者自身的水平及经验,译文可能还存在不足,非常期待大家指正,以便之后进一步完善。

刘佩林
2020年于上海

图书目录

译者序
前言
致谢
第1章 概述1
 1.1 神经网络的历史1
 1.2 软件中的神经网络2
   1.2.1 人工神经网络2
   1.2.2 脉冲神经网络2
 1.3 神经形态硬件的需求3
 1.4 本书的目标和大纲4
 参考文献6
第2章 人工神经网络的基础与学习9
 2.1 人工神经网络的工作原理9
   2.1.1 推理9
   2.1.2 学习10
 2.2 基于神经网络的机器学习13
   2.2.1 监督学习13
   2.2.2 强化学习15
   2.2.3 无监督学习17
   2.2.4 案例研究:基于动作的启发式动态规划18
 2.3 网络拓扑24
   2.3.1 全连接神经网络24
   2.3.2 卷积神经网络25
   2.3.3 循环神经网络27
 2.4 数据集和基准29
 2.5 深度学习31
   2.5.1 前深度学习时代31
   2.5.2 深度学习的崛起31
   2.5.3 深度学习技术32
   2.5.4 深度神经网络示例38
 参考文献40
第3章 硬件中的人工神经网络47
 3.1 概述47
 3.2 通用处理器48
 3.3 数字加速器48
   3.3.1 数字ASIC实现方法48
   3.3.2 FPGA加速器61
 3.4 模拟/混合信号加速器62
   3.4.1 传统集成技术中的神经网络62
   3.4.2 基于新兴非易失性存储器的神经网络68
   3.4.3 光学加速器71
 3.5 案例研究:一种节能的自适应动态规划加速器的程序设计72
   3.5.1 硬件架构73
   3.5.2 设计示例78
 参考文献82
第4章 脉冲神经网络的工作原理与学习92
 4.1 脉冲神经网络92
   4.1.1 常见的脉冲神经元模型92
   4.1.2 信息编码94
   4.1.3 脉冲神经元与非脉冲神经元的比较95
 4.2 浅层SNN的学习96
   4.2.1 ReSuMe96
   4.2.2 Tempotron97
   4.2.3 脉冲时间相关可塑性98
   4.2.4 双层神经网络中通过调制权重依赖的STDP进行学习的方法101
 4.3 深度SNN学习113
   4.3.1 SpikeProp113
   4.3.2 浅层网络栈113
   4.3.3 ANN的转换115
   4.3.4 深度SNN反向传播的研究进展116
   4.3.5 在多层神经网络中通过调制权重依赖的STDP进行学习的方法116
 参考文献128
第5章 脉冲神经网络的硬件实现133
 5.1 对专用硬件的需求133
   5.1.1 地址事件表示133
   5.1.2 事件驱动计算134
   5.1.3 渐进精度推理134
   5.1.4 实现权重依赖的STDP学习规则的硬件注意事项138
 5.2 数字脉冲神经网络142
   5.2.1 大规模脉冲神经网络专用集成电路142
   5.2.2 中小型数字脉冲神经网络147
   5.2.3 脉冲神经网络中的硬件友好型强化学习149
   5.2.4 多层脉冲神经网络中的硬件友好型监督学习153
 5.3 模拟/混合信号脉冲神经网络161
   5.3.1 基本构建块161
   5.3.2 大规模模拟/混合信号CMOS脉冲神经网络163
   5.3.3 其他模拟/混合信号CMOS脉冲神经网络专用集成电路166
   5.3.4 基于新兴纳米技术的脉冲神经网络166
   5.3.5 案例研究:脉冲神经网络中基于忆阻器交叉开关的学习169
 参考文献183
第6章 总结190
 6.1 展望190
   6.1.1 脑启发式计算190
   6.1.2 新兴的纳米技术191
   6.1.3 神经形态系统的可靠计算192
   6.1.4 人工神经网络和脉冲神经网络的融合193
 6.2 结论194
 参考文献194
附录197
术语表205

教学资源推荐
作者: [以]尤金·卡根(Eugene Kagan)尼尔·什瓦布(Nir Shvalb) 伊拉德·本-加尔(Irad Ben-Gal) 编著
作者: 吴建鑫 著 罗建豪 张皓 译;吴建鑫 审校
作者: 李进 谭毓安 著
作者: [西]何塞·曼努埃尔·戈麦斯-佩雷斯(Jose Manuel Gomez-Perez),[西]罗纳德·德诺(Ronald Denaux),[西]安德烈·加西亚-席尔瓦(Andres Garcia-Silva) 著
参考读物推荐
作者: 李玲 郭崎 陈云霁 等著 (内封)李玲 郭崎 陈云霁 张蕊 张昊翀 李威 李震 谭梓豪 著
作者: 邱锡鹏 著