没有合适的资源?快使用搜索试试~ 我知道了~
沙特国王大学学报基于Salp群算法的软件故障预测问题建模Sofian Kassaymeha,a,Salwani Abdullah Ph.Da,Mohammed Azmi Al-Betarb,c,Mohammed Alweshahda数据挖掘和优化研究小组,人工智能技术中心,马来西亚Kebangsaan大学,马来西亚班吉雪兰莪州b阿拉伯联合酋长国阿治曼大学工程与信息技术学院人工智能研究中心(AIRC)c约旦伊尔比德Al-Balqa应用大学Al-Huson大学学院信息技术系。d约旦索尔特,Al-Balqa应用大学,阿卜杜拉·本·加齐王子通信和信息技术学院,计算机科学系阿提奇莱因福奥文章历史记录:收到2020年2021年1月24日修订2021年1月25日接受2021年2月11日在线提供保留字:Salp群优化反向传播神经网络软件可靠性软件故障估计A B S T R A C T提出了一种结合反向传播神经网络(BPNN)的Salp Swarm算法(SSA)来解决软件故障预测(SFP)问题。SFP问题是一个著名的软件工程问题,它与预测软件项目期间或之后可能出现为了找到最优的BPNN参数,提出了一种SSA优化器与BPNN相结合的方法(SSA-BPNN),以提高预测精度。针对SFP问题的几个数据集,所提出的方法进行了评估这些数据集在大小和复杂性方面都各不相同。使用各种性能测量(即,AUC、混淆矩阵、灵敏度、特异性、准确度和错误率)。在所有数据集上,SSA-BPNN得到的结果优于传统的BPNN所提出的方法也有能力优于几个国家的最先进的方法在相同的数据集方面的大多数上述性能指标。因此,SSA与BPNN的杂交是对软件工程问题的一个有价值的补充,并且可以用于实现各种预测问题的更高的预测精度版权所有©2021作者。由爱思唯尔公司出版代表沙特国王大学这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍预测是一种有监督的学习方法,用于根据先前的数据发现模式、知识或关系。多年来,已经基于各种学习模型建立了许多预测方法,例如朴素贝叶斯,决策树,支持向量机(SVM)(Rathore和Kumar,2017; Malhotra,2015; Bowes等人,2018; Menzies等人,2006年;Khoshgoftaar 和 Seliya , 2003 年 ) , 基 于 案 例 的 推 理 ( CR )(Alshareef等人,2015)、贝叶斯网络(BN)(Carrozza等人,2013)、模糊聚类(FC)(Yuan等人,2000年),人工神经网络(ANN)(Thwin*通讯作者。电子邮件地址:samsaak@gmail.com(S. Kassaymeh),salwani@ukm.edu.my(美国)Abdullah),m.M.S. ajman.ac.aemohbetar@bau.edu.jo,www.example.com(M.A. Al-Betar),bau.edu.jo(M.Alweshah)。沙特国王大学负责同行审查制作和主办:Elsevier例如,2005)、多层感知(MLP)(Carrozza等人,2013)和逻辑回归(LR)(Yuan等人, 2000年)。ANN是一种ML算法,计算机系统通过分析训练示例来学习完成大量任务在软件预测问题的背景下,BPNN是NN的最流行形式(Rashid等人, 2020),因为它涉及使用可靠的训练方法,使BPNN能够处理简单和复杂的问题(Abdullahet al.,1361)。实际上,反向传播是最流行的学习方法之一,因为它对于预测问题的准确性和自组织能力(Chaudhary 等人,2015; Kuldip Vora ,2014;Ever等人, 2019年)。因此,与其他ML技术相比,反向传播仍然是最广泛应用于预测问题的算法之一(Sekeroglu等人,2019; Ogidan等人, 2018年)。然而,传统的反向传播训练算法具有一些固有的缺点,例如收敛速度慢(Abusnaina等人,2018),容易陷入局部极小值的倾向(Abusnaina等人, 2018),以及需要太多的参数设置(Khazaiepoor等人,2020年)。因此,识别一种可以与BPNN结合使用的优化方法来克服这些问题将是对ML领域的宝贵贡献。https://doi.org/10.1016/j.jksuci.2021.01.0151319-1578/©2021作者。由爱思唯尔公司出版代表沙特国王大学这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表沙特国王大学学报杂志首页:www.sciencedirect.comS. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3366多年来,各种元启发式算法已经与不同种类的预测模型混合,以获得可以馈送到预测模型的优化权重,以试图实现更好的预测精度。这些努力导致了混合方法的发展,与标准预测方法相比,这些方法具有更好的性能(Bui,2019; Ojha等人, 2017年)。元启发式算法已经以混合形式与若干群智能优化算法一起使用,诸如人工蜂群优化(Karaboga和Ozturk,2009)、粒子群优化(Rakitianskaia和Engelbrecht ,2012; Alsaeedi 等人, 2020 )、布谷鸟搜索算法(Nawi等人, 2013)、萤火虫算法(Mandal等人,2015)、遗传算法(GA)(Baklacioglu等人,2020; Baklacioglu等人,2018年;Tian等人, 2018),基于地理学的优化(BBO),重力搜索算法(GSA)和灰狼优化(GWO)(Bui,2019),以及蝙蝠启发算法(Jaddi等人,2015年)。这些优化方法在训练过程期间实现的准确性方面增强了BPNN算法,并且因此克服了传统的基于梯度的过程在调整所需参数(例如,权重和偏差),因为BPNN经常陷入局部最优(Mavrovouniotis和Yang,2015)。一个比较有吸引力的元启发式算法是salp群算法(SSA)(Mirjalili等人,2017年)。它是一种群体智能算法,灵感来自海洋无脊椎动物海salp的行为。SSA已经在不同的基准优化和ML问题上进行了测试,并且其效率已经被证明涉及广泛的优化问题,例如多目标问题(Aljarah等人,2020)、图像阈值化(Elaziz等人,2020)、特征选择(Faris等人, 2020; Aljarah等人,2020; Aljarah等人,2018)约束工程优化问题(Zhang等人,xxxx)、负载频率控制(Barik和Das,2018年; Guha等人,2018年; Ekinci和Hekimoglu,2018 年 ) , 估 计 和 预 测 ( Zhang 等 人 , 2018;El-Fergany ,2018;Hussien等人,2017; Wang等人, 2018),检测模型(Abelani等人,2019 年)和集成电路设计(Asaithambi和Rajappa ,2018年)。另一方面,SSA相对于其他群体智能算法的成功是由于几个优点 。 首 先 , SSA 具 有 非 常 少 的 待 调 谐 参 数 ( El-Fergany 等 人 ,2019;Abualigah等人,2019年)。此外,SSA适合于广泛的优化问题,并且可以覆盖广泛的搜索空间(Abualigah等人,2019年)。最后,它具有很强的邻域搜索能力(Abualigah et al.,2019年)。尽管如此,SSA算法仍然遭受低利用率的缺点,这可能导致缓慢的收敛( Ibrahim 等 人 , 2018;Abusnaina 等 人 , 2018; Abualigah 等 人 ,2019年)。因此,利用撒南非洲的相对优势,的BPNN,本文提出了一个新的一般框架,首次结合SSA元启发式方法与BPNN研究如何结合优化技术与机器学习方法增强软件故障预测技术。此外,研究如何操纵的BPNN参数可能会导致引入任何性能改善方面的预测精度。该方法被命名为SSA-BPNN。所提出的方法的初始种群来自BPNN,其中SSA被用来迭代优化BPNN参数。因此,BPNN采用SSA的最优解来提高预测精度.对于性能评估,这项工作使用从几个资源中获取的SFP问题数据集。这些数据集的大小和复杂性各不相同。所提出的方法的结果与传统的BPNN和文献中的几种方法进行了比较。这些比较表明,SSA-BPNN可以为大多数SFP问题数据集提供最佳解决方案。本文的其余部分组织如下:首先,介绍SFP问题及其目标函数和解决方案表示在第2节。接下来,在第3节中回顾了反向传播神经网络和SalpSwarm优化算法的研究背景。然后,在第4节中描述了BPNN预测器的建议SSA优化器。在此之后,实验和结果,包括参数配置,性能测量,所用的数据集,除了比较和分析,并在第5节进行了讨论。最后,第6节给出了结论以及未来改进的可能方向。2. 软件故障预测问题在本节中,最关键的软件可靠性问题之一,SFP问题的定义。软件质量工程包括各种各样的活动,这些活动是为了保证质量而进行的。这些活动包括验证、确认、测试、容错识别,以及重要的SFP。软件故障预测可以定义为基于先前定义的度量或基于从先前类似的预测中得出的历史缺陷数据(Catal,2011; Porter和Selby,1990),在开发过程中和开发后评估软件产品中的错误(有时称为缺陷)的过程。在开发过程中或甚至在开始项目之前早期估计软件故障的能力对于最小化软件开发时间和工作量是必不可少的,其中准确的SFP可以减少在整个软件生命周期中检测软件错误所需的工作量,并最小化每个活动中开发的模块数量(Turabieh等人, 2019年)。SFP问题的重要性可以通过下面的观察来总结:开发和生产包含错误(无论是什么类型的错误,也无论有多少错误)的软件产品将对所述软件随后发布的质量产生不利影响,因为在顺序开发的软件版本之间存在相互关系(Turabieh等人,2019年)。然而,为解决这一问题而开发的SFP模型的性能受到建模技术的影响(Qasem等人,2020;Abaei等人,2015 a; Abaei等人,2015 b)和指标(Aziz等人,2020年,它被使用。建模技术具有适度的性能差异,并且建模技术的分类准确性影响比所使用的度量小(Qasem等人, 2020年)。通常,在设计优化算法时,应考虑两个关键问题:目标函数和解表示(Turabieh等人, 2019年)。2.1. 软件故障预测开发SFP模型的主要目标是估计即将到来的软件项目或正在开发的项目中的预期故障数量,同时获得高精度模型。所提出的方法SSA-BPNN使用人工神经网络作为评估器。此外,本研究中采用的目标函数是ROC曲线下面积(AUC),将在5.2小节中讨论。2.2. 解表示SFP模型解表示为长度等于ANN权重和偏置的数量的向量,如稍后将在图中示出的。 4,它是在初始训练过程完成后从BPNN中提取的,然后传递给SSA,如第4节-步骤4中所讨论的。接下来,利用数据集的训练部分来计算梯度并更新网络S. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3367ðÞXX¼ðÞ8¼ðÞ88¼ðÞBPNN训练过程中的权重和偏差。数据集的测试部分用于通过BPNN测试过程对所获得的模型进行评估。3. 研究背景BPNN是一种ML算法,可以解决与预测相关的问题,例如SFP问题。BPNN的有效性与其参数有关,优化的参数值使BPNN具有较高的预测精度。在3.1小节中介绍了BPNN和BP概念的基本原理。然后,在3.2节中描述了传统SSA算法的基本原理。3.1. 反向传播神经网络BPNN是人工神经网络的一种,它由一个基于误差反向传播学习算法的多层前馈神经网络组成,工作机制有两部分:数据前馈部分和误差反馈传播部分(Wang et al.,2019年)。反向传播是一种技术,训练前馈神经网络。BP的主要目标是优化参数(即,权重w和偏置b)在网络中作为一个整体,以使BPNN网络的结果尽可能接近期望的结果。换句话说,BP技术使ANN能够基于来自网络输出的反向传播输出误差来调整参数值,这最终导致最小化输出误差。BPNN的网络由三种类型的层组成:输入层X,隐藏层H和输出层Y,每一层都包含特定数量的神经元(有时称为节点)。每个节点都有一个激活函数;这个激活函数在每一层对所有神经元都是唯一的。此外,节点在层与层之间连接,其中每个连接具有指定的权重w和偏差b。图1示出了基本结构一个BPNN网络。BP技术过程的第一部分(数据前向传输)涉及由输入层接收输入数据,然后在对数据应用一些特定计算之后,输入层经由隐藏层进入输出层。BP技术过程的第二部分(误差反馈传播)通过计算实际输出和期望输出之间的方差开始,实际输出和期望输出可能彼此不接近或远离。这个方差称为“预测误差”。然后,将预测误差作为“误差反馈传播”反向传播到输入层。通过该过程的几次迭代,利用预测误差来调整BPNN参数,直到预测误差接近于零(Li等人,2019;Hecht-Nielsen,1992)。因此,BP技术的目标是最小化输出误差并产生具有高精度的网络(Felipe等人,2014年)。在传统的BP神经网络中,预测精度与网络参数密切相关,因此如果网络参数不是最优的,则输出精度很差,必须对参数进行适当的调整。缩写wij和wjk表示连接权重,术语“x1;x2;.”;x z表示输入值,并且项y1;y2;. ;ym表示估计值。 BP技术可以通过以下步骤来描述(Ren等人, 2014年;太阳Huang,2020):步骤1:初始化网络结构:首先,确定网络的主结构,或者更准确地说,确定隐藏层的数量H对于确定隐藏层的最佳数量以及隐藏层中的最佳节点数量没有特别的规则,但是隐藏层Fig. 1. BPNN基本结构并且这些层中的节点数量对网络性能和准确性具有显著影响(Han等人,2011年)。大多数情况下,当设计ANN时,使用试错法(Han等人,2011年)。但是,默认情况下,有一个输入层X和一个输出层Y。输入和输出层中的节点数量取决于预测要求。步骤2:初始化网络参数:权重wij和wjk并且随机初始化偏置B1和B2学习率g也在该步骤中初始化。权重向量w ij是节点i的连接权重的随机集合 在输入层和隐藏层中的节点j此外,权重向量wjk是隐藏层中的节点j和输出层中的节点k步骤3:计算隐藏层输出:获取X的值并初始化以计算wij和b1,因此可以通过使用等式2来计算隐藏层H(1):zHjfwijXib1;11/1其中,i 1; 2;.. . 是输入层Xj 1; 2;..中的节点的数量。. ;m,m是隐藏层H中的节点数。步骤4:计算输出层输出:通过从前一步骤中找到H的值,并且初始化/计算wjk和b2的值,输出层Y输出可以通过使用等式(1)来计算。(二):MYkwjk Hjb22第1页其中,j= 1; 2;. ;m是隐藏层H;k 1; 2;. . ;t,t是输出层Y中的节点数。步骤5:计算预测误差:通过使用等式2确定输出层Y输出与期望输出D之间的方差来计算模型预测误差e。(3):ekYk-Dk3哪里K 1; 2;.. . ;t t是输出层Y中的节点数。步骤6:调整权重:权重wij和wjk的调整是基于预测误差e,通过使用等式(4)Eq. (五):S. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3368X8 88X8JJJJ2JJ12JD不wij<$wijgHi1-HjXiwjk ek 4k¼1wjk<$wjkgHj ek5其中,i 1; 2;.. . ;z;j.1; 2;.. . ;m;k 1; 2;. ;t,并且g是学习率。步骤7:调整偏置:偏置bl和b2的调整基于预测误差e,通过使用等式(六):不bjbjgHj1-Hjwjk ek 6k¼1bkbkek7其中8j= 1; 2;. ;m是隐藏层H;k= 1; 2;. . ;t是输出层Y中的节点数,g是学习率。第8步:结束规则:如果模型的收敛性不满意,请转到第3步。重复上述步骤,直到满足结束规则。3.2. Salp群优化算法SSA最近由Mirjalili et al.(2017)提出。它是一种群体智能算法,其灵感来自海洋无脊椎动物的Salpidae家族成员。它的形状像桶,是透明的。它看起来和水母很相似,因为它通过在体内抽水来向前推进(Madin,1990)。一个salp的形状是图。 2(a)(Mirjalili等人,2017年)。 该salp在深水中表现出群集行为以形成“salp链”,如图2(b)所示(Mirjalili等人, 2017年)。salp链可以根据优化规则进行数学建模,其中salp种群被分成两组:领导者和一组追随者。在链条的前端是领导者,领导者后面是由追随者组成的链的其余部分。由于salp具有群集行为,因此可以对其应用基于群集的因此,可以在n维搜索区域中表征salp的位置注意,这里n是一个prob- lem变量数,并且所有salp此外,搜索区域包括食物源,用F表示,是主链目标。当量(8)代表领导人地位的更新图二. (a)单Salp,(b)Salps链(Salps群)。这两个参数用于将第j维引导向正或负方向,并用于设置SALP移动步长的大小另一方面,跟随者(十):x i=1/1。xixi-110其中iP2和xi表示第i个跟随器salp在第j个中的位置尺寸SSA算法机制首先随机初始化一组解,这些解形成SSA初始种群。然后,迭代迭代,改进过程开始,以定义全局最优。基于领导者的位置,跟随者通过这个改进过程更新他们的位置。重复这个过程,直到达到所需的解决方案。这一过程可归纳为以下几个步骤:步骤1:生成SSA种群并初始化参数:SSA算法优化过程通过初始化一组随机解开始,并且这些解形成SSA的初始种群并由大小n表示。的解决方案通常是提出作为一向量x i¼x i;xi;. ;x i;. ;x i= 1,其中i= 1; 2;. ;n=;n是范围内的决策变量(总体大小)l/l bi;u bi];j/l b i;2;. . . d是d维搜索空间对于第i个个体。此外,SSA参数(p1、p2和p3)通过优化过程自适应地初始化和刷新。第二步:确定最佳解决方案:食物来源F位置x1¼F jp1ωub j-lb jωp2<$lb j<$p3P0: 5F j-p1ωub j-lb j <$ωp2<$lb j<$ p30: 5<ð8Þ被认为是最好的解决方案,它是由d维向量F1;F2;. ;Fj;. ;F d,其中j<$^1; 2;... ;d.最佳解决方案位置定义如下:其中,x1表示第j维中的前导位置,发送第j维中的食物位置,ub j和lb j是第j维中的上界和下界。 尺寸,以及p1,p2,p3 是随机因素。从Eq。(8),可以注意到,领导人只能改变它的立场,关于F。在SSA算法中,随机因子p1可以作为最重要的参数,因为它具有平衡探测和利用的能力该因子可通过使用等式(1)计算。(9):4l2在计算拟合之后,选择具有最佳拟合的salp所有salp的ness值。步骤3:执行迭代改进循环:迭代改进循环的最大大小称为L。步骤3.1:更新领导者位置:可以通过使用等式(1)更新领导者的位置(最佳解决方案)。(八)、步骤3.2:更新跟随者(十)、其中ubj和lbj用符号表示搜索空间的上界和下界分别p1¼2e-双 螺杆挤出机ð9Þ步骤3.3:更新最佳解决方案位置:在此子步骤中,其中L是重复(迭代)的总次数,l是当前重复(当前迭代)。另外,另外两个随机参数p2的值而p3必须在[0,1]范围内的两个主要目的计算每个SALP的适应值,以便将这些值与全局最优适应值进行比较。任何具有比全局最优适应度更好的适应度的salp都成为全局最优。.S. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3369JJJJ¼þþ图3.第三章。提出的算法SSA-BPNN的流程图步骤4:应用停止准则:重复步骤3,直到达到最大迭代次数。此后,SSA的输出是最佳解位置.算法1中提供了SSA优化过程的伪代码算法1. Salp Swarm算法伪代码1:=阶段1:随机种群=====2:将随机初始种群初始化为Popinit3:在Popinit中计算所有解的初始适应度4:找到最佳解决方案,称为Solbest5:=阶段2:改进:Salp Swarm算法===6:设置最大迭代次数L7:设置计数器l←18:while(lL)do<9:使用等式(1)更新p1(九)10: 对于Pop初始化中的每个解决方案 做11:使用等式11更新第一salp。(八)12:使用等式11更新剩余的salp(10)13:结束14:更新称为Poptemp的Popinit15: 对于Pop Temp中每种溶液中的每种盐 做16:如果xi>ub,则17:xi½ub18:else ifxilb then<19:xi¼lb20:如果结束21:结束22:更新Poptemp,称为Popnew23:计算Popnew中所有解的适应度24日:第25章:结束26:选择最好的解决方案在流行新 英文名称:SolNew27:如果Solnew比Solbest好,那么第28章:你是谁?29:如果30:返回Solbest4. 该方法为了证明SSA优化器的效率,本节介绍了SSA在训练神经网络上的应用然而,验证任何元启发式优化算法涉及应用它来改善现实生活中的复杂问题。因此,本研究将SSA与BPNN相结合,构造了一种新的混合算法SSA-BPNN。提出的混合算法的目的是找到最佳的参数(权重和偏差)的BPNN通过利用salp群优化,从而提高预测精度的BPNN。SSA在完成其训练阶段后充当BPNN权重和偏差的优化器。然后,SSA得到的优化权重和偏差返回到BPNN,完成仿真阶段的实现。该过程被应用于几个基准数据集,并将结果与最先进的方法和其他基于优化算法的方法进行比较所提出的算法的工作流程如图3所示,程序步骤如下所述,包括四个阶段:S. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3370Þ2xX2XX2D6677þð Þð Þð Þ2·· · XD321 23 ···d其高度依赖于隐藏层节点数,这4.1. BPNN网络训练第一步:配置BPNN网络架构:任何ANN的架构都由两个主要的超参数控制,即层数和每个隐藏层中的节点(神经元)数量。在配置任何网络时,必须指定这些超参数的值。所提出的方法的第一步是初始化BPNN网络架构,如下所示:步骤1.1:定义层数:选择合适的隐藏层数至关重要,因为这一决定会影响鲁棒性(Ren et al.,2014)和一般化理论(Rumelhart etal.,1995年,BPNN网络。在这项研究中,遵循Kolmogorov定理(Wang等人,2019; Hornik等人,1989),它指出三层BPNN可以近似任何连续函数。这意味着一个隐藏层被认为足以用于本研究中进行的实验(Rumelhart等人, 1995; Wittek,2014)。因此,在所提出的方法中使用的BPNN的结构由三层组成,其中分配为一个输入层,一个隐藏层,和一个输出层。步骤1.2:定义神经元的数量:在输入层中,输入节点的数量等于从BPNN网络中提取,并转发到SSA优化器,以便进行优化。4.2. SSA人口结构步骤1:将权重偏差公式化为向量:将前一阶段步骤4中提取的更新权重和偏差公式化为向量。如以下模型所示,该向量稍后将被视为单个SSA解决方案。x¼w11;w12;... ;w1 m;w21;w22;. ;w2 m;. ;w z1;w z2;. 其中z是输入层节点的数目,m是隐藏层节点的数目。SSA的初始种群由几个解组成,其中每个解都是一个向量,其大小已经预先指定。每个公式化的向量被视为SSA的单个解决方案因此,为了构建SSA的初始群体矩阵,必须根据SSA群体大小重复第4.1阶段中的步骤2至4第二步:将向量添加到种群矩阵:将上一步中生成的所有向量迭代添加到二维矩阵中,以构建SSA初始种群。下面是SSA初始人口矩阵的模板数据集,这意味着在每个数据集应用程序中,输入层节点数基于数据集11126121·· ·x133·· ·xd 7特征数,而特征数因数据库而异,因此输入层节点数也会相应变化。此外,在输出层中,输出节点的数量为..........xixixi6 7...Xn1Xn3nXn2基于数据集输出变量确定为一个节点另一方面,为了获得高精度的预测结果,六四....... 75研究采用Hecht-Nelson方法(Hecht-Nielsen,1987)以识别隐藏层节点数。根据Hecht-Nelson方法,隐藏层节点的数量必须等于2 n1,其中n是输入层节点的数量(Ren例如, 2014年)。步骤2:初始化BPNN参数(权重和偏置):原则上,随机初始化BPNN网络层的权重(xi,j)和偏置(bi这是由于期望的随机优化方法,利用训练BPNN网络模型,称为随机梯度下降。第三步:训练BPNN网络:在定义BPNN网络结构并初始化权重和偏置之后,通过应用训练输入数据(用作BPNN的样本数据的故障数据),BPNN网络准备好进行训练步骤。训练输入数据由随机选择的数据集总内容的70%组成。 请注意,数据集内容的其余部分(30%)用作模拟数据。然后,训练过程通过采用建议的BPNN网络架构和初始化的权重和偏差以及选择的训练输入数据开始。在训练过程中,BPNN网络权重和偏置基于估计误差e更新(改进),如第3.1节步骤5和6中所述。然而,无论BPNN网络权重中的改进周期的量如何,通常都是不够的,因为估计误差e将保持高于期望值。训练过程继续,直到满足以下终止标准之一,即,通过达到合理的E值、通过达到最大迭代极限、或者当不能发现更多的增强时步骤4:提取BPNN网络权重和偏差:在步骤3完成后,新更新的权重和偏差是其中初始种群矩阵由n个解组成,d-维数。因此,矩阵结构是。4.3. SSA改善步骤1:算法1步骤3至步骤30:SSA利用阶段4.2中构造的初始种群,通过计算所有解的初始适应度并定义最佳解来开始其优化过程SSA优化过程需要多次迭代,如表1所示。在每一次迭代中,计算适应度,并与BPNN网络在第4.1阶段指定的初始适应度进行比较,从而获得最佳适应度并存储。完成的优化过程的结果是新的优化的总体。算法1步骤-3至30详细描述了SSA改进过程步骤2:选择最佳解:选择种群中具有最佳适应度的最佳最优解,并将其重新定向回BPNN网络,以用作新的最优权重和偏差。表1实验参数配置。参数值SSA人口规模30SSA最大迭代次数300BPNN隐藏层编号基于Kolmogorov定理(Wang等人,2019; Hornik等人,一 九 八 九年)隐层神经元数量基于(Ren等人,2 0 1 4 年; Hecht-Nielsen,1987年)实验编号30XXS. Kassaymeh,S. Abdullah,Mohammed Azmi Al-Betar等沙特国王大学学报3371þþ1/4 j-jþ¼ð Þ十二:我13:结束时14:计算Popinit中所有解的初始适应度15:=阶段3:改进:SSA = 16:与算法1相同(从第6行到第30行)17:=阶段4:网络重新初始化= 18:网络权重=Solbest19:使用测试数据的第20章:准确测试输出实际输出第21章:一夜情5. 实验和结果图四、SSA优化器处理BPNN权重和偏差的示例4.4. BPNN模拟第一步:获得最优参数:BPNN网络利用SSA优化器改进后的新的最优权值和偏差。第二步:模拟网络:在这一步中,新的最优权值和偏差以及仿真输入数据(故障数据作为BPNN的样本数据)被用来模拟BPNN网络。基于仿真结果,计算了估计误差e。步骤3:计算准确度:基于估计误差e,通过计算作为主要准确度度量(主要目标函数)的MSE以及第5.2节中提到的几个其他度量来计算预测准确度。预测精度决定了由所提出的方法产生的预测偏离目标值(仿真输出数据)的程度。例如,在图4的上侧示出了一组BPNN参数(权重和偏置)向量,其中它们被SSA算法用作群体(每个向量是单个解)。在这些向量被SSA算法优化之后,最好的一个被BPNN用作新的最优参数,如图4的底侧所示。此外,算法2给出了该方法的伪代码。算法2.建议方法伪代码1:=阶段1:网络图== 2:输入图层大小(z)=数据集要素否3:隐藏层大小= zn14:输出层大小= 15:=阶段2:SSA Population(Popinit)<$= 6:setpopulation size<$PopSize<$7:设置计数器i←18:while(i)
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功