下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于DSP的BP神经网络实时实现 基金项目:福建省教育厅科技项目(基于数字信号处理器的人工神经网络算法实时实现的研究,JA05329) 作者简介:陈丽安(1966-),女,福建省龙岩市人,副教授,博士。本科及硕士毕业于西安交通大学,博士毕业于福州大学,主要研究方向为智能电器。陈丽安(厦门理工学院电子工程系,福建 厦门 361005)摘要 本文研究了基于数字信号处理器(DSP)的BP神经网络算法实时实现的技术。内容主要包括BP神经网络训练的MATLAB仿真计算、基于TI TMS320F2812 DSP的BP神经网络实时实现的硬件系统以及软件设计关键性技术等。实验结果证实了BP神经网络算法在DSP
2、硬件上实现的可行性及实时性。关键词:神经网络;数字信号处理器(DSP);实时实现中图分类号 TP332, O24文献标识码 A文章编号Real-time Implementation of BP ANN Based on DSPCHEN Li-an(Electronic Engineering Department, Xiamen University of Technology, Xiamen 361005, P.R.China)Abstract:A novel technology of the real-time implementation of Back Propagation(BP
3、) Artificial Neural Network(ANN) based on Digital Signal Processor(DSP) is proposed in this paper. The research mainly includes as follows: MATLAB simulation of the BP ANN training, the key technique of the hardware system and software design of the real-time implementation of BP ANN based on TI TMS
4、320F2812 DSP. The validity and the real-time implementation of the proposed scheme have been successfully demonstrated by the experiments.Key words:ANN (Artificial Neural Network), Digital Signal Processor (DSP), Real-time implementation1. 引言人工神经网络具有高度非线性映射、自组织结构、高度并行处理方式及无需预先建模等优点,使之在处理非线性系统模型方面具备明
5、显优势,已广泛应用于模式识别、系统辨识、故障检测等领域1-3。神经网络算法从一出现开始,便掀起了一股股研究热潮,可以说它的理论研究已相当成熟,但到目前为止,从国内到国外,它却较少能够成功地应用于工程实际中。究其原因,主要有两方面因素:神经网络算法的运算量较大,尤其是当神经网络的层数及各层神经元个数较多时,用软件编程方法在通用型的基于冯·诺依曼结构的处理器上实现是很难满足工程的实时性要求的;虽然目前各大芯片生产厂商正积极研制各种专用的神经网络芯片,这些专用芯片比用软件方法在一般的处理器上实现速度快得多,但专用芯片价格较高,且研制尚处于起步阶段,距实际应用还有一定的距离。随着微电子技术的
6、发展,出现了非冯·诺依曼结构微处理器,给人工智能信息处理技术带来了新的生机和活力,DSP是其中的代表产品。DSP是一种功能强大的微处理器,与通用型微处理器不同,它放弃了冯·诺依曼结构,而采用哈佛结构,即将程序指令与数据的存储空间分开,各有自己的数据与地址总线,使得处理数据和指令可以同时进行,大大提高了运行速度,在那些因受传统微处理器速度和结构限制而难以实现复杂算法及难以达到要求速度的场合,可由DSP实现。本文便研究了基于DSP的BP神经网络实时实现的技术。2. BP神经网络2.2神经网络模型 神经网络是由多个神经元组成,而神经元是多输入单输出的基本信息处理单元,其模型的输入
7、输出关系为:,其中称为阈值,称为权值,称为激活函数。常用的激活函数有线性、符号、饱和、双曲正切、阶跃、sigmoid等六种类型。神经网络的拓扑结构及连接形式种类很多,主要有前馈型网络和反馈型网络。BP(Back Propagation)网络是一种多层前馈神经网络,其神经元的激活函数是S型函数。因此输出量为0到1之间的连续量,它可以实现从输入到输出的任意的非线性映射,由于权值的调整采用反向传播的学习算法,因此称BP网络。在确定了BP网络结构之后,利用输入输出样本集对其进行训练,也即对网络的权值和阈值进行学习和调整,以使网络实现给定的输入输出的映射关系。2.2神经网络的应用以故障检测为例,具体应用
8、神经网络时可分三步:第一步:数据预处理。对传感器(如CT、PT)采样得来的数据进行预处理。第二步:神经网络训练。确定适当的神经网络结构及规模(隐含层的数目及各层的神经元个数),采用一定的学习算法,将预处理后的数据作为神经网络的输入,以故障的状态编码为期望输出,构成输入/输出样本对,对神经网络进行训练,当学习收敛后记录神经网络的权值和阈值;第三步:神经网络计算(故障检测)。使训练好的神经网络处于回想状态,对于一个给定的经过预处理后的输入,便产生一个相应的输出,由输出与故障编码进行比较即可确定故障发生与否。以上三步中,第二步是离线进行的,第一、第三步是在线进行的。由于神经网络的训练往往需花费较长时
9、间,而一旦网络的权值及阈值确定下来以后,求解一个网络还是很快的。因此,当处理器的速度够快时,第一、第三步的实时实现是可以做到的。图1BP神经网络结构图图1为本文所选四层BP神经网络结构图。其中为权重矩阵;为阈值矩阵;为激活函数,其中为tansig型函数,为purelin型函数;为每层神经网络输入,为每层神经网络输出。由此可见,对多层神经网络,上一层的输出为下一层的输入。,为1或0,分别表示故障或正常状态。利用样本数据训练该神经网络,便可确定权重矩阵及阈值矩阵。当神经网络经离线训练好后(如用MATLAB计算),神经网络各层的权重、阈值便确定下来。在线在DSP上可进行计算,实现故障检测。由神经网络
10、的输入矢量input求解输出矢量output的步骤如下:,其中: ;。DSP因其高速的运算能力而使神经网络算法作为实时检测诊断手段成为可能,但在确定神经网络的结构及规模时,必须考虑在DSP中实现的实时性要求,即隐含层的数目及各层神经元个数的选择要适当。2.3神经网络训练的MATLAB计算多层前向网络的学习算法有多种,在研究中使用了MATLAB的人工神经网络工具箱。MATLAB人工神经网络工具箱提供了多种算法,包括传统的BP学习算法、BP惯量算法(动量BP算法)、动量学习率调整算法、以及建立在优化方法基础上的Levenberg-Marquardt算法(最小二乘优化算法)等。实践证明,在用BP算法
11、处理离线问题时,动量学习率调整算法是一种较好的算法,该算法采用了动量法和学习率自调整两种策略,通过动量学习算法,降低了网络对于局部误差细节的敏感性,有效地抑制了迭代计算过程中陷于局部极小点的问题;而通过自适应调整学习率,可以缩短学习时间。MATLAB人工神经网络工具箱中的函数trainbp、trainbpx、trainlm可用来训练BP神经网络,其中函数trainlm使用了Levenberg-Marquardt优化方法,该算法经过测试比较可靠、稳定,且学习速度较快。本文程序采用trainlm训练函数。3基于DSP的BP神经网络实时实现硬件系统DSP芯片是一种具有特殊结构的适合进行数字信号处理运
12、算的微处理器。为了实时快速地实现各种数字信号处理算法,DSP芯片一般采用特殊的软硬件资源,如具有程序和数据分开的总线结构、流水线操作功能、单周期完成乘法运算的乘法器及一套适合数字信号处理的指令集等。DSP芯片的这些特点再加上集成电路的优化设计,使得它能够实现实时数据的采集与处理。高速DSP芯片已被认为是模拟神经特性的理想工具,并可直接用在将来的神经网络计算机系统中,本文所研究的神经网络实时实现算法以F2812 DSP 为核心,配以少量外围器件。3.1F2812 DSP芯片简介F2812芯片的主要功能特性如下4:主频:150MHz;片内存储器:128K×16位 FLASH、18K
13、15;16位SRAM、4K×16位ROM;外部存储空间接口:最多可扩展1M×16位外部存储空间;A/D转换器:采样率12.5 MSPS、12位、16通道、双采样/保持、2×8多路切换器;56个独立可编程、复用型、通用I/O口;多种标准串口外设:1个SPI同步串口、2个UART异步串口(SCI)、1个增强型CAN总线接口、1个McBSP同步串口。3.2硬件系统由于DSP芯片不仅运算功能强大,并且片内集成了丰富的外围设备,因此仅需添加少量外围器件便可实现所需功能,由此提高了系统的可靠性,且降低成本。实验结果证明,该硬件系统能够满足基于DSP的神经网络算法实时
14、实现的功能要求。4. 基于DSP的BP神经网络算法实现4.1神经网络算法软件设计关键性技术本文利用MATLAB神经网络工具箱对神经网络进行离线训练,将训练好了的神经网络参数,包括输入层及隐含层的权重值wi及阈值bi(在MATLAB中由net.b、net.IW、net.LW获得)存入DSP,并在线进行故障检测。应用神经网络(如用神经网络算法对故障进行检测),实质是将信号输入给一个已知结构的神经网络,对该神经网络进行求解。求解主要是乘加运算(w*input+b),这种运算是DSP最擅长的。另外,当激活传递函数选为非线性的双曲正切S型函数时,这对定点DSP是个考验。虽然TMS320F2812具有独特
15、的虚拟数学函数库,但目前库中仅有三角函数等,没有双曲正切函数,或双曲正切函数所需的指数函数。当然可用泰勒级数编程求解,但为了确保实时性,本文采用查表的方法求解该非线性函数值,即采用以空间换时间的策略。由双曲正切函数表达式及曲线可知,当自变量时,双曲正切函数值为,十分接近(仅相差0.49%),因此对双曲正切函数的求解可近似地分三段进行:这样在列表时仅需列出部分,可在保证精度的前提下节省DSP存储空间。4.2实验结果用C语言编写TMS320F2812 DSP程序以实现神经网络算法。本文采用带两层隐含层的前馈神经网络,采用反向传播BP的方法进行训练。输入层含有5个节点,中间两隐含层各带有5个及10个
16、节点,输出为单输出,即神经网络的结构为四层网络,输入层、两隐含层及输出层神经元个数分别为:5、5、10、1。本文采用双曲正切S型函数作为两隐含层的激活函数,而输出层则采用线性激活函数。经过编译后汇编代码长度、计算一个采样点所需指令周期数及DSP 的CPU运行时间等指标如表1所示。表1 用DSP求解神经网络实时性指标(CPU工作频率为150MHz)优化否编译后汇编代码长度指令周期数CPU运行时间(us)优化前337517934.53优化后14013488.99由表1,对结构为5×5×10×1神经网络,用TMS320F2812 DSP求解,经优化后仅需1348个指令周
17、期便可完成一个采样点的神经网络值的计算,若DSP的工作频率选为150MHz,则约需8.99us便可完成一个采样点的计算,满足大多数实际应用场合(如故障检测)的实时性的要求。5结论本文通过实例介绍了基于数字信号处理器的BP神经网络实时实现的技术,通过实验验证了BP神经网络在TI TMS320F2812 DSP上实时实现的可行性及有效性,说明基于DSP的BP神经网络实时实现在故障检测等实际应用领域具有广阔的前景。参考文献1 Zhiqiang Liu, O.P.MalikNeural Network-Based Faulty Line identification in Power Distribu
18、tion SystemsElectric Machines and Power Systems,Vol.27,No.12,Dec.1999:134313542 J.Pihler, B.Grear, and D.DolinarImproved Operation of Power Transformer Protection Using ANNIEEE Trans. on Power Delivery,Vol.12,No.3,1997:11283 Chen Lian, Zhang Peiming. Improved Operation of Motor Protection Using Artificial Neural Network. P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026 水利岗事业单位面试易错题型分析 含答案
- 2026 年人教版初中化学九年级上册单元基础测试卷
- 安全生产演讲范文讲解
- 2026下半年初中历史教资面试世界古代史题库
- 2026年中国联通陕西省分公司人员招聘考试参考试题及答案详解
- 2026年内蒙古电力集团有限责任公司人员招聘笔试参考试题及答案详解
- 2025年内部审计职业技能等级考试综合试题及答案
- 2026年中国石油技术开发公司人员招聘参考题库及答案详解
- 毒蛇咬伤诊疗专家共识(2026版)
- 甲状腺结节诊疗专家共识(2026版)
- 安利营销人员守则违规处分等级制度
- 生产经营单位安全生产事故应急救援预案
- GB/T 46164-2025金属和合金的腐蚀增材制造钛合金电化学临界局部腐蚀温度(E-CLCT)的测量
- 测绘地理信息安全保密管理制度
- 核反应堆核级机械设备检修工职业技能鉴定经典试题含答案
- 遗体火化师职业技能模拟试卷含答案
- 智慧健康养老智能产品应用
- 艾可慕(ICOM)IC-R5(R6)中文使用说明书
- 口腔科诊疗中晕厥的预防与处置
- 宫颈癌考试题及答案
- JJF1033-2023计量标准考核规范
评论
0/150
提交评论