[摘 要] 误差反向传播神经 网络 (bpnn)由于优越的非线性数据处理性能以及较强的 学习 能力而被广泛地运用于电信业务的预测当中。然而,神经网络常常存在着收敛于局部最优解、学习时间长等缺陷而 影响 其预测效果,而遗传算法(ga)是一种全局寻优搜索算法,能够有效克服上述缺陷。本文针对影响电信业务收入的主要因素,将bp神经网络与遗传算法有机结合起来,建立了相应的遗传神经网络模型用于电信业务收入预测,并利用实际数据进行效果验证。实验表明,该预测模型具有很强的学习能力和自适应性,其预测结果优于bp神经网络模型,而且具有良好的泛化性。
[关键词] 遗传神经网络 电信业务收入 预测
一、引言
电信业务预测是通信网络分阶段建设规划的前提条件,同时也是规划期电信业务量和收入估算的必要条件之一。预测 方法 的选择直接关系到预测目标的实现和预测结果的精确程度。近年来人工神经网络技术和遗传算法逐渐得到预测 科学 工作者的重视,误差反向传播(bp)神经网络已经在预测领域中得到了广泛的 应用 ,是一种由多个神经元以某种规则连接而形成的层次网络结构,其基本原理是这些神经元之间“相互协作”,它有许多优点,对不完全信,具有良好的适应性;对非线性输入输出关系的学习更具有优越性,其描述 问题 的能力很强。但是bp算法是一种基于误差函数梯度下降的学习方法,学习过程收敛速度较慢;其次,bp神经网络训练开始时初始权值是随机给定的,这对网络的训练效果也会有极大影响,甚至导致网络陷入局部最小点。Www.lw881.com
遗传算法 (ga)有很好的全局搜索能力,能从概率的意义上以随机的方式寻求到问题的最优解。但另一方面,遗传算法应用中容易产生早熟现象,局部寻优能力较差,而遗传算法与神经网络的结合可以发挥各自的优点。本文 研究 采用遗传神经网络应用到电信业务的训练中,结果表明该方法是可效的。
本文其它结构安排如下:第二部分为遗传神经网络模型的结构与算法介绍;第三部分为数据来源及实证结果 分析 ;最后为本文结论。
二、遗传神经网络模型结构及算法
1.遗传神经网络模型结构
多层前向神经网络在 经济 领域中是被普遍运用的一种强有力的学习系统,系统结构简单易于编程。在其具体应用中,最重要的首先就是确定网络结构,而网络结构的关键在于隐含层及其结点数。研究表明,对于学习任何函数来讲,一个隐含层足够。因此一个三层前向神经网络可以逼近任意非线性函数。在前向神经网络结构中,如果采用误差反向传播算法(back propagation, bp)来对网络结构的权系数进行学习,那就是我们通常所说的bp神经网络模型。本研究中的遗传神经网络模型结构就是建立在一个三层前向神经网络基础之上,将遗传算法与神经网络有机地结合起来的一种混合模型。
网络的具体结构如图1
该网络分为三层:第一层为输入层,共有n个节点;第二层为隐含层,共有m个节点;第三层为输出层,有一个节点。网络的目标函数为 ,式中y为实际输出,y为期望输出,ep为平方误差函数。
2.遗传神经网络模型的算法
在本模型算法当中,一种改进的遗传算法,被提出来优化模型结构的权值系数。该算法首先利用遗传算法善于发现最优解区域的特点同时,找出网络参数的最优初始值,然后再利用bp算法的寻优能力来搜索模型参数的最优解空间。算法具体步骤如下:
步骤1:初始化
用遗传算法来优化神经网络,主要是优化神经网络中神经元之间的连接权,初始化种群p(t)。由于网络的连接权是实数,因此本算法采用实数编码方案,避免权重步进变化。网络隐含层转移函数为sigmoid函数。在编码过程中,以神经网络的所有权值和阈值作为染色体的基因,各个基因组成染色体向量v=[v1,…vk,…vl],vk为染色体中的第k个基因。
步骤2:适应度 计算 及评价
根据适应度函数值对个体进行评价,对每个个体进行解码得到一个bp神经网络输入样本,计算出神经网络的输出误差值e,选择适应度函数
式中,ymk,ymk分别为第m个训练样本的第k个输入节点的期望输出和实际输出。适应度f越高,表明误差平方和越小,就越接近性能要求。
步骤3:遗传操作
(1)选择与复制
保留群体中适应度最高的个体,它不参与交叉和变异运算,而直接将其复制到下一代。群体中的其他个体,采用轮盘赌选择法进行选择,这样适应度小的个体也有机会进入被保留。因此保证了群体中个体的多样性,防止算法落入局部最优。如果m个个体中的第i个个体的适应度为fi,则其被选中的概率为:
(2)交叉
由于权重系数采用实数编码,故本文采用算术交叉方式,以pc的概率对选择后的个体进行交叉。设在个体xa和个体xb之间进行交叉,交叉算子为
式中: ,为父代个体基因; ,为子代个体基因,a为区间[0,1]上的随机数。两个个体在交叉点后的基因进行交换,从而产生两个新个体。
(3)变异
变异是对按变异概率pm(这里取0.05)选取的个体进行变异,然后随机选取一变异点,变异的基因安 进行变异操作。若新产生的种群个体的最大适应度小于原种群个体的最大适应度,则用原种群适应度最大的个体替换新种群中适应度最大的个体。
步骤4: 产生新种群
将新个体插入到种群p(t)中,产生新的种群p(t+1),再把新种群个体的连接权赋予神经网络中,并计算新个体的适应度函数,若达到预定值εga,则进入下一步,否则继续进行遗传操作。
步骤5再用bp算法训练网络权值
达到所要求的性能指标或最大遗传代数后,将最终群体中的最优个体解码即可得到优化后的网络连接权系数。以ga遗传出的优化初值作为bp神经网络的初始权值,再用bp算法训练直到误差平方和达到指定精度 或达到设定的最大迭代次数,算法结束。
模型算法流程图见图2
:
三、数据来源及实证结果
1.实验数据来源
本文采用遗传神经网络的方法对我国某地市的电信公司的业务收入进行预测。影响电信 企业 收入的因素可以分两大类:内部因素和外部因素;内部因素指由企业自身对收入造成影响的主要因素,如产品数量、投入成本、工程投资、固定资产、企业体制等。外部因素指当地经济 发展 指标、当地人口数量、相关 法律 法规、消费者偏好、竞争环境等。
2.网络结构确定
以1999年~2003年的数据来预测第2004~2005年的数据,取神经网络的输入层节点数为m=20个,输出量n为1个即电信业务收入,由经验公式:k=(m+n)+c结合试错法,可得隐含层节点数s1=14,输出层数s2=1。
因此建立的网络基本参数为:拓扑结构20-14-1;
3.遗传神经网络训练:
应用遗传操作(选择、交叉、变异)训练神经网络,产生新一代个体,淘汰父代个体,直至达到最大进化代数或者产生最优解。给定精度(εga=0.005),经遗传优化训练后得到最终的初始权值和阈值。用遗传算法训练得到的初始权值和阈值建立bp网络模型,并训练网络直至达到指定精度。
4.结果检验
用训练好的权值和阈值的遗传神经网络对2004年和2005年的电信业务进行预测,并将预测结果与一般bp神经网络预测结果进行比较(见表2):