神经网络算法范文
时间:2023-04-12 03:17:17
导语:如何才能写好一篇神经网络算法,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
1、BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)。
2、BP神经网络算法是在BP神经网络现有算法的基础上提出的,是通过任意选定一组权值,将给定的目标输出直接作为线性方程的代数和来建立线性方程组,解得待求权,不存在传统方法的局部极小及收敛速度慢的问题,且更易理解。
(来源:文章屋网 )
篇2
计算机网络拓扑结构主要是指计算机连接网络之后,其自身设备与传输媒介所共同组成的一种物理构成模式,其网络拓扑结构的形式主要是由通信子网来决定的,其结构的主要功能是实现数据信息的网络共享、处理及交换,并要在一定程度上提升网络数据信息运行的可靠性,站在网络拓扑的结构来讲,计算机网络结构的主要部分是链路与结点,计算机网络实质上是由一组结点以及多条链路所共同组成的一种模拟结构。计算机网络通常表示为:G=<V,E>,其中V表示的是网络结点集,E表示的是链路集,如果应用Va来表示结构中增加的结点集,Eb来表示增加的连接集,那么就能够得到其拓扑扩展的计算机网络结构为G’=<V’,E’>。
2基于计算机网络连接优化中的神经网络算法
本次研究中分析的均场神经网络算法实际上是一种神经网络算法与均场退火技术相结合的算法,应用这种方法能够有效的增强计算机的网络连接,并且达到更优化、更快的连接效果,这其实是一种利润最大化的网络优化算法,其能够最大限度的提高计算机网络的性价比。
2.1神经网络算法
人工神经网络属于非线性动力学系统,其能够对信息进行分布式的存储及协同处理,其在人工神经网络之上的人工神经网络系统的基础之上,应用网络算法及网络模型进行各种信号的处理,或者是对某种运行模式进行识别,从而建立其一个独立的专家系统,或者是构成机器人,当前在多个领域中,人工神经网络系统都得到了广泛的应用,在该基础上所发展起来的人工神经网络算法是一种监督性的学习算法,人们对于其重视程度逐渐增加,但是在实际的应用中,其存在收敛速度较慢的缺陷,难以保证将收敛程度压制到全局的最小点,容易导致计算机网络学习及记忆不稳定性增强的问题,这会对计算机网络的连接效果造成直接的影响,做好其网络连接的优化非常的必要。
2.2均场神经网络算法
在基于计算机网络连接增强优化下的均场神经网络算法的研究中,对其网络效果进行判断,需要建立起一个完整的场均神经网络模型,在模型的构建过程中,应该做好函数法构造过程中的目标函数的构建问题,具体的构建方式表现为:应用Si来表示Hopfield计算网络中的一个神经元状态,并且规定当Si=1时,表示的含义是网络选中了连接i,可以实现正常的连接,当Si=0时,表示的含义是:网络中没有选中连接i,网络无法实现正常连接,再应用罚函数法就结构来进行网络模型的创建。
2.3实例分析
根据上文中分析的计算方法,在得到计算结果之后,能够对均场网络算法的可行性及有效性进行判定,我们分别采用模拟退火算法、遗传算法、均场神经网络算法进行比较,结果显示模拟退火算法需要计算99次,这样才能保证计算出规定的连接集,并从中获取一定的利润值,在遗传算法中需要进行96次的计算,在均场神经网络算法中,需要实施88次的计算,均场神经网络算法在获得网路连接效果等方面,更快、更加有效,更适宜应用于计算机网络连接的增强优化以及网络结构拓扑的扩展工作中。
3结束语
篇3
关键词:车牌定位;脉冲神经网络(SNN);边缘检测;车牌定位;字符分割;字符识别 文献标识码:A
中图分类号:TP391 文章编号:1009-2374(2016)32-0013-02 DOI:10.13535/ki.11-4406/n.2016.32.006
现在车牌定位已经提出了很多方法,其中经常用到的是基于黑白图像定位、基于颜色特征算法和基于车牌边缘检测算法。大多数算法都是基于单一特征来进行车牌定位提取,这样的定位方法在确定车牌区域上存在着明显的局限性,受到特定条件的限制。车牌区域主要有以下特征:颜色特征、几何特征、位置特征、纹理特征、灰度跳变特征、投影特征和频谱特征等。车牌和字符的颜色共有五种组合分别为:蓝底白字、黄底黑字、白底黑字、黑底白字以及白底红字,其中一些小型和大型车辆的牌照底色会跟着省份的变化而略有不同。本文综合分析车牌的特征,提出了基于脉冲神经网络颜色特征提取的车牌粗定位和基于脉冲神经网络的边缘检测的精确定位。
1 算法描述及流程
首先输入拍摄的彩色车牌图像,利用SNN对车牌图像进行颜色特征提取,接着经过一系列处理实现车牌的粗定位,然后运用灰度化、边缘检测、形态学处理和二值化等技术对粗定位车牌进行处理,再采用行列扫描投影法进行精确定位,最终提取出正确的车牌区域,其中的边缘检测也是基于SNN。基于SNN的车牌定位流程如图1所示:
2 车牌的粗定位
以蓝色为例,上述算法的具体步骤如下:(1)输入彩色车牌图像;(2)将三幅成分图、和中的每个像素转换为脉冲序列;(3)计算其脉冲序列的放电频数,分别用维数为的数组、和来存储;(4)将三个像素阈值、、转换为脉冲序列,并计算其放电频数,分别用、和来存储;(5)判断是否满足、、,如果满足的话,令,否则令。
如果,则在坐标处的像素为蓝色。其他颜色原理相同。
3 车牌的精确定位
本文主要基于感受野和脉冲神经元来检测车牌图像的边缘,其网络的结构如图3所示。该网络有三层:第一层为光感输入层;第二层为中间层,四个并行神经元矩阵、、、对应四种不同的感受野,为了简化只画出了每个矩阵中的一个神经元。在突触连接中的“X”代表兴奋性突触,“”代表抑制性突触,中间层通过不同的权重矩阵连接光感输入层,分别执行上、下、左、右边缘的检测,这些权重矩阵能改变图像中不同尺寸感受野的大小;第三层为输出层,其中每一个神经元累加来自第二层对应四个并行神经元矩阵的输出。通过绘制输出层的脉冲频率图,能得到对应于输入图像的边缘图。本文主要介绍神经元通过权重矩阵连接到光感输入层的感受野,其响应了感受野的右边缘。此脉冲神经网络检测右边缘的原理如下:
如果一个灰度均匀图像位于该感受野中时,产生一个均匀的脉冲的输出,膜电势不会变化,不会有脉冲序列产生;如果一个边缘明确的图像位于感受野中,感受野的左半部分产生一个较强的信号,右半部分产生一个符号相反的较弱的信号,由于左半部分兴奋信号没有被右半部抑制信号抵消,因此膜电势上升得很快,最终产生响应右边缘的脉冲序列。突触权重矩阵相当于在感受野内检测边缘的一个滤波器,其他三个边缘原理相同。输出层神经元累积来自中间层的四个神经元矩阵的输出,然后响应位于感受野任意方向的边缘。
如图4所示,通过与canny边缘检测和sobel边缘检测对比,可知sobel边缘检测结果缺失了部分边缘,canny边缘检测能力很强,但是提取了很多无用的边缘,然而SNN边缘检测结果最好,弥补了两者的缺点。
4 实验结果及分析
使用Visual C++ 2012开发工具搭建此算法的软件实验平台,共收集了样本400张(全国各个省份的车牌),并且针对各种底色车牌逐一进行提取,有366张可以成功定位,定位率达到91.5%。从以上实验结果可知该算法能达到很好的定位效果。
5 结语
本文主要介绍了基于脉冲神经网络的车牌定位算法,分别从车牌粗定位和精确定位两方面进行了系统的分析,综合运用了图像处理中的灰度化处理、边缘检测、二值化等技术对车牌图像进行分析和处理,充分利用车牌颜色和纹理等特征对车牌进行提取。由于客观条件和时间的限制,本文的研究还存在很多不足,有很多方面需要进一步提高。
参考文献
[1] 孙杰.车牌定位分割技术的研究与实现[D].东北电力大学,2007.
[2] 张燕,任安虎.多特征与BP神经网络车牌识别系统研究[J].科学技术与工程,2012,(22).
[3] 陈丽娟.基于脉冲神经网络的车牌识别系统的设计与实现[D].福建师范大学,2015.
[4] QingXiang Wu,Martin McGinnity,Liam Maguire,Ammar Belatreche,Brendan Glackin.Edge Detection Based on Spiking Neural Network Model[J].Third International Conference on Intelligent Computing,ICIC 2007.
[5] 陈浩.基于脉冲神经网络模型的车辆车型识别研究[D].福建师范大学,2011.
篇4
关键词: DFB激光器; 遗传算法; 神经网络; 温度控制
中图分类号: TN249?34; TP273 文献标识码: A 文章编号: 1004?373X(2016)15?0164?03
Abstract: To solve the problems of nonlinearity and delay property existing in DFB laser temperature control system, the composite control structure based on genetic algorithm and neural network is proposed. In the system, the microprocessor as the system core processor is used to design the temperature control system, and the Pt resistance, TEC semiconductor refrigerator, temperature sensor and temperature control actuator are used as the control units. The neural network positive model was constructed to analyze the physical characteristics of the controlled object. The neural network control is used to map the control laws, and the fast searching ability of genetic algorithm is used to train the weight coefficient of neural network. The designed system was verified with the experiment. The results show that the temperature control accuracy of the system is ±0.002 ℃, the range of temperature control is 5~70 ℃, the overshoot is less than 8%, the designed system can realize the control effect of high precision and wide range, and has better engineering application value.
Keywords: DFB laser; genetic algorithm; neural network; temperature control
0 引 言
激光检测技术已经应用在许多工业领域,其中分布式(DFB)激光器的波长能够有效匹配甲烷和一氧化碳等气体的吸收峰,所以在很多领域利用它来检测气体的浓度。DFB激光器的波长主要与电流和温度有关,当电流保持不变时,DFB的波长与温度的变化关系[1?3]为0.2~0.3 nm/℃。因此,为了提高气体的检测精度,必须确保DFB激光器发光的波长准确且稳定,需要对它的温度进行精确控制[4?7]。
国内外有很多生产厂家和研究机构都在研究如何在较宽的温度范围内提高DFB激光器的温度控制精度。目前,国外的产品一般能够在-50~100 ℃的环境下正常工作,且控制精度不低于0.001 ℃。国内的产品一般只能在常温下工作,控制精度[8]仅为0.05~0.1 ℃。本文针对DFB激光器温度控制系统普遍存在的非线性和延迟性等问题,利用遗传算法和神经网络构造复合控制结构,实现在较宽的范围内对温度进行高精度稳定控制的效果。
1 硬件系统设计
1.1 系统总体方案
设计的基于遗传算法和神经网络的DFB激光器温度控制系统主要由铂电阻、恒流源、信号调整、驱动电路、A/D和D/A转换模块、控制器、LED显示和上位机等组成,总体框图如图1所示。
激光器的温度变化由温度传感器铂热电阻转变为电信号,经过信号调整和A/D转换将数据送给微处理器,与上位机设定的标准值进行比较计算得到偏差,再将该偏差信号由数字控制器处理和调整之后,经由D/A转换和驱动电路进入执行器件,对被控对象加热或者制冷,从而将DFB激光器的温度控制在特定值。
1.2 温度测量和处理
采用铂电阻Pt100作为系统的温度传感器,它具有工作温度范围大和稳定性好的优点。给铂电阻加载恒定的微小电流(1 mA左右),再通过测量铂电阻两端的电压来获取温度信号。对电压信号进行模数转换时,使用的芯片为ICL7109,分辨率高达244 ppm,能够直连微处理器,转换的速度为30次/s。在微处理器的控制下,电压信号由多路开关经ICL7109实现模数转换。同时,参考温度的信号由上位机和电位器分压得到。
在微处理器上对实际温度与参考温度进行比较,它们的差值由微处理器上设定的控制算法进行处理,得到相应的控制信号,该信号经数模转换芯片DAC0832处理和放大后驱动执行器件工作。这里的数模转换芯片为双极性输出,可以提供正向和反向的电压信号,从而实现加热或者制冷。
1.3 TEC驱动
采用热电制冷器(TEC)作为系统的温度控制执行器件。根据珀耳帖效应,当给TEC通过不同方向的电流时,即可实现TEC的制冷或加热,而调节它的电流大小即可改变它的加热或者制冷的输出大小[9]。为了快速地控制TEC的电流,采用MAX1968型的控制芯片,它能够直接控制电流,具有消除浪涌电流和减小噪声干扰的优点。它内置有基准电压源,当电压大于基准值时,实现加热的效果;相反,实现制冷的目的。
2 神经网络学习控制
2.1 神经网络正模型
3 实验结果与分析
由前述的分析来设计DFB激光器的温度控制系统,并用实验来验证系统设计的合理性和可行性。选取初始种群为60个染色体,其中每个染色体均有25个权系数,它们的变化范围为[[-2,4]],进化代数的最大值为40代。实验室温度的初始值为20 ℃,设定期望的DFB激光器温度值分别为5 ℃,15 ℃,40 ℃和70 ℃,从零时刻启动温度控制过程,得到不同目标温度控制的实验结果,如图3~图6所示。
从图3~图6中可以看出,基于遗传算法和神经网络的控制算法可以使得DFB激光器的实际温度达到预期设定的温度值。对于低于室温的温度控制,超调量为8%,控制精度为±0.002 ℃;对于高于室温的温度控制,没有超调量,控制精度为±0.001 7 ℃。因此,本文设计的控制系统能够实现DFB激光器工作温度的精确控制,稳定度较高。
4 结 语
本文设计了基于遗传算法和神经网络的DFB激光器温度控制系统,系统使用微处理器、铂电阻和TEC半导体制冷器分别作为处理器、温度敏感器和温控的执行器件,通过构建复合控制结构,能够使得系统的输出达到期望值。实验结果表明,该系统能够实现DFB激光器温度的高精度和稳定控制,控制精度和控制范围分别能够达到±0.002 ℃和5~70 ℃,超调量低于8%,具有较好的推广应用前景。
参考文献
[1] 胡鹏程,时玮泽,梅健挺.高精度铂电阻测温系统[J].光学精密工程,2014,22(4):988?995.
[2] 单成玉.温度对半导体激光器性能参数的影响[J].吉林师范大学学报(自然科学版),2003(4):95?97.
[3] 李金义,杜振辉,齐汝宾,等.利用热敏电阻精确测量DFB激光器动态结温度[J].仪器仪表学报,2012,33(9):2088?2093.
[4] 秦国华,谢文斌,王华敏.基于神经网络与遗传算法的刀具磨损检测与控制[J].光学精密工程,2015,23(5):1314?1321.
[5] 玲,林勤花.基于遗传神经网络的P2P流量识别系统[J].现代电子技术,2015,38(17):117?120.
[6] 徐齐胜,罗胜琪,陶欣,等.基于神经网络遗传算法的锅炉燃烧优化系统[J].自动化与仪表,2014,29(6):30?32.
[7] 陈苗,陈福深,肖勇.温度对半导体激光器特性的影响[J].中国科技信息,2011(3):46?47.
[8] 李江澜,石云波,赵鹏飞,等.TEC的高精度半导体激光器温控设计[J].红外与激光工程,2014,43(6):1745?1749.
[9] 徐广平,冯国旭,耿林.基于单片机控制的高精度TEC温控[J].激光与红外,2009,39(3):254?256.
[10] 康伟.基于BP神经网络的DFB激光器恒温控制系统建模与仿真[J].激光杂志,2015,36(4):59?62.
篇5
关键词:数据挖掘;数据库;遗传算法;神经网络
中图分类号:TP392文献标识码:A文章编号文章编号:1672-7800(2013)012-0129-02
基金项目:佛山科学技术学院重点项目(2010)
作者简介:刘晓莉(1961-),女,佛山科学技术学院副教授,研究方向为应用数学。
1遗传算法基本特征
遗传算法是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种具有广泛适用性的通用优化搜索方法。遗传算法主要借用了生物遗传学的观点,通过自然选择、遗传和变异等作用机制来产生下一代种群,如此逐代进化,直至得到满足要求的后代即问题的解,是一种公认的全局搜索能力较强的算法。
遗传算法有良好智能性,易于并行,减少了陷于局部最优解的风险。遗传算法的处理对象不是参数本身,而是对参数集进行了编码的个体,可以直接对集合、队列、矩阵、图表等结构进行操作。同时,在标准的遗传算法中,基本上不用搜索空间的知识或其它辅助信息,而仅用适应度函数值来评估个体,并在此基础上进行遗传操作; 遗传算法不是采用确定性规则,而是采用概率的变迁规则来指导它的搜寻方向。正是这些特征和优点,使得遗传算法在数据挖掘技术中占有很重要的地位,既可以用来挖掘分类模式、聚类模式、依赖模式、层次模式,也可用于评估其它算法的适合度。
2神经网络基本特征
神经网络是人脑或自然神经网络若干基本特征的抽象和模拟,是以大量的、同时也是很简单的处理单元(神经元)广泛地互相连接形成的复杂非线性系统。人工神经网络本质上是一个分布式矩阵结构,它根据样本的输入输出对加权法进行自我调整,从而近似模拟出输入、输出内在隐含的映射关系。建模时,不必考虑各个因素之间的相互作用及各个因素对输出结果的影响机制,这恰好弥补了人们对各个因素及对输出结果的机制不清楚的缺陷,从而解决众多用以往方法很难解决的问题。
神经网络具有大规模的并行处理和分布式的信息存储,有良好的自适应、自组织性,学习能力很强,有较强的联想功能和容错功能,在解决机理比较复杂、无法用数学模型来刻画的问题,甚至对其机理一无所知的问题等,神经网络方法特别适用,是一种用于预测、评价、分类、模式识别、过程控制等各种数据处理场合的计算方法,其应用已经渗透到多个领域,在计算机视觉、模式识别、智能控制、非线性优化、信号处理、经济和机器人等方面取得了可喜的进展。
3遗传算法与神经网络混合算法在数据挖掘中的应用
作为一种有效的优化方法,遗传算法可以应用于规则挖掘,可以单独用于数据仓库中关联规则的挖掘,还可以和神经网络技术相结合,建立基于神经网络与遗传算法的数据挖掘体系,用于数据挖掘中的分类问题。
学习能力是神经网络中最引人瞩目的特征,学习算法的研究一直占据重要地位。可以将遗传算法应用于神经网络的学习过程中,这样可以避免传统的神经网络算法容易陷入局部极小的问题。有研究者提出了一种基于遗传算法的神经网络二次训练方法,可以提高神经网络的模糊处理能力,有效解决神经网络陷入局部极小的缺点,加快收敛速率,提高学习效率。也有研究者探究了基于基因重组的遗传算法优化神经网络的方法,通过训练权值来实现分类,可以提高神经网络数据分类的准确性。因此,采用遗传算法与神经网络模型相结合方法,可以解决多维非线性系统及模型未知系统的预测、评价与优化等问题,其成功案例有很多,下面是其中的几例。
一些研究者针对当前专家系统知识获取瓶颈的难题,提出了基于神经网络与遗传算法的汽轮机组数据挖掘方法。该方法首先将汽轮机组历史故障数据进行模糊化及离散化处理后,建立神经网络模型,然后再利用遗传算法对神经网络进行优化,实现了基于神经网络与遗传算法相结合的汽轮机组数据挖掘和故障诊断仿真系统,其诊断正确率达到了84%。
综合运用人工智能、计算智能(人工神经网、遗传算法) 、模式识别、数理统计等先进技术作为数据挖掘工具,可以建立可靠、高效的数据挖掘软件平台,已在很多工业控制和优化中得到应用和实验验证,并取得了满意的应用效果。例如,某铝厂根据以往不同原料成分和原料的不同配比与产品质量关系记录的数据库,应用数据挖掘软件平台,可以挖掘出适应不同原料成分的最佳配比规律,从而提高产品质量的稳定性。又如,以往在化工产品优化配方、催化剂配方优化或材料工艺优化等研究中,基本上都是采用试验改进的方式,需经过多次试验才能达到预期目的,但也有可能失败。为降低消耗, 少做试验就能达到预期目的,可采用神经网络对产品配方实验数据建模,在此基础上,再应用遗传算法对配方模型进行优化,得到优化配方。
正是遗传算法与神经网络等算法的支撑以及计算机技术的发展,目前,数据挖掘广泛地应用于天文、地理、生物信息学、金融、保险、商业、电信、网络、交通等众多领域。例如,应用在地理数据库上,主要挖掘地质、地貌特征,为寻找矿产或进行城市规划等提供参考依据;在电信Web服务器方面,可以挖掘Web日志,根据用户兴趣动态链接Web页面,统计页面链接及权威主页等,对检索页面进行聚类,方便用户找到需要的信息;在生物医学信息和DNA数据分析方面,进行遗传、疾病等数据特征的挖掘,为疾病诊断、治疗和预防研究提供科学依据;对金融数据进行挖掘,可以分析客户信用度;在CRM(客户关系模型)上使用数据挖掘,获得客户群体分类信息、交叉销售安排及开发新客户和保留老客户的策略;在电信业中使用挖掘技术,以预防网络欺诈等;应用在商业问题的研究包括:进行客户群体划分、背景分析、交叉销售等市场行为分析,以及客户流失性、信用度分析与欺诈发现;在电子商务方面,从服务器以及浏览器端的日志记录中发现隐藏在数据中的模式信息,了解系统的访问模式以及用户的行为模式,作出预测性分析等等。
4结语
神经网络和遗传算法作为数据挖掘技术,也有一些不足和缺陷。遗传算法除了要进一步改进基本理论和方法外,还要采用和神经网络、模拟退火、最近临规则等其它方法相结合的策略,提高遗传算法的局部搜索能力,从而进一步改善其收敛速度和解的品质,提高数据挖掘技术。特别是对于单调函数或单峰函数,遗传算法在初始时很快向最优值逼近,但是在最优值附近收敛较慢;而对于多峰函数的优化问题,它往往会出现“早熟”,即收敛于局部极值。因此,研究如何改进遗传算法,采用合适的算法加快寻优速度和改善寻优质量,无论在理论上还是在实践上都有重要意义。神经网络的神经计算基础理论框架以及生理层面的研究仍需深入与加强,如何提高神经网络的可理解性问题,以及研究遗传算法、神经网络技术与其它人工智能技术更好地结合,从而获得比单一方法更好的效果等问题,值得进一步探索。
虽然数据挖掘技术已得到了广泛应用,但现有的数据挖掘方法并不能完全适应所面临的具有多样性的海量数据分析的现实,急需解决的问题是:如何研究并行处理和抽样的方法,来处理大规模的数据以获得较高的计算效率;如何利用统计、模糊数学来确定隐含变量及依赖关系,开发容噪的挖掘方法,以解决异质数据集的数据挖掘问题;如何更好地进行文本数据挖掘、Web数据挖掘、分类系统、可视化系统、空间数据系统和分布式数据挖掘等新技术的应用。因此,未来数据挖掘的研究表现在数据挖掘功能、工具、方法(算法) 的拓展与理论创新,其应用的范围和深度会进一步加强。
参考文献参考文献:
[1]孟晓明.浅谈数据挖掘技术[J].计算机应用与软件,2004 (8).
[2]李慧芳,姚跃华,陈一栋.改进的遗传算法对神经网络优化的分类[J].微计算机信息,2008(15).
[3]王东龙,李茂青.基于遗传算法的数据挖掘技术应用[J].南昌大学学报, 2005(1).
[4]宋仁国.铝合金工艺优化的遗传算法[J].材料科学与工程,1998(1).
[5]韩力群.催化剂配方的神经网络建模与遗传算法优化[J].化工学报,1999(4).
[6]郭崇慧,陆玉昌.预测型数据挖掘中的优化方法[J].工程数学学报,2005(1).
[7]杨杰.用于建模、优化、故障诊断的数据挖掘技术[J].计算机集成制造系统,2000(10).
篇6
关键词:计算机神经网络;粒子群优化算法;应用
中图分类号:TP183
粒子群优化算法是一种相对简单、有效的随机全局优化技术,通过对粒子群优化算法进行相应的改进,以此确保其收敛性,然后再将粒子群优化算法应用到神经网络的学习训练中,能够更有效的找出最优化解。粒子群优化算法和遗传算法相比,粒子群优化算法并没有遗传算法复杂的交叉、变异以及编码,而是对粒子所在解空间的具置进行搜索,不需要对众多的参数进行调整,其收敛速度相对较快。
1 粒子群优化算法的基本原理以及优化改进
1.1 粒子群吧优化算法的基本原理
PSO中,每一个优化问题的解都是搜集空间中的一个“粒子”的状态,粒子群优化算法是对群体的全局进行考虑,通过迭代搜寻选取最优值,通过将系统转化成一组随机的例子,由于例子在解空间追随最优的例子进行凑所,所以粒子群优化算法是一种具有全局寻优能力的优化工具。例子群优化算法的基本原理表现为:假设在一个D维的目标搜集中间中,由N个不同的粒子组成了一个特定的群体,其中第i个粒子表示成其在这个D维空间中的向量(xi),也就是该粒子在D为空间中的位置,每一个粒子的位置都存在一个特定的解,通过将xi带入到相应的目标函数中,通过适当的函数计算就能得到其适应度值,然后根据该xi适应度值的大小,以此衡量xi的优劣程度。其中,第i个粒子飞行的速度表示D维中的另一个向量,表示为vi,将在D维空间中搜索到的第i个粒子的最有位置记录为pi,则整个粒子群搜索到的最有位置pi的粒子群优化算法表现为:公式一:vi=ci+c1r1(pi-xi)+c2r2(pg-xi);公式二:vik+1=vik+c1×rand()×(pbest-xik)+c2×rand()×(gbest-xik);公式三:xi=xi+vi,其中i=1,2,…N;r1和r2为学习因子,rand()表示介于[0,1]之间的随机常数,c1和c2表示为非负常数。其中迭代的终止条件是根据选择的最大迭代次数决定的,表示的为第i个李在迄今为止搜索到的最优化位置应该满足的适应度的最小值。
从社会学角度方面来说,粒子群优化算法公式中的表示的是粒子的记忆项以及自身认知项,能够表示上次速度的方向以及大小对粒子造成的影响,还能够将当前的指向粒子当作自身的最优化矢量,以此表示粒子的动作来源于自身的经验,能够反映粒子之间的协同作用以及知识共享,粒子能够根据粒子群中相邻粒子的最好经验,然后再结合自身的经验,以此来决定自身的下一步运动,从而形成PSO的标准形式。
1.2 粒子群优化算法的改进
粒子群粒子群优化算法需要用户确定的参数相对较少,并且其操作相对简单,因此该种方法使用起来非常方便,但是,由于粒子群优化算法容易陷入局部极值点,导致搜索的收敛性相对较低,并且粒子群优化算法的收敛性分析已经收到众多学者的重视,因此,为了增强粒子群优化算法的收敛性,可以将抗体多样性保持机制引入到粒子群优化算法中,其步骤表现为:首先,确定参数值,记忆粒子个数M,即常数因子c1和c2粒子群的个数N,粒子的浓度概率选择阀值Pi,其随机产生的N个粒子xi的飞行速度表示为vi,以此计算粒子的适应度函数值;根据公式计算粒子的选择概率,将粒子群体中前M个最大适应度的粒子当作记忆细胞进行储存,将概率大于Pi的粒子根据相应的方法进行计算,从而把M个记忆细胞替换成适应度最差的M个粒子,以此形成全新的粒子群,最终判断其能付满足相应的选择条件,如果满足输出适应度值最好的要求,则选定该粒子。由此可见,通过上述的方法对粒子群优算法进行改进,能够保证粒子群优化算法的精确性,并且通过实践证明,经过改进后的粒子群优化算法,其计算机的仿真结果显示,该种粒子群优化算法的收敛速度明显优于没有改进的粒子群优化算法的收敛速度。
2 粒子群优化算法在计算机审计网络中的应用
计算机神经网络能够模拟大脑的思维能力,然后通过对各种数据进行分析,从而建立其相应的数学模型,计算机神经网络中除了包含许多处理器以外,还包含了许多与人脑神经相似的节点,这些节点按照一定的规律进行连接。如果将计算机神经网络中的每一个过程都细分为若干个微程序,并且将所有的微程序都交付于处理器进行处理,那么处理器处理所有的微程序的过程,就是一条微程序的处理流水线,这样计算机处理信息的速度也将会显著的提高。粒子群优化算法在计算机神经网络中的应用,包括的内容有组合优化、参数优化、神经网络训练、学习算法、网络拓扑结构和传递函数、链接权重等,通过把个体转化成微粒,其中包括计算机神经网络中的所有能够用到的参数,然后经过一些列的复杂、重复的程序,最终达到最终的训练目标。相对于传统的神经训练法来说,由于BP算法需要可微的函数以及梯度信息等大量的数据,只有通过大量的计算才能得到相应的训练结果,其运行难度较大、程序相对复杂,而采用离子群优化算法,其处理信息的速度显著的提升,能够有效的克服其运行效率低的问题。粒子群优化算法在计算机神经系统网络中的应用,主要表现在两个方面:其一,粒子区优化算法在参数优化中的应用,能够通过解决计算机神经网络中的各种离散型问题,从而进行参数优化;其二,粒子群优化算法在组合优化中的应用,其中典型的应用表现为其在工程经济问题中的应用,其能够通过将各种资源进行科学的组合,通过设置一定的约束条件对这些组合进行排序,通过不断的尝试最终能够找到最有效的解决方案,然后合理的利用所有的组合实现经济效益的最大化。此外,粒子群优化算法不仅能够应用在计算机神经网络中,还能够应用在更多的领域中,例如软件编辑、游戏开发、电力系统等领域中。
3 结束语
文章对计算机神经网络中粒子群优化算法的应用进行了研究,对粒子群优化算法进行了相应的改进,有效的提高了粒子群优化算法的收敛速度。将粒子群优化算法应用在计算机神经网络中,其操作相对简单,比较容易实现,并且其还能够更快的收敛于最优解,有效的克服了传统遗传算法缺点。因此,在计算机神经网络学习训练中,广泛的推广和应用粒子群优化算法具有很大的现实意义。
参考文献:
[1]丁玲,范平,闻彬.粒子群优化算法在计算机神经网络中的应用[J].理论与算法,2013(17):39-41.
[2]曹大有.一种免疫粒子群优化算法及在小波神经网络学习中的应用[J].计算机应用于软件,2009(06):189-192.
[3]刘爱军,杨育,李斐.混沌模拟退火粒子群优化算法研究及应用[J].浙江大学学报(工学版),2013(10):1722-1729.
[4]虞斌能,焦斌,顾幸生.改进协同粒子群优化算法及其在Flow Shop调度中的应用[J].华东理工大学学报(自然科学版),2009(03):468-474.
[5]刘宝宁,章卫国,李广文.一种改进的多目标粒子群优化算法[J].北京航空航天大学学报,2013(04):458-473.
篇7
关键词: BP神经网络; 非线性方程组; 迭代算法; 误差收敛
中图分类号: TN911?34; TP183 文献标识码: A 文章编号: 1004?373X(2013)08?0020?03
0 引 言
神经网络具有许多优点,如大规模并行处理、分布式存储以及网络的计算时间复杂度几乎为零等[1],因此,神经网络的应用已越来越广泛。BP(Back Propagation)神经网络是采用误差反向传播学习算法的多层前馈神经网络,它是当前获得广泛应用的模型之一。BP算法的基本思想[2?4]是: 网络学习由输入信号的正向传播和误差的逆向传播两个过程组成。正向传播过程是指样本信号由输入层输入,经网络的权重、阈值和神经元的转移函数作用后,从输出层输出。
如果输出值与期望值之间的误差大于预期,则转入误差反向传播阶段,进行修正,即误差通过隐层向输入层逐层返回。网络的学习训练过程实质就是根据输出值与期望值之间的误差不断调整网络权重和阈值的过程,直到网络输出误差减小到允许值或到达设定的训练次数为止。由于 BP神经网络模型具有较强的随机性和不确定性,很多研究对BP算法进行改进,并取得了大量的成果,具体参看文献[5?6],这些算法提高了BP神经网络在实际应用中的可靠性,使得BP神经网络的应用范围越来越广泛。
神经网络求在求解非线性方程组中的应用也有了较好的研究。文献[7?9]研究了人工神经网络逼近非线性多元函数的可能性,得到了相应于几类特殊作用函数的神经网络逼近存在性定理, 这些定理保证了用单层神经网络逼近连续多元函数时,可达到任意的精确度。赵启林等提出一种权值耦合的BP神经网络模型[10],吴灵敏等提出了对形式为[x=f(x)]的多元非线方程组的神经网络求解方法[11],赵华敏等利用能量函数降能的方法寻找方程组的根[12]。
这些方法对多变元非线性方程函数形式有一定的要求。孙银慧等利用迭代BP神经网络的逼近非线性方程组的函数的反函数的方法,提出了一种通用性较强的求解方法[13]。
本文对文献[13]中所提出的方法进行了分析研究,发现存在误差收敛过早导致无穷跌代以及收敛值并非最小值的问题,并对算法进行了改进。
1 迭代的ANN算法
1.1 非线性方程组
研究如下非线性方程组的数值解问题[13]:
[y=f(x)] (1)
式中:[f:RnRn;x,y∈Rn]。
假设[x0=[x1,0,x2,0,...,xn,0]T]为它的一个解,[f(x)]的反函数 [x=f-1(y)]存在,则有:
[f(x0)=0, x0=f-1(0)](2) 尽管利用[f(x)=0]求解[x0]很不容易,但是若能求得[x=f-1(y)],则可由式(2)方便求得式(1)的解[x0]。虽然[x=f-1(y)]的显式表达式同样不易求得,但如果能够得到其映射数据,则可以利用各种拟合方法逼近[x=f-1(y)],从而得到[x0]。这种映射数据可以由[y=f(x)]很方便的得到,因而非线性方程组(1)的求解问题转化为寻求一种好的拟合方法,利用已有的映射数据来精确逼近[x=f-1(y)],采用人工神经网路(ANN)加以实现。
1.2 迭代的神经网络算法
1.2.1 算法简介
文献[13]中主要介绍了两种方法,一种是简单的ANN方法,另外一种是迭代的ANN方法,详见文献[13]。在求解算法中,给定方程组(1)的解的存在区域D,经过其中的算法1和算法2得到的输出 [x0′=[x1,0′,x2,0′,....,xn,0′]T]近似为方程组(1)的解[x0]。
对于误差的衡量,由于实际计算中[x0]并不可知,无法计算解误差[|x0-x0′|],用[Δ=||Δy||∞=max(Δyi)],其中[Δyi=|yi,0-yi,0′|,][i=1,2,...,n]来衡量,其中[y0′=f(x0′)]。此处文献中的[Δ]和[Δyi]的描述有误,本文进行了更正。在算法2的第2个步骤中,如果 [x0′∈D],则缩小区域D,实际上根据文献的实验数据的表2,作者并没有缩小区域D,而是改变了D,本文作者也认为在这种情况下没有必要缩小D,只需要根据[x0′]改变D即可,这一点也体现在本文提出的改进算法里。
1.2.2 算法实验分析
使用文献[13]中的算例进行方程组的求解:
[y1=f1(x)=2x31-x22-1=0y2=f2(x)=x1x32-x2-4=0] (3)
式中[x=[x1,x2]T,]该方程组的解为[x0=[x1,0,x2,0]T=]
[[1.234 3,1.661 5]T]。
采用两个输入的(10?2)BP神经网络结构,利用Matlab的工具箱实现,第二层隐层神经元节点个数为10,使用变换函数选正切S型函数(tansig);第三层为输出层,节点个数为2,输出层神经元传递函数为purelin函数,并且选Levenberg?Marquardt算法(trainlm)为BP网络的学习算法,训练次数100次,学习误差为0.000 1。
按照文献[13]所描述的迭代算法进行实验,在不同初始化权重和阈值的情况下,在不同的区域D按照迭代的ANN算法进行迭代求解。
大量的实验结果表明,在迭代求解的过程中[Δ]的并不是直线或者曲线下降的,而是按照波浪线下降并且最后稳定于某一个值的,也就是[Δ]可能在达到[ε]之前就不再下降,并且最后的稳定状态的值并一定是[Δ]的最小值。
图1是[Δ]随着迭代次数n的变化曲线,横坐标轴为n,竖坐标轴为[Δ],在实验过程中,D的取值为:[x1∈[1:0.01:1.5],x2∈[1.5:0.01:2]],固定网络结构和初始化参数进行迭代,当n=20时[Δ]达到了最小值,当n=35以后[Δ]便不再开始变化。改变区域D的值也有相同的试验结果。
图2中D的取值为:
[x1∈[0:0.01:0.5], x2∈[1.5:0.01:2]]
图3中D的取值为:
[x1∈[0:0.01:0.5], x2∈[2:0.01:2.5]]
图4中D的取值:
[x1∈[1 000:0.01:1 000.5], x2∈[2 000:0.01:2 000.5]时的][Δ]随着迭代次数n的变化曲线。
2 迭代的方法的改进
根据试验结果所标明的[Δ]随着迭代次数n的变化趋势和收敛分析,原来的迭代算法会出现无穷迭代,或者不能找到最小[Δ]。因此对原来迭代算法进行改进。
(1)对[Δ]达到平稳状态的判断。随着迭代次数的增加,当[Δ]的值不再发生变化时便中断迭代过程以免进入无休止的迭代求解。
(2)对[Δ]最小值的求解。由于当[Δ]达到平稳状态时的值未必是最小值,因此在迭代过程中记录[Δ]的最小值。当[Δ]达到最小值的对应的方程组的解被认为是方程组的近似解。
①设寄存器 min_delta用来记录[Δ]的最小值,寄存器min_x记录[Δ]取最小值时方程组的解,给定区域D和允许误差ε ,利用算法1[13]求得初步解[x0′],[Δ],用[Δ]初始化寄存器min_delta;
②根据[[x0′]]改变区域D,使得D满足[[x0′]∈D]得到新的求解区域D;
③以D为新的求解区域,利用算法 1 求得新的解赋值给[x0′],并计算误差 [Δ],如果[Δ]
利用改进的算法对方程组进行了求解,表1 为区域D分别为三种情况时实验的结果数据,[x1,0′],[x2,0′]为[Δ]为最小时所求得近似解。结果表明在不知道[D0]的情况下,即使D偏离[D0]很远时,也就是给一个任意的样本初始点,迭代过程也能使[Δ]收敛到一个较小值。比如D的取值为:[x1∈[800,800.5],x2∈[800,800.5]]时,经过85次迭代[Δ]达到一个稳定值,并在n=43时,[Δ]达到最小值0.052 1,[x1,0′]=1.234 2,[x2,0′]=1.667 2。
3 结 语
本文主要研究利用BP神经网络可以逼近多变元非线性方程组的函数的反函数,并利用迭代算法进行求解方程组的根,这是是一种通用的解多变元方程组的方法。
对文献[13]所提出的利用迭代神经网络求解多变元非线性方程组的方法进行了研究和实验分析,发现原算法可能由于误差[Δ]过早收敛而出现无穷迭代,并且由于误差并非一直随迭代次数的增加直线或者曲线变小,因此收敛的误差值并不一定是最小值。改进算法并根据误差[Δ]随迭代次数的变化曲线对迭代算法进行了改进,试验结果表明给一个任意的样本初始点,改进的迭代算都能能使[Δ]收敛到一个较小值,并找出[Δ]取最小值时方程组的近似解,具有较高的工程应用。由于网络的初始化权重和阈值以及对网络的迭代结果有重要的影响,神经网络结构与参数的选取和优化是值得进一步研究的问题。
参考文献
[1] 焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社,1996:1? 25.
[2] 张立明.人工神经网络的模型及其应用[M].上海:复旦大学出版社,1992.
[3] ABIYEV Rahib Hidayat, ALTUNKAYA Koray. Neural network based biometric personal identification with fast iris segmentation [J]. International Journal of Control, Automation, and Systems, 2009, 7 (1): 17?23.
[4] YANG Li, SONG Ma?lin. Research on BP neural network for nonlinear economic modeling and its realization based on Matlab [C]// International Symposium on Intelligent Information Technology Application. [S.l.]: [s.n.], 2009 : 505?508.
[5] 蒋蓉蓉.一种基于遗传算法的BP网络改进方法[J].微计算机信息,2007,23(11):234?236.
[6] 王静伟.BP神经网络改进算法的研究[J].中国水运,2008,8 (1):157?158.
[7] CYBENKO G. Approximation by superpositions of a sigmidal function [J]. Math Contral Signals Systems, 1989, 2: 303?373.
[8] PALM G. On representation and approximation of nonlinear systems [J]. Discrete System Bid Cybernet, 1979, 34: 49?52.
[9] HECHT?NIELSEN R. Theory of the back propagation neural nerwork [C]// Proceedings of the International Joint Conference on Neural Nerworks. [S.l.]: IJCNN, 1989, 1: 593?608.
[10] 赵启林,卓家寿.非线性方程组的耦合神经网络算法[J].河海大学学报,2000,28(5):38?40.
[11] 吴灵敏,柳重堪.用神经网络解多元非线性方程组[J].北方交通大学学报,1997,21(2):245?248.
篇8
关键词:字符识别;BP神经网络;车牌识别
中图分类号:TP391.41 文献标识码:A
1 引言(Introduction)
汽车牌照的识别是计算机视觉与模式识别应用于的重要研究课题,车牌识别的准确率和高效性是识别的关键。由于车牌图像难免会受到光照、天气等因素影响,车牌图像质量会有所下降,为了对车牌字符的进行有效地识别,首先要对其进行去噪、增强等预处理,之后应用识别算法对其进行识别[1]。本文研究了用BP神经网络方法对汽车牌照字符的识别算法。首先对分割、归一化后的字符特征进行提取,所提取的特征向量记录的就是字符的特征。把这个特征向量送到BP网络中进行训练,就可以得到训练好的权值,用这个权值对车牌字符进行识别。对于车牌图像的识别率达90%以上,表明该方法是有效的。
2 字符识别的原理(The principle of character
recognition)
字符识别的基本原理即对字符进行匹配识别。提取代表未知字符基本特征、结构的样本库和提前在计算机中保存的标准字符的字典(字符基本特征和结构的集合),在一定的规则下逐个匹配比较。在计算机中保存的标准字符的字典中,寻找与输入字符样本最相似的表达项,然后找出对应的字符就是识别的结果[2]。字符识别的原理框图如图1所示。
3 BP神经网络字符识别算法(The BP neural network
character recognition algorithm)
BP算法基本原理是利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计[3]。对BP网络的设计要点是高效率的特征提取方法、具有代表性的大量训练样本和稳定高效的学习方法。
3.1 BP神经网络学习算法
算法的基本流程就是:
(1)设置变量和参量,包括输入向量(训练样本和样本个数)、每次迭代中输入层和隐含层之间、隐含层与隐含层之间、隐含层与输出层之间的权值向量矩阵、迭代次数、每次迭代的实际输出、期望输出和学习效率。
(2)随机初始化权值矩阵。给三类权值矩阵赋一个相对较小的随机非零值。
(3)进行样本输入。采用随机输入的方法。
(4)前向传播。按照公式一层一层的前向计算隐藏神经元和输出神经元的输入和输出。
(5)误差计算,判断。根据每次迭代的期望值和实际输出结果算出误差,判断误差值满足要求与否,如果满足进行第8步,否则进行下一步。
(6)迭代次数判断。如果已经达到最大的迭代次数,则进行第8步,否则进行反响传播,即反向按照公式一层层迭代计算每层神经元的局部梯度。
(7)权值更新。依据反向传播过程计算出的局部梯度值,计算出各矩阵的权值修正值,并进行修正。
(8)终止判断。终止条件为:所有的样本都学习完成。否则进行第3步。
3.2 实际使用BP神经网络过程中的一些问题
①样本的处理。可适当放宽输出条件,例如当输出大于0.9时就当作是1,输出小于0.1时当作0。对于输入样本,也应该进行归一化处理。
②初始化权值的选择。权值的不同对学习结果会产生影响,因此选择一个相对比较合理的权值是非常重要的。实际使用时,应该用较小的随机数来对权值进行初始化,随机数的大小的分布也应该是均匀的。
③学习率的选择。神经网络中有一个学习率的概念,为了保证系统的稳定性,通常应该取较小的学习率,一般选取范围在0.01―0.8。如果学习率过大,可能会导致系统不稳定。如果学习率过小,会使得学习时间变长,收敛也会变慢。
3.3 BP神经网络应用过程
BP神经网络应用过程如图2所示。
3.4 BP网络三个层的神经元数目的确定
目前还没有什么成熟的定理能确定各层神经元的神经元个数和含有几层网络,大量经验表明,三层的网络可以逼近任意一个非线性网络。
首先,使用已知的样本对BP网络进行训练。对于输入层的结点,其数目是之前车牌图像预处理后输出特征的维数。
对于隐含层的结点数目,一般情况下,隐含层神经元数目和BP网络精确度成正比,数目越多,神经网络的训练时间也会越长。但是,当隐含层神经元数目过大时,识别的准确率就会受到影响,同时也会使得网络的抗噪声能力下降[4]。综合考虑上述情况,根据以往经验,使用10个隐含层的神经元。
对于输出层结点数目,受输入层结点数的约束。本文中,我们采用8421码对数字0―9,字母A―Z,省名简称“京津沪冀鲁豫鄂苏皖晋湘桂闽川浙甘宁陕吉辽台”依次进行编码。例如,对于输出“1”,表示为(0,0,0,0,0,1),对于输出“A”,表示为(0,0,1,0,1,0),对于输出“京”,表示为(1,0,0,1,0,0)。因此,采用6个输出层神经元。
然而,实验中发现,当使用上述结构的标准输出向量时,会出现BP神经网络无法收敛的问题。原因在于BP网络学习中采用的激活函数的输出只可能无限接近1或0,但不会是1或0。针对这个问题,对标准输出向量的编码方式进行如下调整:用0.1代替0,用0.9代替1。即对于输出“0”,表示为(0.1,0.1,0.1,0.1,0.1,0.1),对于输出“1”,表示为(0.1,0.1,0.1,0.1,0.1,0.9),对于输出“A”,表示为(0.1,0.1,0.9,0.1,0.9,0.1),对于输出“京”,表示为(0.9,0.1,0.1,0.9,0.1,0.1),以此类推。
3.5 BP神经网络识别字符的流程
使用BP神经网络进行字符识别,实际上可看作是训练和识别两个过程。其中,训练就是提取训练样本的特征向量。第一步,将挑选好的图像形式的已知数据作为训练样本,这些已知数据能够很好的反应样本的可分性。第二步,在训练样本图像经过进行特征提取操作后送入BP网络中进行训练。训练之前,要提前输入一系列训练参数。
经过BP网络的训练后,就可以用其对待识别数据进行识别。待识别数据在经过灰度化、二值化、归一化、分割等预处理操作后,再经过特征向量提取,最后在BP网络中进行识别,得出识别结果。
3.6 实验结果
实验中采用了在不同环境下拍摄到的100张车牌图像,这些牌照的清晰程度、区域大小都不相同,按照前文所述BP神经网络算法进行模拟实验。根据表1所示识别结果,由于个别字母与数字之间有相似之处,导致其识别率相对较低,分别为95.9%、96.2%。而车牌中汉子字符数量很少,且特征相对比较明显,使得其识别率相对较高,实验结果为98.0%。
4 结论(Conclusion)
基于BP神经网络的车牌字符识别方法,对于比较清晰的车牌图像,本方法能有效识别其中的字符,但对于较低解析度和较为模糊的车牌还需要进行很多预处理的工作,因为必须将车牌中的字符独立地被分割后,才能用该方法进行识别。而事实上,在那些图像不够清晰的车牌上分割出独立的字符也是特别困难的。虽然,BP神经网络在识别效果上提高的余地较大,具有较强的容错能力,还可进一步训练学习,识别率较高,但其识别速度较慢,不能满足实时性的要求。
参考文献(References)
[1] 郭荣燕,胡雪惠.BP神经网络在车牌字符识别中的应用[J].计
算机仿真,2010(9):299-301;350.
[2] 刘静.几种车牌字符识别算法的比较[J].电脑与电信,2008(8):
72-73;78.
[3] 石云.BP神经网络的Matlab实现[J].湘南学院学报,2010(5):86-
88;111.
[4] 尹念东.BP神经网络的应用设计[J].信息技术,2003(6):18-20.
作者简介:
篇9
[关键词] 小生境遗传算法 神经网络 股票 预测
一、引言
股票和股票市场对国家企业的经济发展起到了积极的作用,如可以为投资者开拓投资渠道,增强投资的流动性和灵活性等。但股票价格的形成机制是颇为复杂的,股票价格既受到多种因素,诸如:政治,经济,市场因素的影响,亦受技术和投资者行为因素的影响,个别因素的波动作用都可能会影响到股票价格的剧烈波动。因此,股票价格和各影响因素之间很难直接建立明确的函数关系表达式。针对这一情况,将可有效处理非线性问题的神经网络引入到股票价格的预测中来,但神经网络收敛慢,易陷入局部极小点,出现振荡,鲁棒性差。所以有的学者用遗传算法(ga)来优化神经网络,这种神经网络可能获得个别的甚至局部的最优解,即ga早熟现象。本文引进能较有效地保持种群多样性的小生境遗传算法(nga),采用nga优化与用ga优化的bp网络权值进行对比,证实了nga的判别准确性和寻优能力。
二、小生境遗传算法优化的神经网络
1.bp神经网络
反向传播(bp)算法又称为误差逆传播校正方法,它是1974年p.werbos(哈佛大学)提出的。133229.CoMbp算法用来训练多层前馈神经网络,属于监督学习算法。bp网络具有结构清晰,易实现,计算功能强大等特点。因而是目前最常见,使用最广泛的一种神经网络。但是在实际应用中,传统的bp算法存在以下问题:收敛速度慢;若加快收敛速度易产生振荡;存在局部极小和平台问题;泛化能力差;隐节点数和初始值的选取缺乏理论指导;未考虑样本选择对系统学习的影响等。所以很多学者提出许多改进的方法,用小生境遗传算法优化神经网络权值的神经网络来预测股票价格。
2.小生境遗传算法
小生境遗传算法(iche genetical gorihm)的基本思想是:首先比较任意两个个体间的距离与给定值的大小,若该距离小于给定值,则比较其适应值大小。对适应值较小的个体施加一个较强的惩罚,极大地降低其适应值。也就是说,在距离l内将只有一个优良个体,从而既维护了群体的多样性,又使得各个体之间保持一定的距离,并使得个体能够在整个约束空间中分散开来。
3.神经网络连接权的优化
用小生境遗传算法可以优化神经网络连接权,神经网络结构,学习规则等,这里我们对神经网络的连接权进行优化,具体步骤如下:
(1)随机产生一组权值分布,采用某种编码方案对该组中的每个权值(或阈值)进行编码,进而构造出一个码串(每个码串代表网络的一种权值分布),在网络结构和学习规则已确定的前提下,该码串就对应一个权值和阈值取特定值的一个神经网络。
(2)对所产生的神经网络计算它的误差函数,从而确定其适应度函数值,误差越大,则适应度越小。
(3)选择若干适应度函数值最大的个体,直接遗传给下一代。
(4)利用交叉和变异等遗传操作算子对当前一代群体进行处理,产生下一代群体。
(5)重复(2)(3)(4),使初始确定的一组权值分布得到不断地进化,直到训练目标得到满足为止。
这种由小生境遗传算法训练神经网络的方法也可以称做混和训练法。将基于小生境遗传算法的遗传进化方法和基于梯度下降的反传训练相结合,这种训练方法吸取两种方法的各自特点,所以收敛速度快。
三、股票价格预测仿真
根据经验选取输入预测日前四天开盘价、收盘价归一化后做为作为输入量,输出为第五天收盘价归一化数值。所以,本文采用神经网络结构为(8,5,1),即网络的输入层6个节点,隐含层9个节点,输出层1个节点。本文选择了“xdg 新梅(600732)”从2006年3月14日到2006年7月1日数据进行了仿真。利用matlab6.5编程,取70组训练样本和30组测试样本。如图(1)表示用遗传算法和小生境遗传算法对神经网络的权值进行优化时,误差曲线变化;从图中可以看出,小生境遗传算法收敛速度要快;图(2)表示股票预测值和实际值比较,从图中可以看出,遗传算法和小生境遗传算法对神经网络的权值的模型进行股票价格的预测,都能预测出股票走向趋势,但是,后者的预测精度显然要比前者高。
四、结束语
股票市场的不确定因素太多,股票的价格更是多种因素影响的集合体,是典型的非线性动力学问题。股票价格的中长期准确预测很难。本文建立了用小生境遗传算来优化神经网络模型来预测股票价格,结果表明,这种方法比单用遗传算法优化的神经网络收敛速度快,预测精度高。对于股票价格预测具有较好的应用价值。
参考文献:
[1]龙建成李小平:基于神经网络的股票市场趋势预测[j].西安电子科技大学学报(自然科学版.2005.3(32):460-463
[2]王波张凤玲:神经网络与时间序列模型在股票预测中的比较[j].第27卷第6期武汉理工大学学报·信息与管理工程版.2005.9(27):69-72
篇10
关键词:神经网络;Adaboost算法;强预测器;迭代算法;税收预测
中图分类号: TP183
文献标志码:A
Tax forecasting based on Adaboost algorithm and BP neural network
LI Xiang*, ZHU Quan-yin
Faculty of Computer Engineering, Huaiyin Institute of Technology, Huai’an Jiangsu 223003, China
Abstract:
In view of the lower accuracy of traditional tax forecasting models, the authors put forward a method of combining the Adaboost algorithm with BP neural network to forecast revenue. Firstly, the method performed the pretreatment for the historical tax data and initialized the distribution weights of test data; secondly, it initialized the weights and thresholds of BP neural network, and used BP neural network as a weak predictor to train the tax data repeatedly and adjust the weights; finally, it made more weak predictors of BP neural network to form new strong predictors by Adaboost algorithm and forecasted. The authors also carried out simulation experiment for the tax data of China from 1990 to 2010. The results show that this method has reduced the relative value of mean error from 0.50% to 0.18% compared to the traditional BP network, has effectively reduced the effect when single BP gets trapped in local minima, and has improved the prediction accuracy of network.
英文关键词 Key words:
neural network; Adaboost algorithm;strong predictor;iterative algorithm; tax forecasting
0 引言
税收是实施财政政策的重要工具,也是联系宏微观经济的一种纽带。作为国家宏观调控体系的重要组成部分,税收也是国家驾驭市场经济最主要、最有效、最常用的手段之一[1]。因此,税收预测的科学性和准确性具有重要的研究价值。
税收数据是一种动态、非线性的时间序列数据,受到政治、经济、文化等因素影响,税收数据的预测精度主要取决于预测算法。国内外学者当前对税收预测的研究方法,主要集中于基于线性回归方法、时间序列分析方法和神经网络预测方法。文献[2]采用线性回归方法对税收进行预测,由于影响税收预测的因素较多,且这些因素之间表现出较强的非线性特征,所以线性回归模型预测的精度不高。文献[3-4]中提出使用反向反馈传播(Back Propagation,BP)神经网络进行税收预测,但该方法没有克服传统BP神经网络存在的缺陷,容易陷入局部极小值,算法收敛速度较慢。文献[5-6]中提出使用Elman神经网络进行税收预测,取得了比传统BP神经网络更高的预测精度。但由于Elman神经网路的学习过程与前馈神经网络类似,也会出现收敛速度慢和易收敛到局部极小的缺陷,导致预测结果不稳定[7]。
本文针对上述问题,提出基于Adaboost算法和BP神经网络的税收预测方法,并将该方法应用于我国1990—2010年税收数据仿真实验,证明了本文方法的有效性。
1 BP神经网络与Adaboost算法
1.1 BP神经网络原理
BP网络是典型的前馈神经网络,其权值训练中采用误差逆向传播的方式,具有非线性连续有理函数的逼近功能[8]。在信号前向传递过程中,输入信号从输入层进入,经过隐含层处理,到达输出层。每一层的神经元状态只影响下一层的神经元状态。判断输出层的结果是否为期望输出,如果不是,则转入反向传播,然后根据预测误差调整网络权值和阈值,从而使BP神经网络预测输出不断逼近期望输出[9]。由于结构简单,可调参数多,训练算法多,操控性好,BP 神经网络获得了广泛的实际应用[10]。BP神经网络的拓扑结构如图1所示。