FPGA在人工神经网络系统中的实现在人工神经网络系统中的实现
神经网络是:思维学普遍认为,人类大脑的思维分为抽象(逻辑)思维、形象(直观)思维和灵感(顿悟)思
维三种基本方式。逻辑性的思维是指根据逻辑规则进行推理的过程;它先将信息化成概念,并用符号表示,然
后,根据符号运算按串行模式进行逻辑推理;这一过程可以写成串行的指令,让计算机执行。然而,直观性的
思维是将分布式存储的信息综合起来,结果是忽然间产生想法或解决问题的办法。这种思维方式的根本之点在
于以下两点:1.信息是通过神经元上的兴奋模式分布储在网络上;2.信息处理是通过神经元之间同时相互作用的
动态过程来完成的。标准的神经网络VLSI的实现方式是在单个芯片上集成多个神经元和突触单元,并且将它们
按某种通信结构
神经网络是:思维学普遍认为,人类大脑的思维分为抽象(逻辑)思维、形象(直观)思维和灵感(顿悟)思维三种基本
方式。逻辑性的思维是指根据逻辑规则进行推理的过程;它先将信息化成概念,并用符号表示,然后,根据符号运算按串行模
式进行逻辑推理;这一过程可以写成串行的指令,让计算机执行。然而,直观性的思维是将分布式存储的信息综合起来,结果
是忽然间产生想法或解决问题的办法。这种思维方式的根本之点在于以下两点:1.信息是通过神经元上的兴奋模式分布储在网
络上;2.信息处理是通过神经元之间同时相互作用的动态过程来完成的。标准的神经网络VLSI的实现方式是在单个芯片上集成
多个神经元和突触单元,并且将它们按某种通信结构组成神经网络 系统,此外,还有基于ASIC结构的,针对神经网络运算特
点进行优化和简化设计的FPGA
实现方式,以及基于商业处理器(如数字信号处理、RISC单片处理等)的模拟神经网络的多处理器结构的实现方式。
衡量一个神经网络性能的重要指标是快速性和适用性,而FPGA的集成度已经达到百万门级,用FPGA构造神经网络时,
可以灵活地实现各种运算功能和学习规 则,并且设计周期短、系统速度快、可靠性高、输入输出接口灵活、几乎可以和任何
形式的并行、串行接口及并行、串行A/D或D/A,DSP等连接,同时由于 可以将整个系统都集成在单个芯片内,因而抗干扰性能
极强,使其在自动控制、故障诊断、模式识别,图像获取、DSP应用、嵌人式系统等领域有着广泛的应用前 景。所
以,FPGA无疑是首选的实现神经网络的硬件芯片。
1 BP神经网络的基本原理神经网络的基本原理
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练
的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前
揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的
误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)。当有信息输
入网络时,该信息首先由输入层传至隐含层节点,经特性函数作用后,再传至输出层输出,其间每经过一层 都要由相应的特
性函数进行变换。节点的特性函数要求是可微的,通常选用S型函数,特性函数通常取Sigmoid函数,本系统选用Sigmoid函
数,即 和 作为特性函数,具有较好的收敛性,模拟结论也比较符合实际情况。
2 BP学习算法描述学习算法描述
BP网络中每个节点都有一个状态变量xi,节点i到节点j有一个连接权系数wji,每个节点都有一个阈值θj,每一个节点定义一个
变换函数fj[xi,wji,θj(i≠j)],最常见的形式为
为了方便起见,将阈值θ作为神经元权值的第一个分量加到权值中去,那么输入向量就应增加一项,可设输入向量的第1个
分量固定为l,这样 的形式就可变为 。
一个3层单输入、单输出、n个隐节点的BP网络结构如图l所示。
图1中,黑圆表示输入为固定值1的神经元,用它与隐层神经元的连接权w011~w01n来表示隐层神经元的阈值,它与输出层
评论0