已阅读5页,还剩64页未读, 继续免费阅读
(物理电子学专业论文)神经网络实时计算关键技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中国科学技术大学学位论文相关声明 本人声明所呈交的学位论文,是本人在导师指导下进行研究 工作所取得的成果。除已特别加以标注和致谢的地方外,论文中 不包含任何他人已经发表或撰写过的研究成果。与我一同工作的 同志对本研究所做的贡献均已在论文中作了明确的说明。 本人授权中国科学技术大学拥有学位论文的部分使用权, 即:学校有权按有关规定向国家有关部门或机构送交论文的复印 件和电子版,允许论文被查阅或借阅,可以将学位论文编入有关 数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、 汇编学位论文。 保密的学位论文在解密后也遵守此规定。 作者签名:盈p 熊 砷年j 月口日 中国科学技术大学硕:e 学位论文神经网络实时计算关键技术研究 致谢 本论文的全部工作是在导师王永纲教授的悉心指导下完成的。王老师渊博的 学识、严谨的治学态度、对新知识孜孜不倦的追求精神和忘我的工作热情对我影 响很大,将使我终生受益。在我进快电子实验室的三年中,王永纲老师对我的学 习、工作、生活等各方面都给予了真诚的关怀和帮助。在此,向王老师表示衷心 的感谢! 感谢那些在快电子实验室一起工作学习并给予我启发和帮助的老师和同学, 他们是:王砚方教授、安琪教授、宋克柱副教授、张万生老师,以及颜天信,戴 学龙、郑裕峰、王健、都军伟、章涛、吴义华、王超、程敬原、郭建华、刘小桦、 程涛等。快电子实验室的程伊敏女士也为本论文的完成提供了诸多重要的后勤服 务。 特别感谢我的女朋友常利敏为我的硕士期间学习和本论文的顺利完成所做 的最大的无私奉献,她对我的督促和激励是我不断前进的巨大动力。 最后,我还要感谢我父母多年来对我的关怀和鼓励,没有他们的含辛茹苦, 就不会有我的今天 第2 页共7 1 页 中国科学技术大学硕卜学位论文神经网络实时计算关键技术研究 摘要 神经网络是智能信息处理的主要技术之一,它所具备的独特知识表示结构 和信息处理的原则,使其在许多应用领域取得了显著的进展,如模式识别、函数 逼近、智能控制和复杂信号处理等传统计算机极难求解的问题。 神经网络计算有其自身非常鲜明的特点:大量、并行的乘加运算,超越函数 的运算,网络结构和权重的可在线配置。这些特点使得神经网络计算非常庞大和 复杂,需要消耗大量的计算资源,传统上一般采用计算机对数据进行离线处理和 分析,这种数据处理方式在很大程度上限制了神经网络在实时系统中的应用。 本论文讨论了使用f p g a 实现神经网络实时计算的关键技术。在对神经网络 充分研究的基础上,根据神经网络计算的特点分析了多种可行的硬件算法,选择 并行分布式算法和c o r d i c 算法,使用v e f i l o g 语占描述了一个用于函数逼近的 多层感知器网络,并对算法和该实现的速度、精度、资源消耗和可扩展性进行了 详细的分析和讨论。论文的主要内容包括以下六个章节: 第一章绪论,简单介绍了神经网络的软件仿真实现方法和硬件实时计算方 法,阐述了实时计算对神经网络应用的意义,探讨了现场可编程门阵列( f p g a ) 技术在神经网络实时计算方面的应用。 第二章对神经网络的基本原理进行描述。主要介绍了神经网络的基本概念, 神经网络的基本组成单元神经元模型,神经元模型运算的特点,以及构筑于 神经元模型上的三种基本网络结构。最后简单介绍了神经网络的学习过程,学习 任务,泛化和应用。 第三章分析了两个典型的神经网络计算的f p g a 实现:用于模式识别的 g a n g l i o n 网络和使用c o r d i c 算法实现激活函数运算的r b n n 网络。重点分 析了上述网络所采用的易于f p g a 实现的算法和资源消耗情况。 第四章详细介绍了r n s 算法,p i e c e w i s e 算法等适合硬件实现的先进算法, 对它们的优缺点进行了系统的分析,对其在神经网络中的应用进行了探讨;本章 还讨论了f p g a 技术的最近进展,指出f p g a 技术的不断发展为神经网络的实 时计算提供了更广阔的空间。 第五章详细介绍了按照神经网络理论构造的用于函数逼近的多层感知器网 络p i o n e e r ,给出了网络的v e f i l o g 语言描述,讨论了实现网络计算所采用 第3 页共7 l 贰 中国科学技术夫学顾士学位论文神经列络实时计算关键技术研究 的关键算法:并行分布式算法和c o r d i c 算法。 第六章通过m a t l a b 仿真运算,研究了算法的参数选择对输出结果精度的影 响,以及对整个网络性能的影响。对比了网络的v e r i l o g 描述在m o d e l s i m 平台, 实际硬件平台的运行结果同m a t l a b 实现的精确网络的差别,分析了网络h d l 描 述的性能。 第七章总结和展望,在总结论文工作的基础上,对使用f p g a 实现神经实时 计算的前景进行了分析,探讨了使用基本的神经元i pc o r e 实现功能更强大,结 构更复杂的神经网络的可能性。 第4 贞共7 i 页 ! 璺型兰垫查盔兰堡兰丝堡塞 塑丝塑垡壅壁生墨茎垦塑! 墨里塑 a b s t r a c t n e u r a ln e t w o r k si so n eo ft h em o s tp o p u l a ri n t e l l i g e n t i z e di n f o r m a t i o n m a n a g e m e n tt e c h n o l o g y , i t ss p e c i a lk n o w l e d g ep r e s e n t a t i o n f r a m e w o r ka n d i n f o r m m i o nm a n a g e m e n tp r i n c i p l em a k ei ti sv e r yu s e f u li nm a n ya p p l i c a t i o nf i e l d s , s u c ha sp a t t e mc l a s s i f i c a t i o n ,i n t e l l i g e n tc o n t r o ls y s t e ma n dc o m p l i c a t e ds i n g a l p r o c e s s i n gs y s t e mw h i c h c a nn o tb ep r e s e n t e db yt r a n d i t i o n a lc o m p u t e r o p e r a t i o no ft h en e u r a ln e t w o r k sh a si t so w nc h a r a c t e r i s t i c s :a b u n i i a n t ,p a r a l l e l m a c s ,a c t i v a t i o nf u n c t i o no p e r a t i o n ,t h er e c o n f i go p e r a t i o n so f n e t w o r ks t r u c t u r ea n d t h ew e i g h t s t h e s ec h a r a c t e r i s t i c sm a k et h ec a l c u l a t i o no ft h en e u r a ln e t w o r k si sv e r y h l i g ea n dc o m p l i c a t e d ,u s u a l l yn e e dal o to f r e s o u r c e s i nt h ep a s t ,s c i e n t i s t sa l w a y s h a n d l et h ed a t au s i n ga l lo f f - l i n es t y l e ,w h i c hl i m i t e st h et h er e a l t i m ea p p l i c a t i o n so f t h en e u r a ln e t w o r k i nt h i sp a p a r , o u rt o p i ci sf o c u so nt h ek e yt e c h n o l o g yo fu s i n gf p g at oa c h i v e r e a l t i m ed a t ap r o c e s s i n go fn e u r a ln e t w o r k a c c o r d i n gt ot h ec h a r a c t e r i s t i c so ft h e n e u r a ln e t w o r k , w eu s ed i s t r i b u t i o na r i t h m e t i ca n dc o r d i ca r i t h m e t i ci m p l e m e n t i n ga m l pn e t w o r kw h i c hi su s e dt oa p p r o a c haf u n c t i o n t h i sp a p e ri n c l u d e ss i xc h a p t e r s : c h a p t e r1i n t r o d u c e st h ei m p l e m e n t a t i o no fn e u r a ln e t w o r ku s i n gs o f t w a r eo r h a r d w a r e ,d i s c u s s et h es i g n i f i c a n c eo fr e a l t i m ed a t ap r o c e s s i n gt ot h ed e v e l o p m e n to f n e u r a ln e t w o r ka n dt h eu s eo f f p g ai nt h i sf i e l d c h a p t e r2m a i n l yd e s c r i b e st h eb a s i cp r i n c i p l eo fn e u r a ln e t w o r k f i r s tw e i n t r o d u c et h eb a s i cc o n c e p t i o no fi t ,i n c l u d i n gt h eb a s i ce l e m e n to fn e u r a ln e t w o r ka n d t h r e eb a s i ct y p e so fn e t w o r k t h e nw ei n t r o d u c es o m ei m p o r t a n tc o n c e p t i o n sw h i l e d e s i g n i n gn e u r a ln e t w o r k ,s u c ha st r a i n i n gp r o c e s se t c c h a p t e r3w ea n a l y s e dt w ot y p i c a li m p l e m e n t a t i o no fn e u r a ln e t w o r ki nf p g a :a p a t t e r nc l a s s i f i e r g a n g l i o na n dar b n nn e t w o r kw h i c hu s ec o r d i ca r i t h m e t i c a e h i v i n gi t sa c t i v a t i o nf u n c t i o n c h a p t e r4i n t r o d u c e ds e r v a la r i t h m e t i c st h a ta r es u i t a b l ef o rh a r d w a r ei m p l e m e n t s u c ha sr n sa r i t h m e t i ca n dp i e c e w i r ea r i t h m e t i c a n a l y s e dt h ea d v a n t a g e sa n d d i s a d v a n t a g e so fs u c ha r i t h m e t i c s ;t h el a s t e s ti m p r o v e m e n to ff p g ai sa l s o 第5 页共7 l 页 中国科学技术大学硕士学位论文神经网络实时计算关键技术研究 i n t r o d u c e di nt h i sc h a p t e r c h a p t e r5i n t r o d u c e st h ed e t a i lo fam l pn e t w o r k p i o n e e rd e s i g n e di n0 1 1 1 l a b ,d i s c u s st h ek e ya r i t h m e t i c st h a ta r eu s e dt oi m p l e m e n tt h en e t w o r ki nv e r i l o g h d l :d i s t r i b u t i o na r i t h m e t i ca n dc o r d i ca r i t h m e t i c c h a p t e r6w ef o c u so nt h ei n f l u e n c eo ft h ea r i t h m e t i cp a r a m e t e rc h a n g e , c o m p a r e dt h er e s u l t so ft h eh d l d e s c r j i p r i o r iw i t ht h ep r e c i s en e t w o r ki m p l e m e n t e di n m a t l a b , a n a l y s e dt h ep e r f o r m a n c eo f t h eh d ld e s c r i p t i o n c h a p t e r7w ec o n c l u d et h eo b t a i n e dr e s u l t sa n df o r m u l a t ep r o b l e m st h a ts h a l lb e c o n s i d e r e di nf u r t h e rr e s e a r c h 第6 烈共7 l 页 中国科学技术大学顾i :e :位论文 神绎网络实时计算关键技术研究 第一章绪论 1 1 实现神经网络的基本方法 神经网络作为智能计算的一个主流方向,有着广阔的应用前景,但其实现的 繁杂性一直是限制神经网络应用的一个重要因素。近年来随着计算机软硬件水平 的不断提高,在神经网络计算方面的研究取得了很大的进展。 使用计算机软件构造神经网络是目前最常用的实现方法,软件的高度灵活性 是其一直占统治地位的主要原因。用户可以根据应用的具体要求方便的修改网络 的拓扑结构、神经元对数掘的处理方式、权重和字长等各种参数。但是在指令串 行执行的处理器上实现神经网络计算是与神经网络本身高度的并行处理结构相 违背的,不能体现神经网络运算的基本特点,需要大量的运算时间。不能满足实 时系统的数据处理要求,限制了神经网络的应用。 m a t l a b 的神经网络工具箱是这种实现方法的典型代表,它以神经网络理论为 基础,利用m a t l a b 脚本语言构造出典型神经网络的激活函数,涵盖了网络的基 本常用模型,集成了多种学习算法,为用户对网络进行训练、仿真、检验网络的 性能提供了极大的方便。用户可以通过简单的编程实现自己感兴趣的网络结构, 并可以灵活的调整网络的各种参数,对选定网络的性能进行评估:但是在一台普 通p c 上完成个中等规模神经网络对规定数据集的处理往往需要几个小时的时 间。 然而,在很多应用场合,需要神经网络具备对输入数掘进行实时处理的能力, 以帮助系统做出正确的响应,如机器视觉、模式识别、高能物理实验的快触发系 统和探测器定位系统等。因此,使用硬件实现神经网络计算有着巨大的吸引力, 它可以充分发挥神经网络并行运算的特点,是实现网络实时计算的一种重要途 径。 近2 0 年来,使用硬件构造神经网络,以实现网络实时计算的研究一直是神 经网络研究的熟点问题,大量相关论文发表在i e e e 等核心期刊上。早期的高速 实现多采用模拟电路,电路结构复杂,实现成本高,且不能实现网络参数的动态 调整,因此实际应用较少;9 2 年后随着f p g a 技术的不断发展,通过h d l 语言 第9 页共7 l 页 中国科学技术大学硕 学位论文 神经网络实时计算关键技术研究 对神经网络进行描述,在f p g a 内部实现神经网络成为了研究的主流方向,一些 成功的实现也已经在实际工程中得到了应用。但是由于神经网络运算自身的复杂 性,如何采用合理的硬件资源实现满足实时性、精度要求的网络仍然是中外研究 者一直关注的重点。 1 2f p g a 技术在神经网络实时计算中的应用 在神经网络硬件并行实现的多种方式中,现场可编程门阵列以其独特的优点 战胜了d s p 、m c u 阵列、v l s i 等多种实现方法,得到了众多研究者的青睐。 现场可编程门阵列( f i e l dp r o g r a m m a b l eg a t e a r r a y ) 即f p g a ,基于s r a m 工艺实现。上电后会自动读取外部e e p r o m 中的配置信息对芯片内部的门电路 进行配置以实现特定功能,因此在线路中可重复编程的特性是f p g a 区别于定制 电路的最大特点,也是使用f p g a 实现神经网络实时计算的最大优势:用户可以 根据不用应用的具体要求,在f p g a 内部设计神经网络的原型、进行仿真和测试, 然后根据需要调整网络的拓扑结构和连线权重。这样,采用硬件实现的神经网络 便具有了和软件实现相同的灵活可配置功能。 f p g a 的设计方法主要是使用基于h d l 语言描述的模块化设计方法,即设 计者在实现基本的功能模块( i pc o r e ) 后,通过对基本模块的调用和整合实现复 杂的算法和功能。i pc o r e 的可重复利用不仅可以极大地缩短开发时间,还为系 统的维护和升级提供了便利:开发者可以在实现了基本的运算单元神经元 后,通过对神经元模块的重复调用构筑复杂的网络结构,众多开发者可以通过共 享i pc o r e 的方式极大的减少开发时问。 近年来,随着f p g a 技术的高速发展,f p g a 内部的可编程资源极大的丰富, 系统时钟频率不断提高,而且内部往往集成了大量的乘法器、微处理器,甚至 d s p 核,使用f p g a 进行复杂的数字信号处理已经成为芯片厂商和开发者共同 关注的一个热点方向。f p g a 丰富的可编程资源使在其内部实现大量的并行处理 单元成为可能,其不断提高的系统时钟频率和集成的信号处理单元使采用f p g a 实现神经网络具有更高的性价比。 使用f p g a 实现神经网络的实时计算,一些关键问题决定了实现速度、精度 和资源消耗: 第l o 负共7 1 且【 中国科学技术大学硕士学位论文神绎网络实时计算关键技术研究 数值表示,目前的实现都是基于定点数的实现,在f p g a 内部实现基于浮点 运算的神经网络仍然有很大的困难; 夺数值精度,更高的数值精度意味着更小的量化计算误差,而更低的数值精度 意味着更简洁的实现,因此数值精度的选择往往是设计要求和设计成本的折 中: 大量并行乘加操作的实现,实现神经网络的实时计算需要进行大量的并行乘 加运算。如何选择合适的算法,在f p g a 内部通过加、减、移位等基本操作 实现高速的乘加运算是一项富有挑战性的工作。 夺激活函数的实现,在f p g a 内部实现多个非线性激活函数的并行运算需要消 耗大量的运算时间和硬件资源,常用的查表和曲线拟合方法虽然速度快,但 在可承受的资源消耗范围内,往往不能提供满意的精度,且不便于i pc o r e 的可重复利用。 上述这些问题正是本论文研究的重点。 第l l 页共7 l 页 中国辩学技术大学硕_ 上学位论: 申经网络实时计算关键技术研究 第二章神经网络基本原理 2 1 神经网络的定义 人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的 组织能够模拟生物神经系统对真实世界物体所作出的交互反应,天然具有存储经 验知识和使之可用的特性。众所周知,人脑是一个高度复杂的、非线性的和并行 的计算机器,其组成成分神经元比今天已有的最快的计算机还要快许多倍的速度 进行特定的计算( 如模式识别、感知和运动神经控制) 。神经网络在两个方面与 人脑相似:l 、神经网络获取的知识是从外界环境中学习得来的:2 、互连神经元 的连接强度,即突触权值,用于储存获取的知识。 2 2 神经网络的优点 神经网络的计算能力具有以下特点:( 1 ) 大规模并行分布式结构;( 2 ) 神经 网络学习能力以及由此而来的泛化能力。泛化是指神经网络对不在训练( 学习) 集中的数据可以产生合理的输出。这两种信息处理能力让神经网络可以解决一些 当前还不能处理的复杂的大型问题。总体来说,神经网络具有下列性质和能力: 夺非线性:单个神经元可以是线性或者是非线性的,一个由非线性神经元互连 而成的神经网络自身是非线性的,并且非线性是一种分布于整个网络中的特 殊性质。非线性是神经网络的一个很重要的性质。 夺适应性:神经网络具有调整自身突触权值以适应外界变化的能力。特别是, 一个在特定运行环境下接受训练的神经网络,对环境条件不大的变化可以很 容易的重新进行训练。而且,当它在一个时变环境中运行时,网络突触权值 就可以设计成随时间变化。 夺证据响应:在模式识别的问题中,神经网络可以设计成既提供不限于选择哪 一个特定模式的信息,也提供决策的置信度的信息。后者可以用来据判那些 出现的过于模糊的模式,这样网络的分类性能就会改善。 夺容错性:一个以硬件形式实现后的神经网络有天生容错的潜质,比如,一个 神经元或它的连接损坏了,存储模式的记忆在质量上被削弱,但是,由于神 第1 2 页共7 1 砸 中国科学技术大学硕士学位论文 神绛网络实时计算关键技术研究 经网络信息存储的分布特性,在网络的总体响应严重恶化之前这种损坏是分 散的。 2 - 3 神经网络的发展史 神经网络系统理论发展至今已有5 0 多年的历史,其发展历史大致经过了以 下几个发展阶段: 2 3 1 初期阶段 自1 9 4 3 年m c c u ll o c h 和数学家p it t s 提出神经生物学模型( 简称m - p 模型) 开始,至2 0 世纪六十年代为止,这一段时间可以称为神经网络系统理论发展的 初期阶段,这个时期的主要特点是多种网络模型的产生与学习算法的确定。 2 3 2 停滞期 上个世纪6 0 年代到7 0 年代,神经网络系统理论的发展处于一个低潮时期, 造成这种情况的原因是发展过程中遇到了本质的困难即电子线路交叉极限的困 难( 对门个神经元就存在条连线) 。在当时的计算条件下,神经元数量刀的大 小受到极大的限制,因此神经网络系统不可能完成高度集成花、智能化的计算任 务。虽然形式如此严峻,但仍有很多科学家在困难条件下降持开展研究,在将神 经网络应用到语音识别、模式识别和图像识别方面,取得了很大的成功。 2 3 - 3 黄金时期 从2 0 世纪8 0 年代月:始,是神经网络系统理论发展的黄金时期。 2 0 世纪8 0 年代,关于智能计算机发展道路的问题只趋迫切的提商到日程上 来,由于计算机的集成度同趋极限状态,但数值计算的智能水平与人脑相比,仍 有较大的差距。因此,需要从新的角度来思考智能计算机的发展道路问题。这样 一来,神经网络系统理论重新受到重视。所以,2 0 世纪8 0 年代后期到9 0 年代 初,神经网络系统理论形成了发展的热点,多种模型、算法和应用问题被提出。 目前,神经网络系统理论与技术的发展大体分为以下三个方面进行。 第1 3 页共7 l 页 中国科学技术大学硕士学位论文 神经网络实时计算关键技术研究 首先在硬件技术方面,一些发达国家,如美国和日本均实现了规模超过1 0 0 0 个神经元的网络系统,这样的系统具有极高的运算速度,而且已经在股票数据分 析中得到了应用。另外,为了克服电子线路交叉极限问题,很多国家都在研究电 子元件之外的神经网络系统,如光电子元件和生物元件等。 神经网络系统理论的研究方面,主要进展有b o l t z m a n n 机理论的研究、细胞 网络的提出和性能指标的分析等。 神经网络系统的应用研究主要集中在模式识别( 语音和图像识别) 、经济管 理和优化青4 造等方面,它和数学、统计中的多个学习有着密切的联系,如线性和 非线性规划问题、数值逼近、统计计算等。 2 4 神经网络模型 神经网络是由单个处理单元一一神经元构成的分层网络,不同体系结构的网 络其基本处理单元是相同的,下面从神经元模型和网络结构两方面介绍神经网络 模型。 2 4 1 神经元模型 神经元是神经网络操作的基本信息处理单元。图3 一l 显示了神经元的非线性 模型,它是神经网络的设计基础。 偏暨 突触权值 图2 - 1 神经元的非线性模型 第1 4 页共7 1 页 输出 n 毛 而 k li、,l i u 入号输信 中国科学技术大学硕士学位论文 种鳍! 阿络实时计算关键技术研究 从图2 - 1 可以看出,神经元模型的基本构成包括三个部分: l - 突触或连接链:每一个都由其权值或者强度作为特征。在连接到神经元k 的 突触,上的输入信号工,被乘以突触权重。权重的第一个下标指查询神 经元,第二个下标指权值所在的突触的输入端; 2 加法器:用于求输入信号被神经元的相应突触加权的和。这个操作构成一个 线性组合器: , 3 激活函数:用来限制神经元输出振幅,又称压制函数,由于它将输出信号压 制( 限制) 到允许范围之内的一定值。 图3 一l 的神经元模型还包括一个外部偏置记为瓯。偏置的作用是根据其为正为 负,相应地增加或降低激活函数地网络输入。 我们可以采用如下一对方程描述一个神经元k : = j = i 其中五,而,皿是输入信号,w k 。,w k :阅是神经元七的突触权值,输入信号 的线性组合器的输出,偏置为,激活函数为伊( r ) ,儿是神经元输出信号。 激活函数 激活函数,记为妒( v ) ,通过诱导局部域v 定义 孛经元输出。常用的激活函数 有以下三种类型: i 域值函数:这种激活函数如图3 - 4 a 所示,可写为: 加,= 版: 该函数称为h e a v i s i d e 函数。相应的,在神经元后使用这种域值函数,其输出可 表示为: f l ,u 0 胪i o 唯 一j o v 一土 。 2 其中,在运算的线性区域内放大因子置为1 。这种形式的激活函数是对非线性放 大器的近似。下面两种情况可以看作是此函数的特例:1 ) 在保持运算的线性区 域不超过的情况下,就成为线性组合器;2 ) 如果线性区的放大因子无穷大,那 么次函数退化成域值函数。 3 s i g m o i d 函数:此函数的图形是s 形的,在构造人工神经网络中是最常用的 激活函数。该函数是严格的递增函数,在线性和非线性行为之间显现出较好的平 衡,它的一个例子是l o g i s t i c 函数,其定义如下; 加,= 去 其中口是s i g m o i d 函数的倾斜参数。改变参数口就可以改变倾斜程度,如图3 4 c 所示。实际上,在原点的斜度等于0 4 ,在极限情况下,倾斜参数趋于无穷, s i g m o i d 就变成了简单的域值函数。域值函数仅取值0 或l ,而s i g m o i d 的值域 是0 到1 的连续区间。并且s i g m o i d 函数是可微分的,而域值函数不是,可微性 是神经网络理论的一个重要特征。 2 4 2 网络结构 一般说来,神经网络具有三种不同的基本网络结构,分别是:单层d 口馈网络、 第1 6 页共7 i 页 中国科学技术大学硕士学位论文神经网络实时计算关键技术研究 多层前馈网络和递归网络,以下分别介绍这三种网络结构。 单层前馈网络 在分层网络中,神经元以层的形式组织。在最简单的分层网络中,源节点构 成输入层,直接投射到神经元输出层( 计算节点) 上去,而不是相反。即该网络 是严格的无圈的或前馈的,如图3 8 所示: 源节点输入层神经,c 输m 层 图2 2 单层前馈或无圈神经元网络 输入输出层各有4 各节点。这样一个网络称为单层网。“单层”指的是计算节点 ( 神经元) 输出层。我们不把源节点的输入层计算在内,因为这一层没有计算。 多层前馈网络 前馈网络的第二种网络有一层或多层隐藏节点层,相应的计算节点称为隐藏 单元或隐藏神经元。图3 9 给出了具有一个隐藏层和输出层的全i i 馈网络。隐藏 神经元的功能是以某种有用方式介入外部输入和网络输出之中。加上一个或多个 隐藏层,网络可以引出高阶统计特性。即使网络为局部连接,由于额外的突触连 接和额外的神经交互作用,可以使网络在不那么严格意义下获得一个全局关系。 当输入层很大的时候,隐藏层提取高阶统计特性的能力就更有价值了。 输入层的源节点提供激活模式的元素( 输入向量) ,组成第二层( 第一隐藏 层) 神经元( 计算节点) 的输入信号。第二层的输出信号作为第三层输入,这样 一直传递下去。通常,每一层的输入都是上一层的输出,最后的输出层给出相对 于源节点的激活模式的网络输出。图3 - 9 中只有一个隐藏层以简化神经网络的布 局,这是一个1 0 4 2 网络,其中有1 0 各源节点,4 各隐藏神经元,2 各输出神 第1 7 页共7 i 贞 ! 里型兰垫查查兰堡! 兰堡堡苎 塑丝型垡壅堕生墨茎堡垫! ! ! ! 翌 经元。图3 9 的网络也可称之为完全连接网络,这是指相邻层的任意一对节点都 有连接,如果不是这样,我们称之为部分连接网络。 源节点输入崖隐藏神经7 0 层输出神经元层 图2 3 具有一个隐藏层和输出层的全前馈网络 递归网络 递归网络和前馈网络的区别在于它至少有一个反馈环,如图2 f 4 所示。递归 网络可以是,单层网络的每一个神经元的输出都反馈到所有其他神经元的输入中 去。该图中描绘的结构没有自反馈环,自反馈环表示神经元的输出反馈到它自己 的输入上去。图2 4 也没有隐藏层。图2 5 是带有隐藏神经元的一类递归网络, 反馈连接的起点包括隐藏层神经元和输出神经元。 反馈环的存在,无论是图2 4 或图2 - 5 的递归结构,对网络的学习能力和它 的性能有深刻的影响。并且,由于反馈环设计使用单元延迟元素( 记为z 1 ) 构 成的特殊分支,假如神经网络包含非线性单元,这导致非线性的动态行为。 第1 8 页共7 i 页 中国科学技术大学硕士学位论文神经网络实时计算关键技术研究 单元延迟 运算符 图2 - 4 无自反馈环和隐藏神经元的递归网络 图2 5 有隐臧神经元的递归网络 第1 9 页共7 l 页 输出 中国科学技术大学硕士学位论文 神经列络实时计算关键技术研究 2 4 3 神经网络的学习过程 神经网络的一个典型特征是它具有从环境中学习的能力,并且通过学习改善 其自身的行为。神经网络对自身行为的改善是随时间依据某一规定的度量进行 的。神经网络通过施加于它的突触权值和偏置水平的调节的交互过程来学习它的 环境。理想情况下,神经网络在每一次重复学习过程后对它的环境便有更多的了 解在神经网络学科中对“学习”一词的定义如下:学刀_ 是一个过程,疆过这个 过程神经硒络的自由参数在其嵌入韵珂、境的激励过程z 下德麴调节,学习的类型 由参数改变的方式决定,遂令凫粤龟惫弋弧飞仑义t l 、神经网络被一个环境所激励; 2 、作为这个激励的结果,神经网络在它的自由参数上发生变化; 3 、由于神经网络内部结构的改变而以新的方式响应环境 我们将解决学习问题的一个恰当定义的规则集合称作学习算法。不同的学习 算法在其对神经元的突触权值的调节方式上各不相同,对于神经网络的设计没有 唯一的学习算法,每种算法都有其自身的优势。神经网络中基本的学习算法有: 误差修正学习、基于记忆的学习、h e b b 学习、竞争学习和b o i t z n l a n n 学习。 2 4 4 神经网络的学习任务 选定一个特定的学习算法与神经网络需要完成的学习任务密切相关,根据不 同的形式神经网络的学习任务大致可以分为以下几种: l 、模式联想:又分为自联想和异联想。自联想方式当存储一系列的模式( 向量) 时神经网络要求不断地将它们呈现给网络。其后将己存模式地部分描述或噪 声形式呈现给网络,而网络地任务就是检索( 回忆) 存储地该特定模式。异 联想和自联想地不同之处在于一个任意地输入模式集合与一个输出模式集合 配对。 2 、模式识别:是一个过程,由这个过程将接收的模式或信号确定为一些指定类 ( 类别) 中的一个类。一个神经网络要实现模式识别需要先经过一个训练过 程,在此过程中网络需要不断的接收一个模式集合以及每个特定模式所属的 类别;然后,把一个以前没有见过但属于用于训练的同一模式总体的新模式 呈现给神经网络。神经网络可以根据从训练数据中提取的信息识别特定模式 第2 0 页共7 l 页 中国科学技术大学硕士学位论文 神经网络实时计算关键技术研究 的类别。 文函数逼近:通过设计一个神经网络来逼近未知函数厶使由网络实际实现的 描述输入一输出映射的函数f 与,足够接近,即: i l , ) 一,( 工) 0 占 对于所有的上 其中占是一个很小的正数。假定训练集样本数目n 足够大,神经网络也有足够数 目的自由参数,那么对于特定的任务逼近误差占应当使足够小。 第2 1 页共7 1 页 中国科学技术大学硕士学位论文 神弊刚络实时计算关键技术研究 第三章两个典型的神经网络硬件实现 神经网络的并行计算结构,模块化设计方法使采用f p g a 实现神经网络的 实时计算显得非常有吸引力。神经网络基本运算单元是神经元,神经元进行的是 下边两个运算: = 。, - l y k = 妒( 地+ 吃) 即乘加运算和激活函数的运算。整个网络的运算最终归结为上述两种运算,因此 为这两种运算选择高效、易于硬件实现、资源消耗合理的算法是采用硬件电路进 行神经网络实时计算的关键。 早期神经网络的硬件实现多采用模拟电路或模拟、数字混合电路。1 9 9 2 年 c o x c e 和e b l a n z 第一次采用多片f p g a 级联的方法成功地实现了一个用于模 式识别的m l p 网络- g a n g l i o n ,由此掀起了在f p g a 内部实现神经网络研 究的热潮。十几年来,i e e e 上刊载了大量的相关论文,其中很多优秀的算法研 究,误差分析工作为我们今天的研究指明了方向,提供了灵感。 ; 3 1 i 第一个使用f p g a 实现的神经网络g a n g l i o n 乘加运算的实现在神经网络的实时计算中有着重大的意义:神经网络是一个 “m u l t i p l i c a t i o n r i c h ”的计算网络,实现一个中等规模神经网络的并行运算,往 往就需要同时运行上百个乘法,这对任何计算单元都是一个巨大的挑战。 c o xc e 和e b l a n z 在充分研究了g a n g l i o n 网络运算特点的基础上,密 切结合f p g a 芯片硬件结构的特点,设计了一种高效的乘加算法,g a n g l i o n 网络可以在5 0 n s 的周期内实现2 2 4 个8 b 8 b 的乘法运算,这在今天看来仍然是 很激动人心的工作。 3 1 1g a g n l i o n 的网络结构 g a n g l i o n 是一个包含一个隐藏层的m l p 网络,输入层有1 2 个节点,中 间隐藏层有1 4 个节点,输出层有4 个节点。输入层节点仅缓冲数据,其他两层 第2 2 页共7 l 页 中国科学技术大学硕士学位论文 神经两络实时计算关键技术研究 的节点对数据进行同样的处理:求和所有8 b i t 无符号输入同8 b i t 有符号权重的 积,将乘加结果同偏置相加后送入激活函数:再,得到节点的最终输出,网 络结构如图所示: 图3 1g a n g l i o n 总体结构图 节点间的连线强度( 权重) 。各节点的偏置都是预先通过网络训练得到的, 作为已知参数存储在网络当中;通过动态调整这些参数,可以形成不同的决策空 问,将g a n g l i o n 应用于多种模式识别任务。 3 1 2 乘法运算的实现 g a n g l i o n 的网络计算结构需要在5 0 n s 内实现2 2 4 个8 b 8 b 的乘法运算, 图3 - l 中的每根连线都代表了一个乘法操作,c o xc e 和e b l a n z 在结合所用 f p g a 芯片x c 3 0 0 0 结构特点的基础上,使用一种改进的查表算法实现了这个运 算。 8 b i t 变量乘以8 b i t 常量,可以看作对8 b i t 常量的一个映射。使用查表法实现 一个这样的乘法需要2 5 6 1 6 b i t 的存储空间,实现2 2 4 个这样的乘法需要l1 2 k b 的存储空间,这对当时的f p g a 来说是太大了。但如果将这个8 b i t 8 b i t 的乘法 分解为两个8 b i t + 4 b i t 的乘法,一个加法,则可以使用小的多的查找表实现,同 时多出来的加法可以并入到节点问的加法操作中,并不会显著的增加运算的复杂 度。 第2 3 页共7 l 页 吐订“雌撕一蚺时啪川眦 中国科学技术大学硕士学位论文 神经罔络实时计算关键技术研究 设输入变量为s ,权重为a ,则s a = 1 6 u + a + l a ,其中u 代表s 的高4 位,l 代表s 的低4 位。因为a 为有符号数,因此两个部分积都是有符 号数。如果在下半部分的积上加上2 0 4 8 ,上半部分的积上减去1 2 8 ,则可以在得 到正确运算结果的同时。保证下半部分的积一直为正数,这样两部分结果相加时 下半部分的积不再需要符号扩展,可以进一步减小逻辑开销。因此我们实际上实 现的乘法运算是:s + a = 1 6 ( u + a 1 2 8 ) + ( l + a + 2 0 4 8 ) ,实现的框图如下 所示: 图3 2g a n g l i o n 乘法实现框图 可以看到( u a 1 2 8 ) 和( l + a + 2 0 4 8 ) 运算是使用4 b i t 输入,1 2 b i t 输出的查 找表并行实现的。下半部分积的低4 位作为最终1 6 位结果的低4 位输出,高8 位同上半部分积的低8 位相加,结果作为1 6 位结果的中间8 位输出,进位同上 半部分积的高4 位相加得到最终结果的最高4 位。采用这种方式可以进一步的减 小加法器的长度,提高运算速度减小资源消耗。 对于4 b i t 输入,1 2 b i t 输出的查找表而言,每个b i t 的结果对应一个4 输入变 量的独立的函数,这种运算很方便在x c 3 0 0 0 系列的f p g a 内部实现。该系列 f p g a 的每个基本单元c l b 可以编程实现2 个4 输入的函数。同时每个c l b 有两个独立的d 触发器,因此每个c l b 可以得到2 b i t 的结果。一个( l - a + 2 0 4 8 ) ( 或( u a 一1 2 8 ) ) 的运算仅需要6 个c l b 就可以实现。 3 1 3 加法运算的实现 每个节点进行的另一种关键运算是求和所有输入与权重相乘的结果,并与 1 6 b 的偏置相加,得到2 0 b 的输出。实现加法器最大的困难是进位延迟问题,使 用提前进位技术虽然可以很好的解决这个问题,但会消耗额外的资源,x c 3 0 0 0 第2 4 页共7 l 页 中国科学技术大学硕士学位论文 神经网络实时计算关键技术研究 中也没有实现其他先进进位技术来解决这个问题。 因为前边已经将8 b i t + 8 b i t 乘法分解为两个4 b i t + 8 b i t 的查找表操作,因此 每个隐藏层节点需要对2 4 个积进行求和,再加上一个偏置;每个输出层节点需 要求对2 8 个积进行求和,再加上一个偏置。因为每个节点都需要进行大量的加 法才能得到最终的结果,加法器的进位延迟问题在g a n g l i o n 中就显得格外严 重。c o xc e 和e b l a n z 采用两种技术成功地解决了大量加法运算的进位延迟问 题,同时没有显著增加硬件资源消耗:进位保持加法器和3 进2 加法器。 在进位保持加法器中,使用流水线寄存器寄存每b i t 半加器的进位输出,这 种技术在使用x c 3 0 0 0 系列f p g a 实现时是不增加系统开销的。因为x c 3 0 0 0 的 每个c l b 中都有2 个d 触发器,而这两个d 触发器是不能被其他c l b 使用的。 因此半加器可以使用c l b 中的组合逻辑资源来实现,进位寄存器则可以使用 c l b 中的d 触发器实现。 3 进2 加法器实际上是进位保持加法器的一种变形,3 个加数送入进位保持 加法器,可以得到个加法结果和一个寄存的进位结果。将这两个结果看作下一 级3 进2 加法器的输入。使用多个这种3 进2 进位保持加法器的级联,则加数不 断减少,最后一级只需要一个全加器便可以得到最终的结果。g a n g l i o n 中使 用的基本加法器树框图如下所示; n o 图3 - 3g a n g l i o n 的加法器树 g a n g l i o n 中的加法器树是进位保持加法器和3 进2 加法器的混合电路:6 个加数送入两个3 进2 加法器,各得到2 个输出。将这些输出再送入接下来的两 个的进位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026上海市光华中西医结合医院第二批公开招聘1名事业单位卫生专业技术人员笔试模拟试题及答案解析
- 2026年渭南市临渭区基础设施建设投资开发有限责任公司招聘(12人)考试模拟试题及答案解析
- 2026江西赣州龙南市第三人民医院招聘工作人员4人考试模拟试题及答案解析
- 2026四季度重庆融合文化旅游发展有限公司传媒分公司招聘4人考试模拟试题及答案解析
- 2026年湖南黄金洞矿业有限责任公司操作岗位招聘115人考试模拟试题及答案解析
- 2026年芜湖市环境卫生管理处招聘生活垃圾处置企业驻厂监督员笔试备考题库及答案解析
- 店内创意营销方案(3篇)
- 开平宵夜活动策划方案书(3篇)
- 洗衣液充值营销方案(3篇)
- 仿生鱼科技营销方案(3篇)
- 高标准农田项目管理制度
- 企业商业秘密保护技术应用调研报告
- 物业服务满意度调研问卷设计
- 汽轮机运行值班员技能鉴定理论考试题库(浓缩400题)
- 2025-2026月考试卷八年级数学第一次月考卷(江苏无锡专用苏科版)(考试版A4)
- 《物业设备设施管理(第2版)》-第二章
- 儿童焦虑量表(RCMAS)
- 2026年4月自考13215Java语言程序设计试题试题及答案
- 2026年发布《中国尖锐湿疣临床诊疗指南》解读
- 律师事务所内部培训制度
- 2026年事业单位招聘公文处理与档案管理试题冲刺卷
评论
0/150
提交评论