线上期刊服务咨询,发表咨询:400-808-1701 订阅咨询:400-808-1721

神经网络设计8篇

时间:2023-03-01 16:26:58

神经网络设计

神经网络设计篇1

关键词:人工神经网络;尖峰神经元模型

近年来,人们在计算机智能化领域上取得了很大的进步,但计算机领域还有很多问题无法解决,例如视觉、语言识别和计算机等技术,人们仍不能将计算机系统设计得像生物系统那样灵活。因此,大批研究者转移到仿生科学研究,希望由此找到新的技术,设计出新的智能计算机,其中人工神经网络是其中一个比较热门的领域。随着这个领域的发展,一些团队已经建立起一些创造性的、复杂的神经电路模型,并将其应用到一些项目中,也有研究团队在致力研究人工神经网络的软件和硬件方案,希望能够为智能计算机提供更高层次的理解能力。

人工神经网络模型的并行特性使它与传统的计算机模型相比具有更强的理能力,使它更有机会解决如手写文字识别这类问题。长期以来,大多数研究者都是在CPU上使用模拟的方式进行神经网络的计算,由于CPU工作模式和结构的限制,无法提供最佳的计算性能,因此本文寻求一种新的智能计算硬件平台,在硅芯片上设计神经网络电路。

一、神经网络模型

人工神经网络理论已发展了很多年,并日益趋于成熟,在各领域都得到了一定的应用。人工神经网络的运算主要由计算的基本单位神经元进行,通过若干个神经元构成神经网络以解决现实中的各种问题。

如图1所示,一组神经元构成一个神经网络系统。每一个神经元都有独立的计算单元。神经元计算公式如下:yi(t)=■W■?着ij(t-tij) (1)

公式(1)中yi(t)表示神经元的输出结果,i表示神经元序号,?着ij(t-tij)表示神经元输入值,W■表示每个神经元的权值。

人工神经网络的基本运算包括了乘法和加法运算。为了能够在硬件上执行神经网络的理功能,必须为每个神经元设计独立的加法器和乘法器,我们将其称为加乘法运算单元(MAC),每个神经元都包含了一个MAC单元。

为了使系统能够更好地模拟人类神经系统工作原理,发挥硬件的理能力,本文采用了Gerstner的尖峰神经元模型构建神经元理器的工作流程。在该模型中,每个神经元的膜电位在时间t时表示如下:

ui(t)=■■■W■?着ij(t-tij)+?浊i(t-tij) (2)

?着ij(t)=exp(-■)-exp(-■)*H(t-t■) (3)

公式(2)中,W■表示为第i神经元和第j神经元之间连接的权值,?着ij(t-tij)表示为神经元i能够提供给神经元j的突触后电位(PSP),而?浊i(t-tij)表示倔强函数。公式(3)表示突触后电位(PSP)的计算方法,其中t■和t■为时间常数,H(t-t■) 为Heaviside阶梯函数,t■为轴突传输延时系数。

二、神经元硬件设计

如图2所示,神经网络系统是由多个神经元构成,每个神经元是一个单独的实体,神经元既相互独立,又相互联系,神经元根据所受到外界的刺激(输入)和邻居神经元对自己的影响,做出判断与决策(输出),并影响到周围神经元的反应。为了能够实现神经网络功能,需要模拟神经元单位设计一个特殊的理器用于计算外界刺激而做出的反应,它包含了简单的算数逻辑运算单元、寄存器和控制器,在本文中使用PN表示该理器。

图3显示了一个PN理单元的工作流程图,每个PN理器包括了进行神经元计算必须的运算器和存储器以及相关附属器件。PN理单元的工作流程是:当外部有输入数据通过总线进入PN理器时先存放在输入事件存储器;系统根据事件时间将数据输入到突触后电势寄存器;同时输入值被编号后分别放入公共连接存储器;突触后电势PSP值与其他神经元的权值相乘后与原有膜电位值相加,相加结果更新膜电位存储器值;同时结果与阈值相比较,如果大于阈值则将结果输出到输出存储器中作为该神经元的输出结果存放在输出时间存储器。

系统是由若干个神经元理器构成。如图4所示,人工神经网络系统由若干个神经元共同构成,图5表示了人工神经网络的硬件构成。每一个人工神经网络都是由若干个神经元理单元构成,每个神经元理单元又是由逻辑运算器、存储器和通信单元构成。将这些神经元理器构建在一块电路板或者芯片上,同时理器与理器通过总线连接起来相互通信,共同完成神经网络的运算。系统还为每一个神经元单位配置了一个PN理器,理器之间相互独立,并行计算。当外部刺激(输入)进入系统时,立刻被分配到各个PN理器并行计算神经元对刺激的响应(输出),同时根据计算结果,调整神经元之间的权值系数,并更新存储其中的权值。由于PN理器是并行计算,相对于传统计算机模拟运算,极大地提高了神经网络的计算速度。

本文以Gerstner的尖峰神经元模型为基础,设计了模拟神经元工作的PN理单元,并由若干个PN理单元构成模拟人类神经系统的人工神经网络的硬件系统。相对于在传统计算机上的操作,PN理单元的并行性使新系统有更强的理能力,有效地提高了神经网络的计算速度,使神经网络系统有更好的应用前景。

(作者单位:广东肇庆科技职业技术学院)

参考文献:

[1]Gerstner,W. & Kistler,W.M.Spiking neuron models:single neurons,populations,plasticity. Cambridge,UK:Cambridge University Press,2002.

[2]Mazad S. Zaveri. Dan Hammerstrom1. Performance/price estimates for cortex-scale hardware: A design space exploration,2011,(24).

[3]徐明华,甘强.脉冲神经网络的振荡与分割[J].生物物理学报,1997,(1).

神经网络设计篇2

关键词:模糊神经网络;PID;控制系统;非线性

中图分类号:TP183 文献标识码:A文章编号:1007-9599 (2011) 20-0000-02

Design of Control System Based on FNN PID

Duan Zhengjun1,Zhao Ran1,Tian Wenxue2

(1.TISCO Stainless Steel Pipe company,Taiyuan030000,China;2. China Chemical Engineering Second Construction Corporation,Taiyuan030000,China)

Abstract:At present,many of intelligent algorithm apply to the non-linear control system,it is intelligent control systems,for example,neural network,fuzzy control.According to the neural networks and fuzzy control in this article,introduced design principles and implementation based on neural nerwork and PID algorithm.

Keywords:Fuzzy neural network;PID;Control System;Nonlinear

一、引言

模糊神经网络(FNN)是模糊逻辑控制和神经网络两者结合的产物。模糊逻辑控制和神经网络两者单独使用时候,都会有一定的缺陷。模糊逻辑在一定的论域上面有很好的收敛性,在进行模糊量的运算上有优势;而神经网络具有强的自学习、自适应、并行运算和精确计算的能力。因此,两者结合可以优势互补,从而很大提高综合能力。FNN-PID是将模糊神经网络融进PID算法中,实现二者结合。FNN-PID算法具有PID控制器优点、模糊控制的良好收敛性和对模糊量的运算优势,也有神经网络自学习、自适应的特性。

二、FNN系统结构

FNN具有很多种结构和算法,对于不同的控制对象,在综合考虑运算速度和精度的情况下,可以使模糊神经网络结构有所不同。本文模糊神经网络采用如图1的结构,两个输入变量是有 、 ,为误差E与误差变化量EC。输出变量为Y,为PID三要素中的一个。根据专家经验知识把每个输入因子分为(NM,NS,ZO,PS,PM)五个模糊状态记为T[ ]。

图1.模糊神经网络的结构

第一层至第三层是实现模糊控制规则,第四层去除模糊化并实现输出实际控制对象的值,每层的作用如下:

第一层为输入层,该层的节点直接与输入层相连,起着将输入向量X传送到下一层的作用,其节点个数等于输入变量个数。输入输出关系可表示为:

, i=1,2(1)

第二层为隶属函数层,其作用是计算输入量属于各语言变量值模糊集合的隶属函数值,节点个数 ,每个节点代表一个模糊集合,可表示为:

, j=1,2,3(2)

式中j―― 的模糊分割数, 、 ――高斯函数中第j个输入对第i个结点的中心和宽度。

第三层为模糊规则层,每个节点代表一条模糊规则。采用IF-THEN模糊规则,可表示为:

:If is and is and…is THEN Yis(3)

式中,1≤n≤2,1≤i≤3: (4)

第四层为输出层: (5)

三、FNN的学习算法及步骤

在学习方法上,我们选择在线学习,在线学习就是针对整个训练集的每一个输入和对应的输出要求,每学习一条规则,就进行一次连接权的调整;这样一轮一轮不断的自动的调整网络连接权,知道整个网络达到所有的要求的响应为止。学习目的是对产生样本规律的统计特性进行建模,从具体观测推测隐含的规律,输出结果与样本接近。为了提高测量的精度,要求 、 和 三个参数能够适应环境的变化,即可实时调节高斯隶属函数和连接第三、第四层的权重比。具体算法如下:

式(5)可以按下式表示:(6)

设 , , ,从而得到式(6)的简化形式为: ,由式子(6)和式子(7)得到(8)式:

(9)

(10)

定义输出误差为: (11),其中 ――k时刻的输出值, ――k时刻的输出期望值。

定义系统的性能指标为:(12)

采用反方向传播方法进行监督学习,使性能指标E值最小化。根据梯度下降方法有:

以上式子分别为(13),(14),(15)。其中 为学习速度,由于采用在线学习,那么 为一个定值。根据性能指标选取规则和专家经验知识,取终止条件为E≤0.005,具体的学习步骤如下:

步骤1: 、 、 及 的初始值在[0,1]之间随机选取, 的值为恒定值,根据经验决定。

步骤2:根据式子(11),(13),(14),(15)计算得出比较理想的 , , 值。

步骤3:根据式子(12)计算E,若E≤0.002,迭代结束。否则,令 , , 为初始值并返回步骤2。

四、PID-FNN系统的设计及实现

根据FNN结构可知,输入是误差和误差变化量,输出是PID控制参数中的一个,故我们设计PID-FNN系统时要使用3个FNN,选择这样的FNN结构是为了更加精确的得到PID所需要的修正值。当然,这里所用的FNN是已经结束学习过程的。PID-FNN控制系统的具体结构如图2所示。

PID-FNN系统具体实现过程如下:①根据FNN的学习算法,通过提供的样本对FNN-Kp、FNN-Ki和FNN-Kd进行训练,使其得到合适的权值,满足性能指标为止。②误差和误差变化量做归一化处理,作为FNN-Kp、FNN-Ki和FNN-Kd的输入。③根据式子(1)(2)(4)(5)计算FNN的各层的输出,FNN-Kp、FNN-Ki和FNN-Kd最后一层的输出就是PID控制参数Kp、Ki和Kd的修正值。④利用③中得到的修正值,对经典PID控制器所得出的Kp、Ki和Kd的值进行修正。⑤Kp、Ki和Kd的修正后的值传送给控制对象,并由图2中所示,控制结果反馈回到计算误差处进行误差计算。由此跳转到②步。

图2.FNN-PID系统结构

五、结束语

FNN融合了模糊控制和神经网络的特点,本文利用这一点设计了PID-FNN控制系统并予以实现。文章中介绍了FNN的系统结构和学习过程的算法以及步骤,然后设计了PID-FNN的系统结构,并且描述了具体的实现过程。

本文作者创新点:模糊神经网络(FNN)是模糊逻辑控制和神经网络两者结合的产物。两者结合可以优势互补,从而很大提高综合能力。从而能够更迅速、更精确的对PID参数进行修正,已达到最佳的控制状态。

参考文献:

[1]李士勇.模糊控制,神经控制和智能控制论[M].哈尔滨:哈尔滨工业大学出版社,1996

[2]曾黄麟.智能计算[M].重庆:重庆大学出版社,2004

[3]晁勤,傅成华.自动控制原理[M].重庆:重庆大学出版社,2005

[4]武嘉.辅助控制系统设计与仿真[M].北京:电子工业出版社,2005

神经网络设计篇3

关键词:BP神经网络;VHDL;模拟与仿真

一、人工神经理论基础

神经网络又被称为链接模型,其本身是模仿动物的神经网络,并根据其行为特征分布式进行算法数学模型处理。在计算机上,人们可以利用并行或者串行的模式模拟仿真,实现人们自身的神经网络模型算法。在特定应用情况下,进行神经网络研究的目标则是高性能专用的神经网络硬件。

神经元是人工神经网络的基本单元,具有一定的信息处理方面的能力。对于输入的内容,神经元可以简单进行处理,能根据学习规则做好加权求和,并根据权值来获取神经元的状态输出,以便对刺激进行处理。还可建立基于VHDL语言的神经网络元件库,它包括基本单元、控制单元两个部分。

二、 BP神经网络结构模型

BP神经网络由输入层、隐含层和输出层组成,相邻层之间的各个神经元实现全连接,每层各个神经元之间没有连接。

BP算法正向传播过程:输入信号从输入层输入,经过隐含层传向输出层。如果输出层的实际输出与期望输出一致,那么学习算法结束。基本控制单元用于建立隐含层和输出层的神经元,主要解决信号运算后权值存储问题,它主要包括加权乘法、神经元输入信号的累加、非线性激励函数的实现、权值存储等基本模块。

图1中xi代表第i个输入,wij代表输入i和神经元j之间的权值(weight),yj是第j个输出。如图1所示可以得到:

y1=f(x1.w11+x2.w21+x3.w31 ) 2-1

y2=f(x1.w11+x2.w22+x3.w32) 2-2

y3=f(x1.w11+x2.w23+x3.w33) 2-3

其中f( )是激化函数(如线性阈值的sigmoid函数等)。

三、神经网络模型与仿真

clk产生脉冲信号,输入端x1,x2,x3 分别置为011,100,101,权值初值设为0000,通过9个脉冲周期一次递增到1000,将权值与输入值进行运算,得出结果。在权值固定时,输出取决于输入,不同的输入得到不同的输出结果。而在权值变化时,输出就由输入和权值决定。

为了仿真的结果更直观,代码采用的每个神经元的3个输入信号以及权值的位宽都为4,且带有符号。权值共设了9个,采用9个时钟周期将权值移入值。模拟与仿真的结果如图2所示。

结果分析:模拟结果与结果一致,此仿真成功。

四、结语

基于VHDL编程实现简单神经网络的软件模拟与仿真,从算法的提出到模型的建立,完整地体现神经网络的可用性与优越性。文中所提的神经网络模型是对单个神经网络的模拟与仿真,以及基于二维数组的多个输入输出的大规模神经网络的模拟。由于VHDL语言编程的灵活性,可以将编程下载到芯片用硬件实现对神经网络的模拟,以提高系统运算的速度和可靠性。

参考文献:

神经网络设计篇4

【关键词】BP神经网络 加速度传感器 手势识别

手势识别的研究是一个非常有意义的课题,从识别方法上看,目前主要采用的是隐马尔可夫模型(HMM)、支持向量机(SVM)、分类决策树以及人工神经网络(ANN)等。在多种识别方法中,HMM方法的识别率较高,但计算时间复杂度较高,SVM需要的存储空间较大,而决策树仅仅对简单手势有较好的识别率,对于复杂手势则识别率较低。综上,本文根据佩戴式数据手套的实时性要求高,计算时间、空间复杂度低的特点,采用BP神经网络模型进行手语识别。

1 基于加速度的BP神经网络手势识别设计

1.1 手势动作的加速度数据

通过可穿戴的手势加速度数据手套,采集得到手势数据。并通过挑点去除和均值滤波对手势数据进行预处理。然后用紧邻极值法提取手势动作的加速度特征值,形成一个手势动作的特征值样本集。

1.2 BP神经网络的设计

根据BP神经网络算法的特点,主要有以下几个方面的设定。

1.2.1 训练样本数量的选择

训练所采用的样本数量的多少,会对手势识别的准确度有较大的影响,训练所采用的样本数量越多,在训练后,最终手势的识别效果越好。但是,在解决实际问题时,不可能无限制的进行样本识别,需要一种规则来选择合适的样本数量进行训练,一般情况下,训练样本数量P可由(1)式来进行计算。

(1)

其中,mε为网络中权值数量加上阈值数量,ε为给定的训练误差。

根据经验,训练样本的数量一般为mε的5到10倍,另外,还需要对样本进行筛选,选择具有代表性的样本进行训练。在样本训练的过程中,将不同类别混合,随机选择加入,以使BP神经网络能够适应各种不同的情况。

1.2.2 BP神经网络的结构设计

在设计BP神经网络的过程中,需要确定隐含层数量、输入层与输出层节点的数量、隐含层节点的数量。

BP神经网络中,当具备S型隐层,权值矩阵再加上阈值,理论上可以用来大致表示所有的线性非线性函数。虽然层数的增加可以提高精度,但会大大增加神经网络的复杂度。考虑到可穿戴设备中的计算能力低,存储空间小,故而选择一层网络。

一般情况下,输入层的节点数量由实际的样本向量的维数决定;输出层的节点数量为需要辨别的手势数量加一。

对于隐层节点数量的选择,一般情况下,可由(2)式得到大致的节点数。

(2)

其中,m为隐含层节点数,n为输入层节点数,l为输出层节点数。

1.2.3 初始权值的选择

对于初始权值,一般情况下选择较小的数,可以使每个神经元的输入小,可以避免多次训练后某些权值的不合理性。本文选取0到2之间的随机数。

1.2.4 学习率的选择

初次训练一般情况下在0.01到1之间选择学习率,然后依据学习率不断调整权值向量,最终获取比较好的权值组合,使得实际输入与期望输入之间的误差小于一定的范围。

1.3 利用BP神经网络的手势识别过程

BP神经网络的手势识别主要分为学习训练与手势识别,其过程如图1所示。

2 实验验证过程及结果分析

在本实验中,主要针对BP神经网络的实现过程做重点介绍,同时根据输出结果,分析BP神经网络的识别效果。

2.1 实验验证过程

本实验随机选择了20位实验者,使其按照预先设定的手势的起始与终止动作,执行十个阿拉伯数字的动作,每人重复10次,总共得到2000组手势动作样本。其中,任意选择其中的一半作为BP神经网络训练样本,剩余部分则用来进行各种手势的识别。训练时,所有样本打乱顺序,然后依次按照顺序输入。

由于需要识别0-9这十个阿拉伯数字,所以总共需要10个输出节点,激活函数采用sigmoid.而一般手语的特征点不超过16个,为了增加BP神经网络的接收能力,将输入节点设为20个。隐含层节点数设为12,训练终止误差设为0.01,学习效率设为0.1。识别效果见表1。

2.2 实验结果分析

在数据训练识别中,由于数字9和数字0的识别中,由于数字0的手势识五个手指全部握住,而在数字求的识别中,手语动作识食指只是一个弧度,没有彻底握住,导致了数字9和数字0的识别率较低。这一问题有待于以后的提高。

参考文献

[1]孔俊其.基于三维加速度传感器的手势识别及交互模型研究[J].传感技术学报,2009.

[2]李歌.基于BP神经网络的手势识别研究[D].秦皇岛:燕山大学,2013.

[3]徐川龙.基于三维加速度传感器的人体行为识别[D].杭州:浙江工业大学,2013.

[4]吴江琴.基于DGMM的中国手语识别系统[J].计算机研究与发展,2000.

[5]邹伟.一种中国手语单手词汇识别系统[J].系统仿真学报,2003.

神经网络设计篇5

关键词:神经网络;智能设计;特征编码;智能推理;基于知识的工程(KBE)

中图分类号:TP391文献标识码:A文章编号:1009-3044(2011)16-3917-03

Research and Implementation of Intelligent Design System Based on Artificial Neural Network

WU Zheng

(The CAD Research Center of Tongji University, Shanghai 200092)

Abstract:Axisymmetric part of the design for the introduction of the concept of the feature encoded file, its characteristic features in a coded form to be expressed. In order to achieve intelligent process state model output, the use of artificial neural networks for automatic reasoning capabilities. Through the intelligent reasoning system to remove the experience of design continued exploration and improvement, will be part of the feature modeling input, the system can automatically determine the parts of the process, then automate production. The intelligent system can help developers and designers to quickly produce design example, so developers can focus more on product innovation activities of enterprises to improve product design and R & D has important practical significance.

Key words: neural network; intelligent design; feature coding; intelligent reasoning; KBE

产品工艺设计是产品开发的首要环节,也是关系到产品设计成功与否的核心问题。提高工艺设计集成化、系统化和智能化程度,实现经验设计向科学设计的飞跃是研究人员多年追求的目标。而智能设计作为现阶段的热点技术,吸引了越来越多的专家和学者的目光。[1]伴随着计算机软硬件的成熟,以及图形图像学、CAD、人工智能设计技术和工艺模式理论的发展,显著的提高了设计的质量和效率,大大缩短了设计周期和工时,形成了工艺设计的的新领域,对我国智能设计和计算机辅助设计的发展起到了极其重要的推动作用。[2]

1 人工神经网络智能设计系统模型的表达

1.1 智能设计系统的体系结构

该智能设计系统主要的结构模块如图1所示。本文将该智能设计系统主要划分为以下几个模块,特征造型器主要将零件的特征进行录入,数据会同用户的输入数据共同进入特征编码器;特征编码器相当于一个接口,将形式数据转化为模式映射器能够识别的规范化数据(即特征编码文件),在模式映射器内部,通过神经网络对数据的处理,同时结合已有的经验知识库、材料库、规则设计库、工艺特征库、映射规则和标准库的数据交互,将数据输出到数值公式计算模块。数值公式计算模块主要是在具体的场景中将约束条件进行量化,结合具体的设计要求将工艺设计顺序进行调整。最后将结果反馈到用户界面,实现智能设计。

1.2 KBE思想和本系统的有机结合

在工程实践中,人们发现专家知识一般来源于该领域内专家的经验和积累,具有很大程度的不确定性和模糊性,这对于知识的交流和继承带来了很大的困难。欧洲面向KBE应用的方法和软件工具研究联盟提出了KBE的概念,KBE是计算机辅助工程领域的一个进步,它是一种将面向对象方法(Object Oriented Methods)、AI和CAD技术三者集成的工程方法,能够提供设计过程客户化、变量化和自动化的解决方案[3-4]。,我们认为:KBE是通过知识驱动和繁衍,对工程问题和任务提供最佳解决方案的计算机集成处理技术,是AI和CAx技术的有机融合。[5-6]

KBE系统的要点主要是知识的表示、知识建模、知识推理和知识的繁衍。本系统主要通过特征造型器进行知识的表示,进而在特征编码器中对所得知识建模,形成了特征编码文件。模式映射器利用人工神经网络对于特征编码文件进行不断的映射,实现了知识推理;同时模式映射器将学习所得的知识存储在相应的知识库中,进行知识繁衍。将经验知识和隐形知识转化为显式知识,实现了智能系统的关键一步。我们将KBE的思想结合到本文所开发的系统中来。

2 零件的工艺特征及特征的编码

2.1 特征的确定和数字化表达

首先我们需要确定零件的特征,进而将零件的特征数字化。本文根据以下原则确立零件的特征:

1)现实性。零件的特征是客观存在的,不因人的主观意志的转移而改变该特征。2)可测量性。相比于传统的经验化设计模式,能够准确的测量和量化零件特征是智能设计的重要要求。3)唯一性。作为零件信息的重要载体,特征的无歧义性是需要重点考虑的原则,不能同时将一个特征收录到两个属性中,进而造成建模中零件属性的混乱。

本文主要针对轴对称的零件工艺模式,我们将主要研究零件的以下特征:冲孔、翻边、正向拉深、反向拉深、带孔小阶梯成形法等。

考虑到神经网络我们采用的是S型参数,所以我们将特征编码确定为0到1之间的数,本文共确定了10种特征形状。如表1所示。

通过确定特征参数,进而可以构建特征造型器,特征造型器以零件的实体特征为基础,结合零件的几何信息和拓扑信息,将参数化设计思想和特征编码思想统一,用尺寸驱动的方法来定义特征,便于计算机对于零件特征的识别和处理。

2.2 面向对象的特征建模语言

由于在实际设计征的复杂性和多样性,而面向对象的语言具有数据的封装性、数据与操作的集成性、对象重载、现实世界对象的数据和行为的全面抽象、对象数据的继承性等等许多的优点,目前已成为设计领域广泛采用的设计手段,应用在特征设计领域,可将特征的对象数据类型抽象出来。

特征对象首先具有本身的特征尺寸和属性,考虑到具体的应用,这些尺寸要能够实现参数化,除此之外,还具有公差、材料、技术设计要求等信息;特征的操作类型主要分为两种:一种是成型过程,即所谓的造型映射,另一种操作是特征在零件上的形成位置即有关位置的变动操作。在这两种操作中,造型映射与工艺设计的过程联系紧密,而特征位置操作则与产品的设计过程相关。下面主要是该特征对象的基类型的原型定义。

class Feature

{Stringfeature ;//零件对象的三维实体名。

StringName;//零件特征名。

Stringmaterial;//特征的材料。

intfeature_parametre; //特征尺寸的参数。

intfeature_num.;// 特征类型的编号。

intfeature_code;// 特征的编码。

intpt1,pt2,pt3;//特征基点的坐标。

int angle1,angle2,angle3;//特征在三维空间中与X, Y, Z轴的夹角。

Public:

virtualvoidmodel();//构造三维实体特征。

virtualvoidlocate();//确定特征的空间位置。

voidmove (ap_solid *sol, ap_real tx, ap_real ty, ap_real tz);//将特征移动{tx,ty,tz}。

voidrotate (ap_solid *sol, ap_real rx, ap_real ry, ap_real rz);//将特征旋转。

void chang_feature_para (int class_name, ap_solid *sol, ads_point pt, ap_direc ang, feature_parametre, void model); //该特征的几何尺寸的参数化修改操作。

voidcal_area(); // 特征面积的计算。

voidcal_circl();//特征周长的计算。

}

通过实例化语言,我们能够对零件的特征进行描述,进而便于计算机识别和处理。特征编码的构造加入到零件基类中,具体零件的定义将继承特征编码的操作,并能够进行适当的重载。

3 特征编码器和特征编码文件

将特征数字化表示后,本系统主要通过特征编码器将特征组成特征编码文件,使后续的人工神经网络能够对文件进行处理。有了特征编码,我们能够让机器识别特征;但是为了保存特征的其他信息,如冲孔工艺中孔的直径,翻边的高度等等,我们引入了特征参数的概念。特征参数即为了更明确的定义特征的几何、物理属性,跟随在特征编码后面的一系列数值。图3表示了部分特征编码所对应的特征参数。

我们将特征编码和特征参数组成特征编码文件,输入到模式映射器中。特征编码文件的格式为:每一行表示切仅表示一个特征,其中第一个数字为特征编码,特征参数在特征编码之后给出。图4显示了一个特征编码文件的实例。

4 智能设计系统中工艺模式的生成、映射以及神经网络的构造

4.1 工艺模式映射的过程

我们将零件的特征编码文件输入人工神经网络后,人工神经网络进行反向推理,将零件的成型信息反向输出,同时结合知识库、材料库等已有的信息,输出结果。

工艺模式用于指导工艺计算模块的工作,而经过特征造型之后的零件信息只有特征编码文件。因此,人工神经网络的任务就是根据零件的特征编码组信息,推导出生成零件的各个中间成形形状的特征编码组,以及各个中间形状在零件成形过程中的排列顺序。

因为对于神经网络来讲,得到的是设计者输入的零件模式信息,输出是零件成形的各个中间状态(特征编码表示),这就决定了工艺模式在神经网络中的映射过程是一个“逆顺序”的过程,这一过程又可以描述为“反推导”过程,即:将零件的特征编码组(零件模式)输入到经过训练的神经网络中,由其输出该零件成形的各个过程的中间形状的特征编码(中间形状模式)。我们以计算机的视角来看待零件的分解,即:零件->特征->特征编码文件->人工神经网络。在人工神经网络中,特征编码文件被反编译,特征结构后得出特征形成的顺序,进而输出,即:人工神经网络->特征反编译->特征工艺序列->特征编码组->特征->零件。由此可见,人工神经网络是用于处理工艺模式的主要工具,在前面的特征造型器、特征编码器中生成的零件的工艺模式,以及特征编码组等概念,都是为了便于神经网络的处理而建立的。

最后,由这些“中间形状模式”、“零件模式”等特征编码组信息及其排列顺序,组成该零件成形的“工艺模式”信息文件。这一过程,就是以零件模式作为输入、以经过训练。

4.2 神经网络的比较及选择

人工神经网络用于工艺模式映射的工作主要是以下几个:1)是针对输入的零件模式经过映射后输出该零件成形的中间形状;2)生成按照工艺成形的过程而排列的零件成形中间形状的排列顺序;3)进行反向学习,从输入的特征编码文件中提取零件成型顺序,存储到知识库中。[7]

神经网络主要由以下几类:1)分解映射结构;2)集中映射结构;3)前向网络;4)集中反馈式网络。[8]

我们选择的是集中反馈式的神经网络,相比于其他类型的网络,反馈式结构的优点是:统一的网络便于训练模式的组织和映射工作的开展;输入单元和输出单元的数目相同,可以形成对称的网络结构,使得网络的稳定性和收敛性有了保障;工艺模式的成形顺序性问题不占用网络的实际结构形式,顺序性问题转化为反馈映射的顺序问题,映射的顺序代表成形的顺序;网络在结构上将保证各个单步成形映射的准确性,从而提高网络的训练质量。[9]

表2给出了神经网络训练的相关内容,由于神经网络中节点和隐层数目的不同会极大的影响神经网络的性能,本文主要对各个不同的网络进行了比较,得出了一个最优的网络(即网络7)。

5 实例模型

本文在研究的基础上开发了一个应用实例,该实例主要是设计者将零件的特征编码和特征参数输入系统后,经过神经网络的智能推理,将输出反馈到设计平台上。

系统首先进行特征编码的输入,以确定零件的特征造型;然后输入每一个特征编码对应的特征参数,图5显示了拉深工序对应的特征参数的录入。特征参数录入完成后可以选择继续添加特征或者生成特征编码文件。图6为一个以记事本方式打开的特征编码文件。将特征编码文件输入人工神经网络,对应的输出为特征造型顺序文件(Y.SFM),数值公式计算模块处理该文件,最后给出智能设计工艺流程(图7)。

图5特征参数录入 图6特征编码文件图7 智能设计系统给出的零件成型顺序及计算结果

6 结论

本文提出了轴对称零件成型工艺的产品建模方法,然后给出了面向对象的建模语言,能够量化表示零件的特征,在将零件的特征编码文件通过神经网络映射和输出的同时,运用KBE系统的自学习理念,将习得的知识存储。实践表明,通过人工神经网络和工艺智能设计系统的应用,能够解决实际的零件设计成型问题。

参考文献:

[1] 高伟.工艺设计信息系统中的知识发现技术研究[D].成都:四川大学,2005:22-23.

[2] 罗小宾.机械产品图像识别技术及其在反求设计中的应用研究[D].成都:四川大学,2004:15-16.

[3] The Knowledge Engineering and Management Centre at Coventry University,UK,[EB/OL].kbe.cov.ar.uk.

[4] MOKA-Methodology & soft-ware tools-- Knowledge based engineering Applications[M].ESPRIT proposal EP25418,1997.

[5] Peng Ying-hong,Zhao Zhen,Ruen Xue-yu.Application of KBE technology in Die & Mold Design[J].International Conference on Die end Mold Technology, Beijing,2000,90-86.

[6] Peng Ying-hong,Zhao Zhen,Ruen Xue.KBE technology in Engineering Design[J].International Conference on Engineering end Technological Sciences 2000, Beijing,2000:94-100

[7] 刘振凯.智能CAD人工神经网络专家系统的模型和结构[J].中国机械工程,1997(2).

[8] 肖人彬.智能设计:概念、发展与实践[J].中国机械工程,1997,8(2):61-64.

神经网络设计篇6

关键词:FPGA;神经网络;图像压缩;乘累加单元

中图分类号:TP183文献标识码:A

文章编号:1004-373X(2009)19-038-04

FPGA Design of Multiply-accumulate Module in Image Compression

Algorithm Based on BP Neural Network

YANG Jun1,ZHOU Quan2,ZHANG Minrui1

(1.School of Electronic and Information Engineering,Xi′an University of Science and Technology,Xi′an,710054,China;

2.National Key Laboratory,China Academy of Space Technology,Xi′an,710000,China)

Abstract:A realization scheme for image compression algorithm based on three layers Back Propagation(BP) neural network is presented,which adopts the method combining the universal IP core with the VHDL language.The FPGA design of multiply-accumulate module which is one of the important components is carried out,it is designed with pipeline,which could increase the data of processing,decrease the latency of system,raise the frequency of clock.The behavior of functional simulation for MAC is completed.The simulation results show that the design is practicable.

Keywords:FPGA;neural network;image compression;MAC

0 引 言

神经网络(Neural Networks)是人工神经网络(Artificial Neural Networks)的简称,是当前的研究热点之一。人脑在接受视觉感官传来的大量图像信息后,能迅速做出反应,并能在脑海中重现这些图像信息,这不仅与人脑的海量信息存储能力有关,还与人脑的信息处理能力,包括数据压缩能力有关。在各种神经网络中,多层前馈神经网络具有很强的信息处理能力,由于其采用BP算法,因此也称为BP神经网络。采用BP神经网络模型能完成图像数据的压缩处理。在图像压缩中,神经网络的处理优势在于[1]:

巨量并行性;

信息处理和存储单元结合在一起;

自组织自学习功能。

与传统的数字信号处理器DSP(Digital Signal Processor)相比,现场可编程门阵列(Field Programmable Gate Array,FPGA)在神经网络的实现上更具优势。DSP处理器在处理时采用指令顺序执行的方式,而且其数据位宽是固定的,因而资源的利用率不高,限制了处理器的数据吞吐量,还需要较大的存储空间[2-4]。FPGA处理数据的方式是基于硬件的并行处理方式,即一个时钟周期内可并行完成多次运算,特别适合于神经网络的并行特点,而且它还可以根据设计要求配置硬件结构,例如根据实际需要,可灵活设计数据的位宽等。随着数字集成电路技术的飞速发展,FPGA芯片的处理能力得到了极大的提升,已经完全可以承担神经网络数据压缩处理的运算量和数据吞吐量。图像压缩是信息传输和存储系统的关键技术,然而如何进行FPGA设计,以实现给定的功能已经成为神经网络应用的关键[5,6]。

基于以上原因,选择FPGA作为三层BP神经网络图像压缩算法的实现方式,提出了具体的一种实现方案,并对其中的重点单元进行了FPGA设计与仿真验证。

1 BP神经网络图像压缩算法

一般习惯将单隐层前馈网称为三层前馈网,它包括输入层、隐含层和输出层。三层BP神经网络结构如图1所示,原始数据节点和重建数据节点构成节点数较大的外层(输人层和输出层),而中间的具有较小节点数的细腰层即构成压缩结果。其基本思想是强迫原始数据通过细腰型网络瓶颈,并期望在网络的瓶颈处能获得较为紧凑的数据表示,以达到压缩的目的。在网络的学习过程中,通过BP训练算法,调整网络的权重,使重建图像在均方误差意义上尽可能近似于训练图像。经过训练的网络即可用来执行数据压缩任务,网络输入层与隐含层之间的加权值相当于一个编码器,隐含层与输出层之间的加权相当于一个解码器。从输入端输入的原始图像数据经过神经网络的处理,在隐含层得到的输出数据就是原始图像的压缩编码,而输出层矢量即为解压后重建的图像数据[7]。

图1 三层前馈BP神经网络压缩结构

BP神经网络用于图像编码的压缩比与输入层和隐含层的节点数有关:

压缩比=输入层节点数(n)/隐含层节点数(m)

因此一般来说采用不同数目的隐含层神经元就可实现同一图像的不同压缩比。

三层BP前馈网中输入向量X=x(x1,x2,…,xi,…,xn)T,隐含层输出向量Y=y(y1,y2,…,yj,…,ym)T ,输出层输出向量O=o(o1,o2,…,ok,…,ol)T,期望输出向量d=d(d1,d2,…,dk,…,dl)T,输入层到隐含层的权值向量V=v(v1,v2,…,vj,…,vm)T,其中vj为隐含层第j个神经元对应的权值向量;隐含层到输出层的权值向量W=w(w1,w2,…,wk,…wl)T,其中wk为输出层第k个神经元对应的权值向量;隐含层的阈值向量θ=(θ1,θ2,…,θj,…,θm)T;输出层的阈值向量γ=(γ1,γ2,…,γk,…,γl)T。

(1) 用小的随机数对每一层的权值和偏差初始化,以保证网络不被大的加权输入饱和,并进行以下参数的设定或初始化:

期望误差最小值;最大循环次数;修正权值的学习速率;

(2) 将原始图像分为4×4或8×8大小的块,选取其中一块的像素值作为训练样本接入到输入层,计算各层输出:

yj=f(netj)

(1)

netj=∑ni=1vijxi+θj, j=1,2,…,m;

(2)

ok=f(netk)

(3)

netk=∑mj=1wjkyj+γk, k=1,2,…,l

(4)

其中:f(•)为BP网络中各层的传输函数。

(3)计算网络输出与期望输出之间的误差,判断是否小于期望误差,是则训练结束,否则至下一步,其中反传误差的计算式为:

E=12(d-O)2=12∑lk=1(dk-ok)2

(5)

(4) 计算各层误差反传信号;

(5) 调整各层权值和阈值;

(6) 检查是否对所有样本完成一次训练,是则返回步骤(2),否则至步骤(7);

(7) 检查网络是否达到最大循环次数,是则训练结束,否则返回步骤(2)。

经过多次训练,最后找出最好的一组权值和阈值,组成三层前馈神经网络,用于该算法的FPGA设计。

2 基于BP神经网络的FPGA设计

2.1 硬件设计方案

本文提出了一种基于三层前馈BP神经网络的图像压缩算法的实现方案,包括三层BP神经网络图像压缩算法编码器以及译码器的实现方案。

由三层BP前馈神经网络图像压缩的结构图可以看出,其解码器是编码器的逆过程,在实现编码器之后,实现解码器非常方便,故本文重点在于解码器的FPGA设计。

基于三层BP前馈神经网络图像压缩算法的编码器的FPGA设计方案如图2所示。

图2 三层BP神经网络图像压缩算法编码器结构图

其中,在数据预处理部分,首先将原始图像分成n×n的小块,以每一小块为单位进行归一化[8]。归一化的目的,主要有以下两点:

(1) BP网络的神经元均采用Sigmoid转移函数,变换后可防止因净输入的绝对值过大而使神经元输出饱和,继而使权值调整进入误差曲面的平坦区;

(2) Sigmoid转移函数的输出在-1~+1之间,作为信号的输出数据如不进行变换处理,势必使数值大的输出分量绝对误差大,数值小的输出分量绝对误差小。网络训练时只针对输出的总误差调整权值,其结果是在总误差中占份额小的输出分量相对误差较大,对输出量进行尺度变化后这个问题可迎刃而解。

归一化后得到以每小块的灰度值为列向量组成的待压缩矩阵,将该矩阵存储在RAM里,然后以每一列为单位发送给先入先出寄存器FIFO(First Input First Output);由FIFO将向量x1,x2,…,xn以流水(pipeline)方式依次传入各乘累加器MAC(Multiply-Accumulate),相乘累加求和后,送入LUT(Lookup Table)得到隐层相应的节点值,这里LUT是实现Sigmoid函数及其导函数的映射[9]。

在整个电路的设计中,采用IP(Intellectual Property)核及VHDL代码相结合的设计方法,可重载IP软核,具有通用性好,便于移植等优点,但很多是收费的,比如说一个高性能流水线设计的MAC软核,所以基于成本考虑,使用VHDL语言完成MAC模块的设计,而RAM和FIFO模块则采用免费的可重载IP软核,使整个系统的设计达到最佳性价比。

在压缩算法的实现中,乘累加单元是共同部分,也是编码和译码器FPGA实现的关键。

2.2 乘累加器MAC的流水线设计及其仿真

流水线设计是指将组合逻辑延时路径系统地分割,并在各个部分(分级)之间插人寄存器暂存中间数据的方法。流水线缩短了在一个时钟周期内信号通过的组合逻辑电路延时路径长度,从而提高时钟频率。对于同步电路,其速度指同步电路时钟的频率。同步时钟愈快,电路处理数据的时间间隔越短,电路在单位时间内处理的数据量就愈大,即电路的吞吐量就越大。理论而言,采用流水线技术能够提高同步电路的运行速度[10]。

MAC电路是实现BP神经网络的重要组成部分,在许多数字信号处理领域也有着广泛应用,比如数字解调器、数字滤波器和均衡器,所以如何提高MAC的效率和运算速度具有极高的使用价值。

本方案采用的MAC设计以四输入为例。

四输入的MAC电路必须执行四次乘法操作和两次加法操作,以及最后的两次累加操作。如果按照非流水线设计,完成一次对输入的处理,需要这三步延迟时间的总和,这会降低一个高性能系统的效率。而采用流水线设计,则可以避免这种延迟,将MAC的操作安排的像一条装配线一样,也就是说,通过这种设计它可以使系统执行的时钟周期减小到流水线中最慢步骤所需的操作时间,而不是各步骤延迟时间之和,如图3所示。

图3 基于流水线设计的四输入MAC结构图

在第一个时钟边沿,第一对数据被存储在输入寄存器中。在第一个时钟周期,乘法器对第一对数据进行乘法运算,同时系统为下一对数据的输入作准备。在第二个时钟边沿,第一对数据的积存储在第一个流水线寄存器,且第二对数据已经进入输入寄存器。在第二个时钟周期,完成对第一对数据积的两次加法操作,而乘法器完成第二对数据的积运算,同时准备接收第三队数据。在第三个时钟边沿,这些数据分别存放在第二个流水线寄存器,第一个流水线寄存器,以及输入寄存器中。在第三个时钟周期,完成对第一对数据和之前数据的累加求和,对第二对数据的两次加法操作,对第一对数据的乘法运算,并准备接收第四对数据。在第四个始终边沿,累加器中的和将被更新。

在本设计方案中,测试仿真平台选用的FPGA芯片为ALTERA公司Cyclone Ⅱ系列的EP2C8芯片,它采用90 nm的制造工艺,拥有8 256个逻辑单元,36个M4K随机只读存储器,2个数字锁相环,以及18个硬乘法器等丰富资源。仿真工具使用业界流行的Mentor Graphics公司的仿真软件Modelsim 6.1f。

对设计进行验证时,常见的方法是在模拟时施加输入激励信号,然后“读”该设计的输出信号,它的主要缺点是随着模拟器的不同而不同。为了克服此缺点,采用的测试方法是用VHDL编写一个测试模型发生器,称为Testbench,它的优点是通用性好,灵活性强,可以随时更改输入激励,已得到不同的仿真结果。

在对该MAC模块进行测试的过程中,涉及输入数据的转化问题,如前所述,在本神经网络中,输入数据归一化后,集中在-1~+1之间,所以处理时必须进行转化,最后采用16位补码形式的定点二进制表示法,由于在求和中可能会产生溢出,还必须包含一个溢出状态信号。

输入数据转换16位补码的仿真波形如图4所示。

图4 输入数据转换16位补码仿真波形图

16位补码转换原输入实数的仿真波形如图5所示。

图5 16位补码转换为实数的仿真波形图

在完成了对输入、输出数据的转换之后,编写Testbench(测试台)程序,对基于流水线设计的四输入MAC进行行为级仿真,仿真波形如图6所示。

图6 MAC行为级功能仿真图

综上所述,在基于流水线的乘法设计中,虽然每一步操作后都加入了寄存器,消耗了更多的资源,但却可以将系统延时降低到最慢步骤所需要的时间,极大地提高了同步电路的运算速度。

3 结 语

介绍了基于三层前馈BP神经网络的图像压缩算法,提出了基于FPGA的实现验证方案,详细讨论了实现该压缩网络组成的重要模块MAC电路的流水线设计。在对BP神经网络的电路设计中,对传输函数及其导函数的线性逼近也是近来研究的热点之一,本文使用的压缩查找表虽然能够满足设计要求,但仍然消耗了大

量资源。该研究结果对整个压缩解压缩算法的实现以及多层神经网络的相关研究工作提供了参考。

参考文献

[1]董长虹.Matlab神经网络与应用[M].2版.北京:国防工业出版社,2007.

[2]赵宏怡.DSP技术与应用实例[M].北京:电子工业出版社,2003.

[3]刘艳萍.DSP技术原理及应用教程[M].北京:北京航空航天大学出版社,2005.

[4]苏涛,蔺丽华.DSP实用技术[M].西安:西安电子科技大学出版社,2005.

[5]田华,冯勤群,胡喜飞.基于DSP和FPGA的高速图像压缩系统设计[J].电子工程师,2005,31(8):51-52.

[6]张秀艳.基于FPGA的神经网络硬件实现中的关键问题研究[J].科技情报开发与经济,2005,15(5):273-275.

[7]冯春丽.基于改进型BP网络图像压缩方法的研究[D].锦州:辽宁工学院,2007.

[8]张锐菊,周诠.神经网络用于遥感图像压缩的一些研究结果[J].中国体视学与图像分析,2003,8(3):183-186.

神经网络设计篇7

【关键词】评价指标 权重 神经网络

1.评价指标设计

教师课程教学质量评价,确定一套科学合理的教学质量评价指标体系是关键。高职学院教学质量评价体系以课程教学评价为主,一般包括教学内容、教学态度、教学方法、讲授能力、教学效果和教书育人等一级指标,每个一级指标下设立各种二级指标。在该体系中分为督导专家评教指标体系,同行教师评教指标体系,学生评教指标体系三个子系统。

2.评价体系权重设计

根据以上权重确定的原则,采用专家意见法和调查分析法,经过专家讨论确定一级指标权重和二级指标的权重,且同一级指标权重值之和为1。本文采用BP神经网络对教学质量评价数值进行仿真实验,输入值采用一级指标评价值,二级指标评价值转化成对应的一级指标评价值。

3.神经网络训练与泛化概念

通过调用train()函数对神经网络参数进行训练,可以建立神经网络模型net。该函数的调用格式为[net,tr,Y,E]=train(net,X,Y),其中,n为输入变量的路数,n为样本的组数,变量X为n*M矩阵,Y为m*M矩阵,m为输出变量的路数,X,Y分别存储样本点的输入和输出数据。通过样本数据进行训练,得出训练后的神经网络对象net,同时得到其他相关参数信息,。

当确定了BP网络结构后,必须根据误差是否满足要求,再对网络的权值和阈值是否进行学习和修正,以达到网络误差的要求,使训练网络最终达到预先给定的输入输出映射函数关系。BP网络的学习过程分为两个阶段:

第一阶段是输入已知训练数据,通过设置训练的网络结构和初始化权值和阈值,从网络的第一层逐步计算各个网络神经元的输出值。

第二阶段是对阈值和权值进行相应修改,从最后一层向前计算训练过的阈值和权值对预先设定的误差的梯度,即影响程度,从而对各阈值和权值进行相应修改。

以上两个阶段反复交替进行,直到达到误差要求,满足收敛为止。由于误差逐层往回传递,以修正层和层之间的阈值和权值,该多层网络常称之为BP网络。

如果在预先给定最大训练的次数后,仍然不能训练出满足要求的网络,则系统将会报出错误的信息。

4.训练样本采集

1. 评教数据采集

教师课程教学质量评教数据总共有三个部分组成,有督导专家评教数据、同行教师评教数据和学生评教数据。

首先,督导专家评教数据获得。十个一级指标,督导专家评教没有二级指标,对每一个单项评分区间(0,1)之间分数。其次,同行教师评教数据获得。同行教师评教有六个一级指标,十六个二级指标。最后学生评教数据获得。学生评教表有四个一级指标,有十九个二级指标。一级指标评分区间(0,1)区间打分。教师课程教学质量综合评价,有以上三个在分别进行采集数据。每张表格表号是l、2、、n,根据表号进行汇总BP神经网络训练样本数集。

2. 数据整理

样本数据的质量直接关系到模型建立的科学程度M。由于课程教学质量评价存在很强的主观性,且受心理因素的影响在评介侧重点上有所不同。为了使原始数据更加科学、准确,确保网络训练与模型的质量,通过督导专家、同行教师、学生综合评价得到原始数据,从教学评教20个样本数据中随意抽取10个样本作为训练数据,3个样本作为检测数据。

为使数据符合训练过程函数的运算要求,对所原始数据进行归一化处理,使其落在[0,1]区间。以下讲述如何获得专家评价值:

根据“权重对应表”,设定权重矩阵C,每一个分量Ci(i=l,2,…,20),要求

Ci≥0(i=1,2,… ,20)且

令矩阵X表示一级指标,则Xi(i=l,2,,20)。根据评教数据采集方法可以获得样本数据,每一个样本数据中有二十个一级指标的数据,区间(0 1)。

令专家评价值 Y = 通过此公式可以获得每一个样

本的专家评价值。

5.BP神经网络模型的实验设计

本实验设计过程如下:首先输入训练的10样本集,每个样本集有20个输入点, 输入矩阵是20*10。输入总评,即专家评价值10个数据,每个样本对应一个专家评价值;其次,构建BP神经网络模型,通过newff神经网络构建函数,设定神经元节点,隐含层传递函数和输出层传递函数,及训练函数等,同时确定训练次数和训练目标误差;最后通过net=train(net,P,T)得到训练后仿真输出结果,与目标结果进行对比,计算误差能否达到预期目标。

本实验神经网络模型是BP神经网络模型,所以构建网络函数采用newff,即一个前向BP网络。BP神经网络公式:net=newff(PR,[S1,S2,…,SN],{TFl TF2…TFN},BTF,BLF,PF)。那么采用哪种训练方式,其训练速度最快,这里是难预知的,因为这取决于许多因素,包括给定问题的复杂性、训练样本集的数量、网络权值和阈值数量、误差目标等。

隐层的节点数如何确定。本文根据Kolmogorov定理,公式m=2n+1,其中n是输入节点数,m表示隐层节点数,即神经元节点数。

采用S(sigmoid)型函数做为BP神经网络中传输函数。

6. 实验结果

应用BP神经网络建立的教学质量评价模型用于学习的样本,待测样本网络输出值与专家评价值非常接近。也就是说,该模型能较为准确的根据各评价指标来确定教师课程教学质量评价结果。

【参考文献】

神经网络设计篇8

一、神经网络半主动控制策略

半主动控制由于具有耗能少且控制效果与主动控制相当等优点而受到国内外研究者的重视,也发展了不少控制算法。但是这些算法存在一个共同的缺点,即简化模型假设,这主要是因为建筑结构本身是无限自由度体系,不可避免要进行模型简化或降阶处理才能应用于结构控制当中;这种简化模型与实际建筑结构的动力特性的相似程度将直接影响到结构振动控制性能的优劣。更重要的是,由

于结构半主动控制从本质上说是一种继电型控制,即结构状态在由控制器开关所形成的组合状态之间切换来避免与外载荷发生共振以达到控制的目的,因此其是一种强非线性运动;由非线性理论可知,轻微的挠动都会使结构的运动状态偏离平衡位置,从而极有可能造成结构控制的失稳。而且由于控制装置一般都是机械装置,其与结构在切换时不可避免存在相互作用,如果不将这些影响因素考虑在内,无疑对控制性能产生影响。

本文提出一种基于人工神经网络的结构MR阻尼器半主动控制方法。首先利用神经网络(NNI2)直接对结构建模,从根本上避免了由于建模误差以及土-结构相互作用、控制器-结构相互作用等影响因素对结构动力性能改变所造成的误差;然后设计神经网络控制器,产生每一时刻使结构响应最接近于最优主动控制效果的神经网络控制力;接着将结构的响应和神经网络控制力输入MR阻尼器逆向神经网络模型,产生的输出就是在当时的结构响应条件下,为了使MR阻尼器产生与理想控制力一致的阻尼力所需要的输入电压,该电压输入给MR 阻尼器使之产生近似于理想的控制力作用到结构上, 从而降低结构响应, 实现结构控制的目的。

在本文的神经网络控制中,采用神经网络在线实时辨识与另一个神经网络控制器共同作用的方式,构成一种间接神经网络控制结构。这种结构相当于一种内模控制,神经网络辨识的目的是为控制器权值的调整提供系统的Jacobi矩阵。在理论上,如果存在一个收敛的神经网络辨识权值WNNI和神经网络控制权值WNNC,能够保证系统均方收敛,那么当辨识网络收敛到WNNI、控制器网络收敛到WNNC时,系统控制收敛。

二、神经网络辨识器

首先训练结构神经网络辨识器,网络模型是对地震波作用下在采用LQR最优主动控制时结构的动力特性进行辨识。这里取结构在人工模拟地震波a作用下采用LQR最优主动控制时结构动力响应的前6秒数据作为神经网络的学习样本对结构进行离线辨识。

设计BP网络节点为13-9-5,输入层取为当前和前一时刻结构一层的位移、速度响应,顶层的位移、速度、加速度响应和人工模拟地震波a的加速度数值,以及下一时刻人工模拟地震波a的加速度数值;输出层取为在主动最优控制时下一时刻一层的位移、速度响应,及顶层的位移、速度、加速度响应,利用Levenberg-Marqardt算法对网络进行训练。训练时,为减少训练次数,将数据调整为同一数量级,将地震波加速度数值乘以10-3。网络训练2000步后,误差达到6×10-8。

三、神经网络控制器

神经网络辨识器训练完后接下来开始训练神经网络控制器,神经网络控制器的输入即为神经网络辨识器的输出和相应时刻的人工地震波加速度数值。设计BP网络节点为6-9-1,输入层为神经网络辨识器输出的一层的位移、速度响应,顶层的位移、速度、加速度响应,以及对应时刻的人工地震波a的加速度数值;输出层取为下一时刻以LQR最优主动控制力为目标的神经网络控制力,利用Levenberg-Marqardt算法对网络进行训练。训练时,为减少训练次数,同样将地震波加速度数值乘以10-3。网络训练2000步后,误差达到0.1。训练完成后,在实际控制中,神经网络控制器NNC根据神经网络辨识器预测输出的结构响应和输入结构的地震载荷大小,即可输出使控制效果接近于最优主动控制时的神经网络控制力。

四、半主动控制效果仿真

这时我们再将由Penzine(1975)提出的过滤白噪声的加速度功率谱密度模型生成的人工模拟地震波b作用下时由神经网NNI2输出的结构一层的位移、速度预测响应及由神经网络控制器所输出的神经网络控制力输入MR阻尼器逆向神经网络模型中,设MR阻尼器的初始电压输入为1.5 V。

推荐期刊