版权归原作者所有,如有侵权,请联系我们

[科普中国]-神经网络硬件

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

发展背景

神经网络的硬件实现可追溯到60年代,当时有几家公司和研究机构试图用硬件来实现神经元,最为著名的便是感知机和ADALINE神经网络模型的实现。当时Comell Aeronautical实验室(现在名为CALSPAN Corporation)的Rosenblatt从理论上和实现上描述了感知机。ADALINE神经网络模型则是由斯坦福人学的Widrow提出的。感知机和ADALINE均为单个神经元模型,它们均能接受多路输入,并能自适应地修改与这些输入相对应的突触强度(互连权值),然而它们在实现上有所不同。在感知机中,其突触强度通过一种电子机械的方法来改变(通过一个电动马达的转动来改变突触强度),这种实现有许多缺点,如体积大,价格高,运行不可靠等。Widrow的ADALINE实现中则用电阻的方法来表示突触强度。

1965年至1980年,除Adaptronics Corp(现为Divisionof Flow General Crop)之外,其它一些研究实体在神经网络实现上没有做更多的工作。Adaptronics的LouisGilstrap和Roger Barton在1974年开发了第一块神经元芯片。这种很一般的芯片上只包含一个神经元,具有多个输入端且其互连强度可以自适应的改变。要构造具有多个神经元的网络,只需将许多这种芯片在插件板上排列并互连起来就可以了。将许多这种插件板构建在一起便可满足神经网络在商业和军事上的许多应用目的。1982年美国的物理学家Hopfield发表论文,提出神经网络的一种数学模型,即Hopfield神经网络模型,并研究了它的动力学性质。两年以后,他设计出了电子线路模拟这种网络的性质,认为这种网络可以解决数学上著名的TSP问题(Traveling Salesman Problem)。次年,美国加州理工学院和贝尔实验室合作研制成256个神经元(在四分之一平方英寸芯片上,由2.5*10^4个晶体管和1.0"10^5个电阻集成)和64个可编程神经元。

研究意义在进行神经网络的研究中,要使神经网络在实际中能进行有效的应用,或是支持更好的神经网络研究,神经网络实现技术必须能够支持大规模的神经网络模型的神经计算,同时要能尽可能地缩短神经计算的时间j达到实时的水平。但是现有的各种神经网络软件模拟环境所能支持模拟神经网络模型的规模及神经计算速度都还远远达不到研究和应用所需要的水平。因此,开展大规模的硬件实现的神经网络计算机的研制势在必行。

神经网络硬件实现及研究内容神经网络的实现技术可以分为硬件实现和虚拟实现两个方面。所谓硬件实现是指物理上的处理单元及处理单元之间通讯与一个具体问题的神经网络模型中的神经元及连结一一对应,每一神经元及每一连接都有与之对应的物理器件。全硬件实现的最大优点是处理速度快,且易于满足实时性要求,但是缺乏通用性、灵活性和可编程性。硬件实现研究的核心是神经器件的构造。当前国际上该项目研究的主要内容有:

1)电子神经芯片的研究;

2)光学神经芯片的研究;

3)分子/生物神经芯片的研究;

硬件实现方法当前神经网络的应用实现方法主要还停留在用现有的Von.Neumann体系计算机模拟实现神经网络。这种做法的明显缺点就是,现有的计算体系不适合神经网络的结构特点。在某些实时控制的应用场合,这样的系统无论从体积还是速度方面都无法满足实用的需要。因此,在这种应用场合下,用新的硬件技术直接实现神经网络的要求就更加迫切了。

神经网络的硬件实现方法可分为以下几种:

1.超大规模集成电路(VLSI,Very Large Scale Integrated Circuit)处理器:又可分为模拟VLSI实现、数字VLSI实现、模/数混合VLSI实现和光电实现;

2.光处理器:分为纯光学处理器和光电混合处理器;

3.分子处理器:有磁性材料处理器和生物材料处理器;

4.量子处理器。

主要实现硬件研究人员提出了多种神经网络专用硬件实现的方法和技术,包括FPGA实现、神经芯片以及DSP加速板等.1

FPGAFPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

简单地说,FPGA是一个具有大量通用逻辑单元的器件,而且这些逻辑单元之间有通用的连接。通过把程序下载到FPGA芯片里,这些逻辑单元之间的连接方式被相应改变,从而使FPGA实现相应的功能。基于FPGA的可重新配置的计算结构非常适合于实现神经网络,具有非常多的优点。

超大规模集成电路VLSI近年来,随着工艺的进步,数字VLSI成为了神经网络硬件实现的主要方法.其突出优点在于器件性能稳定、数据存储方便、设计工具丰富、开发周期较短等.尽管有诸多优点,神经网络数字VLSI的实现仍面临着硬件灵活性较差的问题.因为神经网络是与应用密切相关的,不同应用对象(例如不同的控制对象)所采用的神经网络在规模结构、传递函数甚至学习算法上都有所差别,而硬件设计一旦确定,其更改变化将比较困难。

神经芯片从1993年起就有一类神经型态芯片可供使用了。1993年一个小独立团队带着一个想法来到了IBM,这个团队想研发一款神经网络芯片,他们把它称为ZISC(零指令型计算机),这款芯片成为世界上第一个商用神经型态芯片。

神经芯片是一个带有多个处理器、读写/只读存储器(RAM和ROM)以及通信和I/O接口的单芯片系统。只读存储器包含一个操作系统、LonTalk协议和I/O功能库。芯片有用于配置数据和应用程序编程的非易失性存储器,并且两者都可以通过网络下载。2