返回首页
当前位置: 主页 > 网络编程 > 其他实例教程 >

基于神经网络ZISC的模式识别系统

时间:2011-05-19 22:10来源:知行网www.zhixing123.cn 编辑:麦田守望者
摘要:首先介绍人工神经网络ANN实现技术的历史、现状和发展,着重分析RBF网络的原理及其建立在超大规模集成电路基础上的硬件神经网络的设计方法。然后,介绍一种新的硬件神经网络技术ZISC的工作原理和应用。最后,以ZISC036芯片为例,实现一个模式识别系统
关键词:人工神经网络 ZISC 超大规模集成电路 径向基函数 模式识别
引言
当前对人工神经网络ANN(Artificial Neutron Network)的研究热潮源自Hopfield J.[1]和McclellandJ.等人于20世纪80年代发表的论文[2],[3]。Hopfield提出了激活函数为非线性的反馈网络,并将其成功地运用于组合优化问题;Mcclelland和Rumelhart用多层前馈网的反向传播学习算法(Back Propagation)成功地解决了感知器不能解决的"异或"问题及其它的识别问题。他们的突破打消了此前人们由于简单线性神经网络感知功能的有限而产生的,使ANN成为了新的研究热点。之后,新的网络结构和新的学习算法层出不穷,目前常见的都已达到几十种。在这些神经网络中,径向基函数RBF(Radial Basic Fuction)网络由于具有强大的矢量分类功能和快速的计算能力,在非线性函数逼近等方面,特别是模式识别领域,获得了广泛的应用,从而成为当前神经网络研究中的一个热点[4]。
模式识别是人工智能经常遇到的问题之一。其主要的应用领域包括手写字符识别、自然语言理解、语音信号识别、生物测量以及图像识别等领域。这些领域的共同特点都是通过对对象进行特征矢量抽取,再按事先由学习样本建立的有代表性的识别字典,把特征矢量分别与字典中的标准矢量匹配,根据不同的距离来完成对象的分类。以识别手写数字为例,字典中有由学习样本建立的10个标准矢量(代表0~0),把从识别对象中抽取的特征矢量分别与这10个标准矢量匹配,矢量间距离最短的就说明别对象与这个标准矢量的分类最接近,进而识别出其表示的数字。
模式识别过程中,产生一个具有代表性的、稳定且有效的特征矢量分类匹配策略,是补偿变形、提高识别率的有效途径,如何确定分类器是识别系统成功的关键。可以说,模式识别的本质就是分类,就是把特片空间中一个特定的点(特征矢量)映射到一个适当的模式类别中。传统的模式识别分类都是基于串行处理的匹配策略:首先由学习样本建立识别基元(字、词、音、像素)的标准矢量识别字典,取取的特征矢量顺序与字典中的标准矢量计算区别得分;最后根据概率做出决策,输出识别结果。当模式类别很大时,识别速度会下降得很快,而近年来,用RBF网络解决这方面的问题得到了很好的效果。
理论模型要求发展神经网络型计算机来实现,但迄今 为止,这方面的工作限于条件还主要集中在传统计算机的软件模拟实现上。大多数学者认为,要使人工神经网络更快、更有效地解决更大规模的总是,关键在于其超大规模集成电路(V LSI)硬件的实现,即把神经元和连接制作在一块芯片上(多为CMOS)构成ANN。正是因为上述的原因,其中神经网络的VLSI设计方法近年来发展很快,硬件实现已成为ANN的一个重要分支[5],[6]。
以下介绍IBM的专利硬件RBF神经网络芯片技术ZISC(Zero Instruction Set Computer),并给出用ZISC设计和实现的一种模式识别系统。
1 VLSI设计硬件神经网络的方法
神经网络的IC实现是比较困难的,设计者必须把神经系统模型的特性反映到受半导体工艺和IC设计规则制约的电路中去。用VLSI设计硬件神经网络的方法主要分为数字技术、模拟技术和数模混合技术等,下面分别作简要介绍。
1)用模拟技术实现硬件神经网络
模拟神经芯片通过单元器件的物理性质来进行计算,因而可以获得很高的速度。神经元的核函数计算功能一般由乘法器或运算放大器来完成,而连接权值大多以电压形式存储在电容上或是以电荷形式存储在浮点门上。利用模拟神经芯片不仅可以制造多层前向感知器那样的传统结构,还能从形态上进行如硅视网膜这样的生物仿真设计,从而更有效地模拟生物学功能。
在解决实时感知类的问题中,模拟神经芯片扮演着主要的角色。因为这些问题不要求精确的数学计算,而主要是对大量的信息流进行集合和并行处理,这方面低精度的模拟技术从硅片面积、速度和功耗来看具有相当大的优势。但是模拟芯片的抗干扰性差,设计中需要考虑对环境因素变化引起的误差进行补偿,非常麻烦;它的另一个缺点是,制造一个突触必须考虑权值存储的复杂性,同时要求放大器在很宽的范围内呈现线性[5],[6]。
2)用数字技术实现硬件神经网络
用高低电平来表示不同状态的数字电路是信息工业中最常用的技术。数字神经芯片有非常成熟的生产工艺,它的权值一般存储在RAM或EPROM等数字存储器中,由乘法器和加法器实现神经元并行计算。对设计者来说,数字神经芯片可以以很高的计算精度(达到32位或者更高)实现神经元核函数。另外,用数字技术实现神经网络时,通常可以采用标准单元库或可编程门阵列直接进行电路设计,这样可以大大减少设计时间[5],[6]。
数字神经芯片不仅具有容错性好、易于硬件实现及高精度、高速度的优点。更重要的是有很多数字电路CAD的软件可以作为设计工具使用。但要实现乘/加运算,需要大量的运算单元和存储单元。因而对芯睡面积和功耗要求很高。为了适应大面积的数字电路的要求,现在很多数字神经芯片都采用了硅片集成技术(Wafer-Scale Integration)。
3)用数模混合技术实现硬件神经网络
出于上述种种考虑,许多研究人员提出并采用了各种数模混合神经芯片,具有数字及模拟工艺各息的优点而避免各自的缺点,运算速率高,芯片面积小,抗噪声能力强且易于设计。典型的数模混合信号处理部分则全是模拟的。这种结构很容易与其它的数字系统接口以完成模块化设计。近年来在各种数模混合神经芯片设计中,利用脉冲技术的数模混合神经芯片和利用光互连技术的光电混合神经网络芯片得到了广泛的关系,它们代表神经网络未来发展的方向。
尽管数模混合神经芯片有种种优点,但它也存在着一些不足。比如,对于大多数数模混合神经芯片来说,训练学习算法的实现往往需要一个附加的协处理器,这无疑会增加整个神经网络系统的成本和复杂性[5],[6]。
2 RBF网络原理和它的硬件实现
RBF网络是一种有导师的三层前馈网络。它最重要的特点是中间隐层神经元的基函数只对输入剩激起局部反应,即只有当输入落在输入空间的 一个局部区域时,基函数才产生一个重要的非零响应;而在其它情况下基函数输出很小(可近似为零)。网络结构如图1所示。

    图1(a)描述了隐层神经元的作用,其中X=(x1,x2,…,Xn)是输入层的输入矢量;C=(w1,w2,…,Wn)是该隐层神经元的中心矢量(每个隐层神经元的中心徉量存储在其与输入各种神经元之间的连接权中),
σ代表宽度(半径);而|| ||表示n维空间中矢量之间的距离(这里的距离不一定是数学意义上的欧几里得距离,在不同的情况下可以有种种含义);f是隐层神经元的基函数,目前用得比较多的是高斯分布函数。
RBF网络每个输出层结点的输出为其与各隐层神经元输出y的加权求和。按高斯分布函数的定义,隐层神经元的输出y与输入矢量x的函数关系应服从正态分布,即当X与中心矢量C的距离很矢时,y接近最大值;反之y值减小。如X与C的距离超过宽度σ(即远离中心)时,输出y可近似为零,相当于对输出层没有贡献。这就实现了局部感知。
不难看出,RBF网络用作矢量分类器时,输入层神经元个数由矢量空间的维数决定,隐层神经元个数由模拟类别数决定,每个隐层神经元的中心矢量(与输入层各神经元之间的连接权)都代表一种模式类别。输入矢量与哪个隐层神经元的中心矢量距离近,哪个隐层神经元的基函数输出就大,相应的模式类别对输出层的贡献就大;与哪个隐层神经元的中心矢量距离远,哪个隐层神经元的基函数输出就小,甚至不激活,输出0,相应的模式类别当然就不会影响RBF网络的输出,矢量和模式类别的分类由此完成。
相对于网络结构的简单,RBF网络权值的训练方法要复杂一些。通常分为下面的两个步骤。
①隐层和输入层之间的权值采用无教师聚类方法训练,最常用的是KNN法(K-Nearest-Neighbor)。它的基本思想是先设定训练样本的一个子集;再用模式分类算法LBG由这个子集形成N种类的模式,即把子集中的样本归类;然后,按顺序处理子集外的训练样本:对任一样本X,找出K个与X距离最近的矢量(随便找,只要近就行),计算这K个矢量分别属于N个模式种类的数目,哪个模式种类包含的最近矢量最多,X就属于哪个模式种类。
将输入的训练样本聚类后,每个模式种类中所有样本矢量的平均值就代表该隐层神经元和输入层之间的权值(中心矢量);而所有样本矢量与中心矢量的平方差的平均值就代表宽度σ。这样就做出了各个隐层神经元的全部参数。因为这种方法只要求输入训练样本就可以进行分类,无须知道训练样本的理想输出,因此被称为无教师方法。
②输出层和隐层之间的权值采用有教师聚类方法训练。简便实用的一种办法是:在确定隐层和输入层之间的权值之后,把训练样本矢量和其理想输出代入RBF网络,从而推出各个输出层神经元和隐层之间的权值。

    可以看出,需要分类的模式类别数的增加总可以通过不断增加三层RBF网络隐层神经元数来实现,含义十分直观。由于其学习过程为两步,且每一步的学习算法都十分有效,所以它的学习速度很快。RBF网络主要适用于解决已知的大规模分类问题,比如图像目标跟踪、面部和双眼的生物图像识别等。
------分隔线----------------------------
标签(Tag):人工智能 神经网络 人机交互技术
------分隔线----------------------------
推荐内容
猜你感兴趣