更全的杂志信息网

改进人工蜂群优化BP神经网络的分类研究

更新时间:2009-03-28

1 引言

BP(Back Propagation)神经网络[1]是按照误差反向传播进行训练的多层前馈(Multilayer feed-forward)神经网络,是应用最广泛的人工神经网络模型。但是BP神经网络尚有如下不足:(1)BP算法是随机梯度下降算法[2],全局搜索能力差,容易陷入局部最优;(2)BP神经网络的初始权值和阈值是随机而来[3],进而造成结果波动范围比较大,鲁棒性低。

为了克服这些缺点,诸多学者引入群智能算法对BP神经网络进行了改进,有代表性的是蚁群算法[4](Ant Colony Optimization,AOC)、粒子群算法[5](Particle Swarm Optimization,PSO)和遗传算法[6](Genetic Algorithm,GA)。但是它们存在许多缺点,其中ACO算法寻优比较盲目,收敛速度慢;由于信息素更新能力有限,算法容易陷入局部最优解;当问题规模增大时,算法效率明显下降;PSO算法在迭代后期难以保持种群多样性,容易陷入局部最优解,且搜索精度不高;GA算法易早熟收敛,在迭代后期收敛速度慢。

人工蜂群[7](Artificial Bee Colony,ABC)算法是由Karaboga在2005年比较系统地提出的,它是一种基于蜜蜂采蜜行为的优化算法,其主要优点是全局寻优能力强;能利用蜜蜂之间寻优的正反馈机制均有效加快全局寻优过程,尤其适用于求解组合优化和连续优化以及复杂的优化问题[8]。然而,标准ABC算法存在局部探索能力较差,开发能力弱等问题。

针对神经网络和人工蜂群的缺点,本文提出一种基于改进人工蜂群和误差反向传播的神经网络训练方法——IABC-BP(Improved Artificial Bee Colony and Back Propagation)。首先,根据跟随蜂到某一位置后,先在附近寻找最优蜜源这一习性来增强局部探索能力。其次,用全局最优来引导跟随蜂的搜索轨迹,增强开发能力。最后,用改进的人工蜂群全局搜索神经网络的初始权重,防止神经网络陷入局部最优。用新的方法对神经网络训练进行分类,实验结果表明,该算法相对于标准的BP神经网络,有效提高了分类正确率,泛化能力较强。

2 人工蜂群算法原理及改进

2.1 人工蜂群算法

人工蜂群算法在求解最小值优化问题时,将优质蜜源的位置抽象成优化问题的可行解,人工蜂群寻找蜜源的过程就是算法搜寻最优解的过程。该算法把人工蜂群分为雇佣蜂、跟随蜂和侦查蜂3种角色,群体的一半由雇佣蜂构成,另一半由跟随蜂构成,每一处蜜源仅仅有一个雇佣蜂,侦查蜂由进化停滞的雇佣蜂转化而来,蜜源的含蜜量则对应优化问题的适应度值,算法通过三种蜜蜂之间的相互协作来实现对最优蜜源的搜索过程。蜂群的搜索过程如下。

由表13说明,土样1土壤中添加2%土壤修复剂Ⅱ(E)时土壤中的重金属锌、铅、铬、铜、砷、镉含量均有所下降。其中在种有马铃薯的土壤区域主要污染物锌含量下降幅度最大,下降值为139.7mg/L。在种有刺儿菜的土壤区域主要污染物砷含量下降幅度最大,最大值为3.9mg/L。

(1)初始化:设ABC算法生成了SN个解,每个解Xi(i=1,2,…,SN)是一个D维向量,每个可行解对应一个蜜源。蜜源i的初始值依照式(1)在搜索空间随机产生。

 

其中,xij∈(L min,Lmax),Lmin和Lmax分别表示搜索空间的最小值和最大值 j∈(1 ,2,…,D )。

(2)雇佣蜂负责全局搜索:依次对雇佣蜂中每个蜜源进行更新操作,即随机选择蜜源Xi中任意的一维分量按式(2)进行变异,产生新蜜源。

 

其中,Xk是随机选取的一个蜜源,k∈(1 ,2,…,SN ) ;j∈(1 ,2,…,D )是随机选取的,且k≠i;φ∈[- 1,1]是控制搜索步长的随机数。在产生新的候选蜜源后,计算其适应度。雇佣蜂采用贪婪原则在和xij之间进行选择:如果新蜜源的适应度值高于原蜜源xij,则以替换 xij,否则保持 xij不变,并且记录 xij的更新失败次数加1。

本实验利用内蒙古传统发酵乳制品奶豆腐,通过初筛和复筛,挑选出16株发酵性能良好的嗜热链球菌(T1~T16),并结合镜检观察、生化试验以及16SrDNA基因序列分析对菌株进行鉴定。结果显示这16株菌发酵酸乳至70°T所需时间为4-8 h,各菌株在产酸、持水性以及蛋白水解能力存在差异。菌株T 9和T16各方面的性能均比较好,具有良好的产酸能力,后酸能力弱,并且持水性和蛋白水解能力均比较好,制备的发酵乳酸奶风味浓郁,口感优越,质地良好,可用于开发具有良好发酵特性的直投式酸奶发酵剂。

(3)跟随蜂局部搜索:当雇佣蜂搜索完成后,它们把蜜源信息分享给跟随蜂,跟随蜂根据花蜜量,按照概率pi选择蜜源位置,选定蜜源之后,在其附近按照式(2)搜索出新的蜜源,并根据贪婪原则选择蜜源。

 

其中,fit(X i)为蜜源i的适应度,f(x)是人工蜂群优化的目标函数。

目前,“互联网+”还不能完全支撑起会计工作,因为在实际应用中,财务会计软件大都相似,没有创新性。这就会造成由于财务会计的软件和功能单一而在财务系统中产生漏洞的现象,加大了财务信息泄露的风险;再者单一功能没有创新的软件也会导致会计工作效率和质量的下降以及技术的落后。

实际的蜜蜂采蜜过程中,当雇佣蜂把蜜源信息分享给跟随蜂后,跟随蜂来到这个区域,会选择这个区域中最合适的蜜源,因此跟随蜂和雇佣蜂在寻找蜜源的方式上不同。Zhu等[9]学者指出在ABC搜索公式(2)中,由于φ∈[- 1,1]是随机数且xkj为随机选取的种群中的个体的一个分量,使得该搜索方程具有较好的探索能力,却忽略了算法的开发能力,于是受粒子群算法的启发,他们提出如下的搜索公式:

2.2 改进的人工蜂群算法

(4)侦查蜂处理进化失败的蜜源:如果某个解Xi经过指定的limit次循环没有得到改善,则该解对应的雇佣蜂转变为侦查蜂,通过式(1)产生一个新解来代替该解,并计算它的适应度。然后返回到雇佣蜂阶段,开始下一轮迭代。

(4)使用公式(3)计算每个蜜源被选择的概率,跟随蜂选定蜜源后,使用公式(7)搜索新的蜜源,然后对新的蜜源使用BP算法计算目标函数值,然后使用公式(4)计算新的蜜源的适应度,并根据贪婪原则选择新旧蜜源。

 

其中,∂∈[0 , 1]是学习率,反映的是训练学习的速度。同理,可得隐含层的权值和阈值。

 

其中,Xk是从当前蜂群中随机选取的不同于Xi的蜜源,Xbest为整个蜂群搜索到的最优蜜源位置,φ∈[0 , 1]为随机数。与式(2)相比,公式(6)由最优位置引导蜂群搜索轨迹并仅在最优位置附近产生新的候选解,从而大大提高了算法的开发能力,但是忽略了算法的探索能力。在实际的蜜蜂采蜜活动中,跟随蜂在第一次到达某一区域后会根据蜂蜜量寻找这一区域内的最优位置。为了平衡算法探索能力和开发能力,本文跟随蜂的搜索方程采用公式(7)来描述。

 

其中,k,j,uij和 Xbest的选取与式(5)相同,Ni是 Xi的邻域,是Xi邻域中的最优解。式(7)是在邻域最优解的附近产生的候选解,与式(2)相比更加符合蜜蜂的实际活动,增强了算法的开发能力,防止算法陷入局部最优,与式(5)相比,保留了算法的开发能力,也增加了算法的探索能力。在计算过程中,采用欧氏距离来寻找邻域,Xi到其余所有解的平均半径mi用公式(8)表示,dij表示 Xi和 Xj的欧氏距离,只要 dij<mi就可认为Xj∈Ni。假设Ni中共有S个解,其中也包含Xi,适应度最大解就是,其计算公式如式(9)所示。

 

改进的人工蜂群算法——IABC,从实际情况出发,改进跟随蜂搜索方程,增强了局部探索能力,同时也能提高开发能力。

3 改进人工蜂群优化BP神经网络

3.1 BP神经网络

BP神经网络是由一个输入层、一个或多个隐含层和一个输出层组成[11],每层由神经元组成。典型的BP神经网络结构如图1所示。

  

图1 BP神经网络结构图

在BP网络中输入向量X=(x 1,x2,…,xn ),隐含层各神经元输入由式(10)计算:

 

其中,wih是输入层第i个神经元和隐藏层第h个神经元之间的权值,θh是隐藏层第h个神经元的阈值。隐含层各神经元的输出由公式(11)计算:

作用机制 依米珠单抗是一个人源化单克隆修饰免疫球蛋白G4(IgG4)抗体,从基因工程的哺乳动物细胞中提取而来,分子中含有结合活性FⅨ和FⅩ的双特异性抗体结构[8]。血浆中依米珠单抗代替失活的FⅧ,与活性FⅨ和FⅩ结合,实现有效止血作用[9]。依米珠单抗在卵磷脂存在条件下同步与FⅨ和FⅩ结合形成三元复合物,复合物的浓度与依米珠单抗浓度呈钟形关系。进一步研究发现,依米珠单抗通过温和的作用力与FⅨ、FⅨa、FⅩ及 FⅩa的EGF像域识别结合,KD分别为 1.58、1.52、 1.85、0.978 μmol·L-1,大多数的 FⅨ、FⅨa、FⅩ和 FⅩa可以通过其他途径发挥凝血作用[6,10]。

 

同理,输出层各神经元的输出为yoo

输出层所有神经元的误差平方和是BP算法优化的目标函数值,由式(12)计算:

 

其中,do表示输出层神经元O的期望输出值。根据梯度下降法,输出层各神经元的误差由公式(13)得到:

通过以上研究分析,集成管块式融雪剂喷洒装置安装在城市快速路中央隔离带处,能够满足道路建筑限界的要求,可以保证车辆行驶安全,不会对道路使用带来严重不良影响。因此,为更好地提升城市冬季除雪应急保障能力,可逐步推广该装置在城市快速路上的安装使用。

 

输出层的权值和阈值可以通过公式(14)和公式(15)调整:

数学运算是在明晰运算对象的基础上,依据运算法则解决数学问题的过程.主要包括:理解运算对象,掌握运算法则,探究运算方向,选择运算方法,设计运算程序,求得运算结果等.数学运算是数学活动的基本形式,也是演绎推理的一种形式,是得到数学结果的重要手段[5].研究发现,2018年的高考试题中很多都涉及到对数学运算素养的考查,下面以理科数学16题为例进行分析.

 

其中,k和 j的选取与式(2)相同;uij为[0,1.5]之间的随机数;Xbest为整个蜂群搜索到的最优蜜源位置。可以看出,受粒子群启发的搜索方程式(5)由于有最优位置Xbest的引导,在保证算法的探索能力的同时也在一定程度上提高了算法的开发能力。为了进一步提高算法的开发能力,高卫峰等[10]受差分进化算法的启发,提出如下的搜索方程:

如果不能从输出层得到期望的结果,它需要不断调整权值和阈值,逐渐使误差变小。BP神经网络具有很强的自学习能力,并能迅速获得最优解。

3.2 IABC-BP算法

在用改进的人工蜂群优化BP神经网络过程中,优化的对象为网络的权值和阈值,网络的结构和文献[12]的相同。人工蜂群的目标函数值为样本的预测值和实际值的均方误差MSE(Mean Square Error),当MSE越小,蜜源的适应度就越大。选取使适应度最大的蜜源,然后用这组权值和阈值初始化神经网络,用BP算法训练网络,然后对测试样本进行分类。人工蜂群蜜源的维数由公式(16)计算可得:

 

其中,I、H、O分别是输入层神经元个数、隐含层神经元个数、输出层神经元个数。改进的人工蜂群优化BP神经的流程图如图2所示。

具体实现步骤如下:

语音系统主要由功放、号角和麦克风组成,实现人机对话,称重过程中具有引导作用,具体语音为:“请刷卡”→“刷卡成功,请上秤”→“请停到秤台中间”→“称重完毕,车号为某某,重量多少”→“称重完毕,请离开。”

大会礼堂的门前悬挂着十几米长的虚拟巨形横幅:Everything in touch。除了能凑近细细观察到金色的边坠是数据流凑成的,与普通横幅没有什么两样。大厅瓷砖上,铺设着数据流汇聚的莹蓝色地毯。她一踏上去,数据流便出现涟漪般的聚合与分散,如同被海风惊扰的平静河流上,月光倾洒的银辉波荡摇曳。

(1)设定改进人工蜂群的参数,使用公式(1)初始化SN个蜜源,即SN组BP神经网络的初始权值和阈值。

(2)进入循环阶段直到达到最大循环次数。

价值取向指教师怎样的教学劳动能够为学生所认可和欣赏的价值评价。确立了科学课堂意识的教师,会以学生的身心特点为根据,区别学生的认知水平、需求特点,认真而不是随意的、真诚而不是敷衍的、民主而不是独断的、开放而不是封闭地进行课程决策、课程编制及课程实施,以此作为自己的根本价值主张,为学生量身定做课程的实施方案。

(3)雇佣蜂使用公式(2)搜索新的蜜源,对新的蜜源使用BP算法计算目标函数值,然后使用公式(4)计算新的蜜源的适应度,并根据贪婪原则选择新旧蜜源。

(7)如果达到最大循环次数,则进入步骤(8),否者进入步骤(3)。

吐哈油田均采用高压柱塞式注水泵注水。由于油田注水量的波动,注水泵难以调节水量部分,高压水打回流造成能源的浪费。目前吐哈油田采油很多变频装置,解决了柱塞泵排量调节的问题,降低了能耗。目前因为注水系统运行状况的变化没有及时调整注水泵运行工况,仍然存在回流现象。抽测的9个注水系统中果7注水系统存在回流量。

(5)如果全局最优蜜源的目标函数值满足最小的MSE或者两次MSE之差小于某个定值,则进入步骤(8)。

(6)侦查蜂处理进化失败的蜜源。

  

图2 IABC-BP神经网络结构图

通过以上的分析和论述可知,目前我国的高校学生党建工作取得了一定的进步,其科学化水平也得到了进一步提高,为国家和社会培养了更多优秀的人才。但是,高校学生党建工作仍然存在着很多问题。

(8)用最优蜜源初始化神经网络,然后使用BP算法训练网络。

(9)将测试集进行分类,评价测试集的分类错误率。

4 实验结果与分析

本文采用WEKA数据挖掘平台进行仿真,运行环境为Intel®CoreTMi5-2310 2.9处理器,2.89 GHz主频以及 3.34 GB内存,操作系统是Ubuntu16.04。

4.1 IABC的结果与分析

为了测试本文提出的改进的人工蜂群算法的性能以及先进性,选取10个常用的测试函数如表1所示,其中函数1~5为单峰值函数,函数6~10是多峰值函数,将这10个函数分别用ABC、GABC和IABC进行测试对比。算法的参数设置为:蜂群规模为100,最大循环次数为1 000,蜂群进化失败最大值为100,维数为50。表2是在相同的测试条件下,三种算法的测试结果,其中Best、Worst、Mean和Std[10]分别为算法独立实验30次的最优值、最差值、平均值和标准差,Best和Worst反映了解的质量,Std反映了算法的鲁棒性和稳定性。

从表2中可以看出,IABC算法在函数 f1、f2、f5、f6、f7、f8、f9、f10上表现显著,和ABC以及GABC相比精度提高了103~107倍,在函数 f3和 f4上精度提高了2倍,同时在稳定性上也都大幅提高。本文提出的IABC算法能够在高维上对目标函数进行优化,并且相比于现有的优秀算法改进效果明显,达到了预期的结果。

4.2 IABC-BP神经网络的结果与分析

为了客观地比较和分析IABC-BP神经网络和传统的BP神经网络的分类效果,本文采用UCI机器学习库[13]中的8组数据集进行实验,它们分别是Breast Cancer、Heart Disease、Pima Diabetes、Iris、Breast Tissue、Blood Transfusion Service Center、Banknote Authentication 和Climate Model Simulation Crashes。这8组数据集的样本个数、属性个数和类别个数如表3所示。其中将每个数据集中的40%的样本作为测试集,40%的样本作为训练集,20%的样本作为验证集[14],验证集是为了防止过拟合。

 

表1 测试函数

  

?

 

表2ABC,GABC和IABC的对比实验结果

  

?

 

表3 数据集信息

  

?

将这8个数据集分别用IABC-BP神经网络和BP神经网络进行10次独立的测试。算法的参数设置为:蜂群规模为20,蜂群最大循环次数为100,神经网络最大训练次数为500,学习率为0.3,隐含层神经元的个数为6,激活函数为S型函数,两次MSE之差小于10-4时,跳出循环。统计10次测试的平方根误差的均值MRMSE(Mean of Root Mean Square Error)、绝对平均误差的均值 MMAE(Mean of Mean Absolute Error)、平均运行时间ART(Average Running Time)以及分类正确率中的最好值Best、最差值Worst和平均值Mean。实验结果如表4和表5所示。

系统配置mcgsTpc触摸屏作为生产现场的人机操作界面,系统运行时不仅可以由按钮操作面板发出控制指令,还可以通过触摸屏控制和显示系统运行状态[4-5]。

 

表4IABC-BP和BP的MRMSE、MMAE和ART

  

?

 

表5 IABC-BP和BP的分类正确率%

  

?

由表4和表5可知,在8个数据集上,IABC-BP在MRMSE和MMAE上比BP提高了10-3~10-2倍。 IABC-BP的分类正确率的平均值明显高于BP的分类正确率的平均值,大约提高了1%~3%。在Heart、Diabetes、Iris和Transfusion数据集上IABC-BP的Best值相比于BP提高了约1%~2%,在其余数据集上持平,表明IABC-BP的全局寻优能力高于BP的全局寻优能力。在所有数据集上,IABC-BP的Worst值高于BP的值,表明IABC-BP比BP在寻优能力上更加稳定,跳出局部最优的能力比较强。本文提出的IABC-BP算法的寻优能力和精度都比BP算法好。

IABC-BP是在ABC算法的基础上对BP神经网络的初始权值做优化,表4中IABC-BP的ART都比BP的ART要高。BP和IABC-BP的时间复杂度分别由公式(17)和(18)表示:

On Different Standards for Indoor Vibration Caused By Subway Trains……………ZHOU Xingmin, WANG Qiaoyan(2·1)

 

其中,M是循环次数,N是样本个数,n1、n2、n3分别是输入层、隐含层和输出层的节点个数。SN是蜂群个数,D是维数。IABC-BP的时间复杂度是BP的M×SN倍,IABC-BP以提高时间复杂度为代价来提高分类正确率。

5 结束语

本文提出了一种改进的人工蜂群算法,优化了跟随蜂的搜索行为,使算法更符合现实蜂群的采蜜行为,提高了人工蜂群算法的探索能力和开发能力。将改进的人工蜂群引入到BP神经网络中,利用人工蜂群的全局寻优能力有效防止了目标函数陷入局部最优,使算法具有较好的分类效果,较强的鲁棒性。下一步工作将进一步优化BP网络的结构,使分类效果更加显著,同时选取合适的参数来降低计算复杂度。

参考文献

[1]Rumelhart D E,Hinton G E,Williams R J.Learning representations by back-propagating errors[J].Nature,1986,323:533-536.

[2]Lee H K H.Model selection for neural network classification[J].Journal of Classification,2001,18(2):227-243.

[3]王燕妮,樊养余.改进BP神经网络的自适应预测算法[J].计算机工程与应用,2010,46(17):23-26.

[4]裴振兵,陈雪波.改进蚁群算法及在车辆运输调度中的应用[J].信息与控制,2015,44(6):753-758.

[5]周利军,彭卫,邹芳,等.自适应变异粒子群算法[J].计算机工程与应用,2016,52(7):50-55.

[6]肖志权,崔玲丽.基于遗传算法的柔性机械臂的同时优化设计[J].机器人,2004,26(2).

[7]Karaboga D.An idea based on honey bee swarm for numerical optimization,Technical Report-TR06[R].Engineering Faculty Erciyes University,2005.

[8]Karaboga D,Basturk B.A powerful and efficient algorithm for numerical function optimization:Artificial Bee Colony(ABC) algorithm[J].Journal of Global Optimization,2007,39.

[9]Zhu G,Kwong S.Gbest-guided artificial bee colony algorithm for numerical function optimization[J].Applied Mathematics and Computation,2010,217(7):3166-3173.

[10]Gao W F,Liu S Y.A modified artificial bee colony algorithm[J].Computers&Operations Research,2012,39(3):687-697.

[11]谢文兰,石跃祥,肖平.应用BP神经网络对自然图像分类[J].计算机工程与应用,2010,46(2):163-166.

[12]Bullinaria J A.Yahya K A.Artificial Bee Colony training of neural networks:comparison with back-propagation[J].Memetic Comp,2014,6:171-182.

[13]Sarangi P P,Sahu A,Panda M.Training a feed-forward neural network using artificial bee colony with backpropagation algorithm[J].Advancesin IntelligentSystems&Computing,2014,243:511-519.

[14]Prechelt L P.A set of neural network benchmark problems and benchmarking rules,Technical Report 21[R].Fakult AatfAur Informatik University,Karlsruhe,Germany,1994.

 
韦鹏宇,潘福成,李帅
《计算机工程与应用》2018年第10期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号