CN115906959A - 基于de-bp算法的神经网络模型的参数训练方法 - Google Patents
基于de-bp算法的神经网络模型的参数训练方法 Download PDFInfo
- Publication number
- CN115906959A CN115906959A CN202211548944.3A CN202211548944A CN115906959A CN 115906959 A CN115906959 A CN 115906959A CN 202211548944 A CN202211548944 A CN 202211548944A CN 115906959 A CN115906959 A CN 115906959A
- Authority
- CN
- China
- Prior art keywords
- individual
- neural network
- algorithm
- network model
- population
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于DE‑BP算法的神经网络模型的参数训练方法,包括:对待分类样本数据集进行预处理,按比例划分为训练集和测试集,根据预处理后待分类样本数据构建前馈神经网络模型;利用样本训练集对每个编码后的个体在前馈神经网络模型向前传播过程中训练,计算前馈神经网络模型的预期值和真实值之间的误差,将误差作为个体的适应度值;利用样本训练集训练前馈神经网络模型,分别利用DE算法和BP算法训练编码后的种群,获得种群最优个体;利用带有最优参数的前馈神经网络模型对样本测试集进行测试,得到最佳的分类精度。本发明基于DE‑BP算法对前馈神经网络模型进行训练,解决了BP算法在搜索时容易陷入局部最优点的缺陷,提高神经网络训练的效率。
Description
技术领域
本发明涉及模式分类领域,特别涉及一种基于DE-BP算法的神经网络模型的参数训练方法。
背景技术
前馈神经网络作为一种简单的神经网络结构,是应用最广泛、发展最迅速的人工神经网络之一,被应用于大多数分类任务和函数近似任务中,结合到许多复杂的网络结构中来解决一些大规模的分类和预测问题。在前馈神经网络应用之前通常需要对前馈神经网络模型参数进行训练,利用收集的标注训练数据对所述模型进行训练得到模型参数,如何正确设置一组前馈神经网络的参数是实现前馈神经网络最大潜力的关键。
目前已经提出许多训练前馈神经网络参数方法,如利用BP算法(反向传播算法)、启发式方法和集成方法等。其中BP算法作为一种基于梯度搜索网络参数的方法,虽然具有强大的局部搜索能力,但容易陷入局部最优,进而搜索不到全局最优;启发式方法和集成方法的全局搜索能力强,但其收敛速度和局部搜索能力较差。综上,以上传统方法都无法满足搜索能力和搜索速度上兼容的高需求标准,导致训练得到的神经网络模型的分类精度较差。
发明内容
发明目的:针对以上问题,本发明目的是提供一种基于DE-BP算法的神经网络模型的参数训练方法,可应用于前馈神经网络模型的参数优化,以解决各种分类问题,得到一种既有强大的全局搜索能力,又有强大的局部搜索能力的参数训练方法。
技术方案:本发明的一种基于DE-BP算法的神经网络模型的参数训练方法,所述参数训练方法包括以下步骤:
步骤1,对待分类样本数据集进行预处理,按比例划分为训练集和测试集,根据预处理后待分类样本数据构建前馈神经网络模型;
步骤2,根据进化计算算法构建种群,对种群进行随机初始化,种群中的每个个体代表前馈神经网络模型的一组参数,对种群中的每个个体进行编码;利用样本训练集对每个编码后的个体在前馈神经网络模型向前传播过程中训练,计算前馈神经网络模型的预期值和真实值之间的误差,将误差作为个体的适应度值;
步骤3,利用样本训练集训练前馈神经网络模型,分别利用DE算法和BP算法训练编码后的种群,获得种群最优个体;所述最优个体代表前馈神经网络模型的一组最优参数;
步骤4,利用带有最优参数的前馈神经网络模型对样本测试集进行测试,得到最佳的分类精度。
进一步,在步骤3中,分别利用DE算法和BP算法训练编码后的种群的步骤包括以下步骤:
步骤31,根据种群中个体的适应度值,初始化种群的历史全局最优个体和个体的历史最优,初始化选择概率池中每种BP算法的选择概率Pk,k表示第k种BP算法,k=1,2,3,4;
步骤32,判断当前前馈神经网络模型的迭代次数是否达到最大迭代次数,若是则结束迭代,否则进入步骤33;
步骤33,利用DE算法对个体进行变异操作和交叉操作,更新个体的位置;
步骤34,计算种群中每个个体的适应度值,选取适应度值最小的个体作为种群的历史全局最优个体,更新个体的历史最优,判断历史全局最优个体和当前全局最优个体的适应度值差距是否小于阈值r,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否大于阈值h1,如果满足任一条件则进入步骤35,否则返回步骤32;
步骤35,根据选择概率池中的选择概率,利用轮盘赌技术,自适应选择一种BP算法在反向传播中更新种群中的个体,在每一次迭代中,记录第k种BP算法在第j次迭代时更新个体成功次数nsflagk,j和失败次数nfflagk,j;
步骤36,当迭代次数达到预设值m0时,则更新选择概率池中每一种BP算法对应的选择概率;
步骤37,判断种群的历史全局最优个体和当前全局最优个体的适应度值差距是否不变,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否小于h2,如果满足任一条件则返回步骤32,否则返回步骤35。
进一步,步骤1中所述前馈神经网络模型含有一层隐藏层,隐藏层节点的数量表达式为:
n=2*m+1
式中,m、n分别表示待分类样本数据的特征数和隐藏层的节点数。
进一步,所述步骤33具体包括以下过程:
对个体进行变异操作,表达式为:
式中,和分别表示第i个个体的第一种,第二种和第三种变异方式,xi表示第i个个体的位置,xGbest表示种群的历史全局最优个体的位置,xPbest表示个体i的历史最优的位置,r1和r2是0到1之间的随机数,c1和c2分别是群体学习因子和自我学习因子,r3和r4为0到50之间的随机整数,xr3和xr4表示第r3和r4个个体的位置;
对个体进行交叉操作,表达式为:
式中,CR是交叉因子;
更新个体的位置,表达式为:
xi=xi+ui。
进一步,在步骤35中,利用BP算法进化后若个体适应度值比进化之前的适应度值低,则更新成功,反正更新失败。
进一步,步骤36中第k种BP算法选择概率Pk更新表达式为:
Pk=Sk/(Sk+Fk)
式中,Sk和Fk分别为m次迭代后第k种BP算法更新个体成功的总数和更新个体失败的总数,表达式分别为:
式中,β为常数。
进一步,所述前馈神经网络模型的参数包括权重和偏置。
进一步,步骤2中对种群中的每个个体采用向量编码方式进行编码,个体编码后种群表示为:
P=[w11,…,wmn,…,b1,…,bn,w′11,…,w′nk,b′1,…,b′k]
式中,w为输入层到隐藏层之间的权重,b为隐藏层节点的偏置,w′为隐藏层到输出层之间的权重,b′为输出层节点的偏置,k为输出层节点数量。
进一步,步骤2中适应度值计算表达式为:
oout=f(w′*aout+b′)
式中,aout表示隐藏层的输出,表达式为:
aout=f(w*x+b)
式中,x表示隐藏层的输入。
有益效果:本发明与现有技术相比,其显著优点是:本发明采用基于DE-BP的集成算法训练前馈神经网络模型的参数权重和偏置,四种BP算法都搭载了随机梯度下降优化器,其区别在于随机梯度下降优化器的学习率不同,在反向传播过程,采用自适应的方法在训练过程中实时的选取最合适的学习率更新前馈神经网络模型的参数,使得本发明效率更高,搜索能力更强;DE算法具有强大的全局搜索能力,可以克服BP算法容易陷入局部最优的缺陷,本发明在搜索网络参数时不仅可以同时获得强大的搜索能力和搜索效率,还可以同时拥有强大的全局和局部搜索能力,从而使得被优化后的前馈神经网络更加稳定,用于分类任务时,得到的分类精度更高。
附图说明
图1是本发明中基于DE-BP算法的神经网络模型的参数训练方法流程图;
图2是本发明中构建的前馈神经网络模型结构示意图;
图3是本发明中粒子的编码方式示意图;
图4是本发明中利用DE-BP算法训练前馈神经网络模型参数的流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。
本实施例所述的基于DE-BP算法的神经网络模型的参数训练方法,流程图如图1所示,包括以下步骤:
步骤1,对待分类样本数据集进行预处理,按比例划分为训练集和测试集,根据预处理后待分类样本数据构建前馈神经网络模型;
上述步骤中采集待分类样本数据,对样本数据进行归一化处理,将其可以按照7:3的比例或其他比例划分为训练集数据和测试集数据,利用训练集数据训练前馈神经网络模型,利用测试集对训练后前馈神经网络进行测试。
根据待分类样本数据中特征数构建前馈神经网络模型,前馈神经网络模型的参数包括权重和偏置。结构示意图如2所示,上述的前馈神经网络模型含有输入层、一层隐藏层和输出层,隐藏层节点的数量表达式为:
n=2*m+1
式中,m、n分别表示待分类样本数据的特征数和隐藏层的节点数。
步骤2,根据进化计算算法构建种群,对种群进行随机初始化,种群中的每个个体代表前馈神经网络模型的一组参数,即每个个体代表一组权重和偏置,对种群中的每个个体进行编码。利用样本训练集对每个编码后的个体在前馈神经网络模型向前传播过程中训练,计算前馈神经网络模型的预期值和真实值之间的误差,将误差作为每一个个体的适应度值,用于评估个体的好坏。
具体地本实施例中对种群中的每个个体采用向量编码方式进行编码,如图3所示,个体编码后被表示为:
P=[w11,…,wmn,…,b1,…,bn,w’ 11,…,w’ nk,b’ 1,…,b’ k]
式中,w为输入层到隐藏层之间的权重,b为隐藏层节点的偏置,w′为隐藏层到输出层之间的权重,b′为输出层节点的偏置;k为输出层节点数量,输出层节点数量由数据的分类数决定。
在上述前馈神经网络模型的隐藏层和输出层的输出采用了sigmoid作为激活函数,表达式为:
式中,u表示输入数据。
为了评估前馈神经网络模型参数的好坏,本实施例中采用损失函数在分类任务中去计算预期值和真实值之间的差距,这种差距反映个体的好坏,本实施例中采用均方差损失函数MSE来评估个体,适应度值计算表达式为:
oout=f(w′*aout+b′)
式中,aout表示隐藏层的输出,表达式为:
aout=f(w*x+b)
式中,x表示隐藏层的输入。
步骤3,利用样本训练集训练前馈神经网络模型,分别利用DE算法(差分进化算法)和BP算法训练编码后的种群,获得种群最优个体;所述最优个体代表前馈神经网络模型的一组最优参数;
在上述步骤中,分别利用DE算法和BP算法训练编码后的种群的步骤具体包括以下过程,流程图如图4所示:
步骤31,根据种群中个体的适应度值,初始化种群的历史全局最优个体和个体的历史最优,初始化选择概率池中每种BP算法的选择概率Pk,k表示第k种BP算法,k=1,2,3,4,这4种BP算法中都搭载随机梯度下降优化器,其区别在于每种随机梯度下降优化器的学习率不同,在反向传播过程中学习率的大小反映了参数更新的步长,步长过大容易错失最优点,步长过小导致收敛速度慢,在实施例中如可分别选择0.1、0.005、0.0002和0.0003作为每种BP算法的学习率,采用自适应的方法在训练过程中实时选取最合适的学习率更新参数,进而提高搜索能力;
步骤32,判断当前前馈神经网络模型的迭代次数是否达到最大迭代次数,若是则结束迭代,否则进入步骤33;
步骤33,利用DE算法对个体进行变异操作和交叉操作,更新个体的位置;
步骤34,计算种群中每个个体的适应度值,选取适应度值最小的个体作为种群的历史全局最优个体,更新个体的历史最优,判断历史全局最优个体和当前全局最优个体的适应度值差距是否小于阈值r,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否大于阈值h1,如果满足任一条件则进入步骤35,否则返回步骤32;其中,基于经验设置,阈值r设置为0.01,阈值h1设置为0.001;
步骤35,根据选择概率池中的选择概率,利用轮盘赌技术,自适应选择一种BP算法在反向传播中更新种群中的个体,在每一次迭代中,记录第k种BP算法在第j次迭代时更新个体成功次数nsflagk,j和失败次数nfflagk,j;
步骤36,当迭代次数达到预设值m0时,则更新选择概率池中每一种BP算法对应的选择概率;
步骤37,判断种群的历史全局最优个体和当前全局最优个体的适应度值差距是否不变,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否小于阈值h2,如果满足任一条件则返回步骤32,否则返回步骤35。其中,基于经验阈值h2通常设置为1。
上述步骤33具体包括以下过程:
对个体进行变异操作,表达式为:
式中,和分别表示第i个个体的第一种,第二种和第三种变异方式,xi表示第i个个体的位置,xGbest表示种群的历史全局最优个体的位置,xPbest表示个体i的历史最优的位置,r1和r2是0到1之间的随机数,c1和c2分别是群体学习因子和自我学习因子,r3和r4为0到50之间的随机整数,xr3和xr4表示第r3和r4个个体的位置;
对个体进行交叉操作,表达式为:
式中,CR是交叉因子;更新个体的位置,表达式为:
xi=xi+ui。
上述步骤35中,利用BP算法进化后若个体适应度值比进化之前的适应度值低,则更新成功,反正更新失败。
步骤36中第k种BP算法选择概率Pk更新表达式为:
Pk=Sk/(Sk+Fk)
式中,Sk和Fk分别为m次迭代后第k种BP算法更新个体成功的总数和更新个体失败的总数,表达式分别为:
式中,β为常数,本实施例中可设置为0.001。
步骤4,利用带有最优参数的前馈神经网络模型对样本测试集进行测试,得到最佳的分类精度。
为进一步说明利用本发明所述的基于DE-BP算法对神经网络模型参数进行训练后得到前馈神经网络对待分类样本数据的分类精度,以示例进行说明,表1列举一个安德森鸢尾花卉分类样本数据集(Iris),Iris一共包含150个样本,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长度、花萼宽度、花瓣长度和花瓣宽度4个属性预测鸢尾花卉属于三个种类中的哪一类。首先对该待分类数据集进行归一化等预处理后,将其按照7:3的比例划分为训练集和测试集;其次构建输入层节点数为4,隐藏层节点数为9,输出层节点数为3的前馈神经网络模型;然后在训练集上,利用DE-BP算法训练该神经网络模型,得到训练后的的最优神经网络网络参数(权重和偏置);最后,在该最优神经网络上利用测试集进行测试,得到测试精度。
表1 安德森鸢尾花卉分类样本数据集
花萼长度/cm | 花萼宽度/cm | 花瓣长度/cm | 花瓣宽度/cm | 鸢尾花种类 |
5.1 | 3.5 | 1.4 | 0.2 | Setosa |
4.9 | 3.0 | 1.4 | 0.2 | Setosa |
4.7 | 3.2 | 1.3 | 0.2 | Setosa |
6.7 | 3.0 | 5.2 | 2.3 | virginica |
6.3 | 2.5 | 5.0 | 1.9 | virginica |
6.5 | 3.0 | 5.2 | 2.0 | virginica |
Claims (9)
1.基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,所述参数训练方法包括以下步骤:
步骤1,对待分类样本数据集进行预处理,按比例划分为训练集和测试集,根据预处理后待分类样本数据构建前馈神经网络模型;
步骤2,根据进化计算算法构建种群,对种群进行随机初始化,种群中的每个个体代表前馈神经网络模型的一组参数,对种群中的每个个体进行编码;利用样本训练集对每个编码后的个体在前馈神经网络模型向前传播过程中训练,计算前馈神经网络模型的预期值和真实值之间的误差,将误差作为个体的适应度值;
步骤3,利用样本训练集训练前馈神经网络模型,分别利用DE算法和BP算法训练编码后的种群,获得种群最优个体;所述最优个体代表前馈神经网络模型的一组最优参数;
步骤4,利用带有最优参数的前馈神经网络模型对样本测试集进行测试,得到待分类样本数据的最佳分类精度。
2.根据权利要求1所述的基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,在步骤3中,分别利用DE算法和BP算法训练编码后的种群包括以下步骤:
步骤31,根据种群中个体的适应度值,初始化种群的历史全局最优个体和个体的历史最优,初始化选择概率池中每种BP算法的选择概率Pk,k表示第k种BP算法,k=1,2,3,4;
步骤32,判断当前前馈神经网络模型的迭代次数是否达到最大迭代次数,若是则结束迭代,否则进入步骤33;
步骤33,利用DE算法对个体进行变异操作和交叉操作,更新个体的位置;
步骤34,计算种群中每个个体的适应度值,选取适应度值最小的个体作为种群的历史全局最优个体,更新个体的历史最优,判断历史全局最优个体和当前全局最优个体的适应度值差距是否小于阈值r,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否大于阈值h1,如果满足任一条件则进入步骤35,否则返回步骤32;
步骤35,根据选择概率池中的选择概率,利用轮盘赌技术,自适应选择一种BP算法在反向传播中更新种群中的个体,在每一次迭代中,记录第k种BP算法在第j次迭代时更新个体成功次数nsflagk,j和失败次数nfflagk,j;
步骤36,当迭代次数达到预设值m0时,则更新选择概率池中每一种BP算法对应的选择概率;
步骤37,判断种群的历史全局最优个体和当前全局最优个体的适应度值差距是否不变,或者种群的历史全局最优个体和当前全局最优个体的位置差距是否小于阈值h2,如果满足任一条件则返回步骤32,否则返回步骤35。
3.根据权利要求1所述的基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,步骤1中的前馈神经网络模型包含一层隐藏层,隐藏层节点的数量n表达式为:
n=2*m+1
式中,m表示待分类样本数据的特征数。
5.根据权利要求4所述的基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,在步骤35中,利用BP算法进化后若个体适应度值比进化之前的适应度值低,则更新成功,反正更新失败。
7.根据权利要求1所述的基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,前馈神经网络模型的参数包括权重和偏置。
8.根据权利要求1所述的基于DE-BP算法的神经网络模型的参数训练方法,其特征在于,步骤2中对种群中的每个个体采用向量编码方式进行编码,个体编码后被表示为:
P=[w11,…,wmn,…,b1,…,bn,w’11,…,w’nk,b’1,…,b’k]
式中,w表示输入层到隐藏层之间的权重,b表示隐藏层节点的偏置,w′表示隐藏层到输出层之间的权重,b′表示输出层节点的偏置,k表示输出层节点数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211548944.3A CN115906959A (zh) | 2022-12-05 | 2022-12-05 | 基于de-bp算法的神经网络模型的参数训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211548944.3A CN115906959A (zh) | 2022-12-05 | 2022-12-05 | 基于de-bp算法的神经网络模型的参数训练方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115906959A true CN115906959A (zh) | 2023-04-04 |
Family
ID=86481095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211548944.3A Pending CN115906959A (zh) | 2022-12-05 | 2022-12-05 | 基于de-bp算法的神经网络模型的参数训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115906959A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116822328A (zh) * | 2023-05-11 | 2023-09-29 | 中南大学 | 一种矿山采空区地表沉陷预计参数的确定方法 |
-
2022
- 2022-12-05 CN CN202211548944.3A patent/CN115906959A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116822328A (zh) * | 2023-05-11 | 2023-09-29 | 中南大学 | 一种矿山采空区地表沉陷预计参数的确定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108900346B (zh) | 基于lstm网络的无线网络流量预测方法 | |
CN107729999A (zh) | 考虑矩阵相关性的深度神经网络压缩方法 | |
CN112577747A (zh) | 一种基于空间池化网络的滚动轴承故障诊断方法 | |
CN112685504B (zh) | 一种面向生产过程的分布式迁移图学习方法 | |
CN108062572A (zh) | 一种基于DdAE深度学习模型的水电机组故障诊断方法与*** | |
CN107392919B (zh) | 基于自适应遗传算法的灰度阈值获取方法、图像分割方法 | |
CN113011570B (zh) | 一种采用神经网络压缩***的人脸表情识别方法 | |
Bakhshi et al. | Fast automatic optimisation of CNN architectures for image classification using genetic algorithm | |
CN112801281A (zh) | 基于量子化生成模型和神经网络的对抗生成网络构建方法 | |
CN112686376A (zh) | 一种基于时序图神经网络的节点表示方法及增量学习方法 | |
CN111355633A (zh) | 一种基于pso-delm算法的比赛场馆内手机上网流量预测方法 | |
CN115099519A (zh) | 一种基于多机器学习模型融合的油井产量预测方法 | |
CN108647206A (zh) | 基于混沌粒子群优化cnn网络的中文垃圾邮件识别方法 | |
CN112766603A (zh) | 一种交通流量预测方法、***、计算机设备及存储介质 | |
CN113222035A (zh) | 基于强化学***衡故障分类方法 | |
CN114819143A (zh) | 一种适用于通信网现场维护的模型压缩方法 | |
CN115906959A (zh) | 基于de-bp算法的神经网络模型的参数训练方法 | |
CN114626435A (zh) | 一种高准确率的滚动轴承智能故障特征选择方法 | |
CN115345222A (zh) | 一种基于TimeGAN模型的故障分类方法 | |
CN109408896B (zh) | 一种污水厌氧处理产气量多元智能实时监控方法 | |
CN117369378A (zh) | 基于蒙特卡洛树搜索算法的混流制造车间调度方法及*** | |
CN117034060A (zh) | 基于ae-rcnn的洪水分级智能预报方法 | |
CN116415177A (zh) | 一种基于极限学习机的分类器参数辨识方法 | |
CN113807005B (zh) | 基于改进fpa-dbn的轴承剩余寿命预测方法 | |
CN108388942A (zh) | 基于大数据的信息智能处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |