基于DTGA-BP组合模型的区域创新能力评价①

2020-05-22 04:46李晨阳刘春霞党伟超白尚旺潘理虎
计算机系统应用 2020年5期
关键词:适应度决策树遗传算法

李晨阳,刘春霞,党伟超,白尚旺,潘理虎,2

1(太原科技大学 计算机科学与技术学院,太原 030024)

2(中国科学院 地理科学与资源研究所,北京 100101)

区域创新能力是提升区域综合竞争力的核心内容,其日益成为衡量一个地区国际竞争力和经济发展实力的重要指标.党的十九大报告把区域创新置于更加突出位置.为落实"互联网+"理念,实现互联网发展和区域创新能力评估的结合成为近年来研究的热点.同时推动区域创新驱动发展,构建自主创新能力评价的计算机软件也是大势所趋[1–5].

目前对创新能力的评价研究方法主要包括两大类:基于层次分析法、灰色理论法、专家打分法等传统主观赋值法,基于BP 神经网络模型等机器学习算法的评价方法.Banda W 等[6]运用改进了权重赋值的AHP 层次分析法进行风险分析,弥补了传统层次分析法在体系指标选取的不足;Chuang TY 等[7]采用模糊综合评价法评估教育环境,特别是教育数字游戏环境下的创新;Huang ZL 等[8]运用因子分析和SPSS 软件,综合评价了环海地区的区域技术创新能力,并提出了一些政策建议,以提高环渤海地区的区域创新能力;Zhao SL 等[9]从创新主体的角度出发,运用层次分析法和聚类分析法对中国区域协同创新能力进行评价;杨宏进[10]运用多元统计分析方法,淘汰与评估不相关或相关性很小的指标,组成具有代表性指标;崔铭等[11]运用改进后的BP 神经网络对专家思维进行模拟,提升了高校教师创新能力评估的效率;梅强等[12]将BP 神经网络模型引入到高新技术企业自主创新能力评估中,并证实这一方式较传统方式科学客观、速度快拟合精度高.岳琪等[13]通过改进后的GA-BP 神经网络混合模型进行高效教学质量的评价,使用熵值法优化初始权重,自适应遗传算法优化神经网络的参数,实验表明该模型能高效完成教学质量评价.但是这些研究大多采用传统主观赋值法或单一模型评估方法,仍存在如下问题:(1)采用主观赋值方式对各研究创新指标进行权重确定,相关结果极易受主观因素的干扰,致使其缺少系统性合理性及客观性.(2)使用单一神经网络模型,出现对输入参数的选择没有有效的方法、易陷入局部极小值、学习收敛速度慢等问题,得到的结果的精确性有待提高.

基于上述分析,本文采用机器学习算法,提出了DTGA-BP 组合模型对区域自主创新能力进行评估.首先利用决策树对BP 神经网络的输入层节点进行特征选择,再根据决策树和神经网络之间存在的对应关系确定神经网络隐藏层节点数,进而改进BP 神经网络的结构;最后利用遗传算法在全局择优方面的优势对BP 神经网络的初始权重进行调整.经实验分析对比,本课题提出的组合模型适用性更好、精度更优,收敛能力更强.

1 BP 神经网络模型

反向传播(Back Propagation,BP)神经网络是神经网络算法中运用最为广泛的分类模型之一.由于其使用范围的不断变大,BP 神经网络开始显示出一些自身不能解决的问题,例如易陷入局部极小值、学习收敛速度慢、对输入参数的选择没有有效的方法等[14–16].

BP 神经网络模型的设计主要包括输入层、隐藏层和输出层,其结构如图1所示.通过梯度下降法进行学习与改正以达到均方差最小的效果,之后在训练过程中不断调整权值.学习过程分为如下几步.

图1 BP 神经网络结构

Step 1.输入训练集样本数据,根据BP 神经网络的结构以及确定的权值和阈值,计算输入层到输出层各层神经元的输出值.

Step 2.计算预测输出值和期望输出值的误差,不断调整输入层到隐藏层的权重和隐藏层到输出层的权重.

Step 3.重复Step 1 及Step 2,当达到规定范围内误差值或训练次数结束,则学习完成.

训练过程分如下几步:

Step 1.初始化权重.公式如下:

其中,n为输入层节点个数,m为隐藏层节点个数,s为学习步数,Wj(t)为学习t步后的权值矩阵;

Step 3.计算实际输出值.公式如下:

Step 4.更新各神经元的权值.公式如下:

其中,β表示学习速率,β ∈[0,1],用来更新速度.

Step 5.重复Step 2,当达到规定范围内误差值或训练次数结束,则训练完成.

2 DTGA-BP 组合模型

DTGA-BP 组合模型即利用决策树算法和遗传算法优化BP 神经网络:通过决策树算法改进神经网络输入参数的选择和结构;利用改进了选择策略和交叉变异操作的遗传算法来优化神经网络的初始权值.核心思想是利用优化后的BP 神经网络建立区域自主创新能力评估分类模型.

通过使用决策树算法对神经网络的结构进行改进可以降低神经网络结构的复杂度,在不影响分类精度的情况下缩短训练时间,操作简单方法易实现.并且结合优化后的遗传算法,克服了传统BP 神经网络容易陷入局部最优等缺点,使得初始权重更加合理.DTGABP 算法流程如图2所示.

图2 DTGA-BP 算法流程图

2.1 基于决策树改进BP 神经网络的结构

评估模型使用单隐藏层神经网络结构,因此,对于神经网络结构的改进主要是确定隐藏层节点数目.传统的确定隐藏层节点数目的方法并不能有效解决BP神经网络结构复杂的问题.受“熵网络”[17]的启发,本文采用生成的决策树中最长规则链的非叶子节点的个数作为隐藏层节点的个数,可以降低模型复杂度减少训练时间.

首先利用C4.5 决策树算法生成一棵决策树,用于判断酒的类别,数据集使用UCI 机器学习库上下载的wine 数据集.该数据集包含13 个特征属性,例如Alcohol(酒精度),Malic acid(苹果酸含量)等,其值都为连续值;然后根据属性条件进行判断,自根节点到叶子结点分类;通过计算信息增益值以及剪枝策略最终生成的决策树如图3所示.

图3 C4.5 算法构造的决策树

由图3可知,决策树的叶子结点个数为5,最长规则链中的非叶子节点个数为3,由此,按照输入层节点个数,隐藏层节点个数,输出层节点个数的结构构造的BP 神经网络分别为3-5-1 和3-3-1.初始权重统一采用标准正太分布公式确定.训练后再随机产生200 组测试集,进行了5 次试验,结果如表1所示.其中,节点数=3 为本文采用的确定隐藏层节点数目的方法,节点数=5 是通过“熵网络”所确定的隐藏层节点数目.从分类结果可以看出,本文采用的确定隐藏层节点的个数的方法相比传统的“熵网络”方法,能够在加快收敛速度的同时降低误差.

表1 不同隐藏层节点个数的分类结果

2.2 基于遗传算法确定BP 神经网络的初始权重

一般利用遗传算法(Genetic Algorithm,GA)全局搜索的特点来解决BP 神经网络由于初始权值调整不当而产生的局部寻优的问题.但传统的遗传算法在优化方面仍然存在搜索效率低、速度慢等问题.因此本文采用改进了选择算子和交叉、变异操作的遗传算法确定神经网络的初始权重.改进后的遗传算法流程图如图4所示.

图4 改进后的遗传算法流程图

2.2.1 优化选择算子

遗传操作中,选择策略多种多样.采用恰当的选择策略可以提升整个遗传算法的性能.因此选择算子既要防止种群"早熟"导致的局部最优,还不能过于发散难以收敛,需要进行平衡,基于此本文采用改进后的选择算子方式.

首先根据适应度函数计算每个个体适应度值,通过排序后只保留前2/3 个体,淘汰适应度值小的后1/3 个体,然后再将保留下的个体数的前1/3 种群数作为父本,最终只对中间的1/3 个体进行遗传操作,计算这些种群个体的选择概率,公式如下:

其中,p为个体选择概率,q为最优选择概率,N为种群个数,k为个体的序列号,k=1,2,3,···,N/2,T为当前迭代次数.这样既保留了优良父本基因又将适应度低的个体淘汰掉,达到了平衡种群个体的目的,最终可以得到全局最优解.在进化初期,种群间个体差异度大,相应的得到的q值也大,只有这样才能保证适应度大的个体被选择到的概率大,从而为种群选择到优良个体.但随着种群不断进化,种群数量不断变少,个体间的差异也逐渐减小,此时得到的q值也应该减小.基于此分析,按照式(5)计算q值:

其中,qmax表示最优个体选择概率,qmin为最坏个体选择概率,M为迭代总次数.

按照这种方式进行选择算子操作,既将适合度最高的个体留存到下一代种群,最优个体不会被遗传操作淘汰,保证全局收敛;也将每次记录下的最坏个体适应度值进行比较,把适应度更低的留下后加入到新种群中.通过将最优保存策略和最坏保存策略相结合,可以降低选择误差,保持种群的多样性,有益于得到最优解.

2.2.2 改进交叉、变异操作

传统的自适应类遗传算法,其交叉与变异的随机机率会更大,会干扰遗传算法中某个体的质量,从而使得遗传算法陷进局部最优.并且当交叉与变异的个体适应水平达到最高值时,其交叉与变异概率可能性就不会存在,种群个体将处在完全停滞的状态.针对此问题,本文采用改进后的的交叉率Pc和 变异率Pm进行遗传操作,公式如下:

fa表示个体平均适应度,fm表示个体最大适应度.其中 a rcsin(fa/fm)是 随着fa的变化而快速变化的,因此,选用 arcsin(fa/fm)作为判断条件能很好的判断种群适应度间的分散程度.又因为 sin(π/6)=1/2,当arcsin(fa/fm)≥π/6时fa/fm≥1/2表 明此时fa接 近fm.最后再根据 π/12≤arcsin(fa/fm)≤π/3这一条件确定是否先进行交叉操作,若不符合条件则先进行变异操作.本文采用的方式解决了传统遗传变异操作总是先进行交叉后进行变异导致的产生优良个体速度慢,甚至会破坏优良个体等问题.

3 实验分析

3.1 数据来源描述

实验数据来源《中国城市创新报告》、《中国区域创新能力评价报告》和《中国区域创新监测报告》.采用2011–2018年共8年全国各城市的区域创新指标数据,每个样本数据包含42 个属性.实验数据整理在Excel 表中,部分实验数据如图5所示.

图5 实验数据截图

将样本数据中的4/5 作为训练数据,1/5 作为测试集.通过计算各个属性的信息增益值,排序之后,选择了与分类结果相关度大的前20 个属性作为最优特征组合,组成神经网络的输入参量.同时用Matlab 中的归一化函数mapminmax,将输入层与输出层信息归一化到[–1,1]之间,训练之后对数据进行反归一化处理.采用Matlab2011 来对代码进行编写,执行代码的主机处理器型号是IntelPentiumDualE2220,主频值是2.4 GHz,内存大小是1 GB.

3.2 实验结果对比分析

3.2.1 特征选择方法对比

生成决策树的过程中,剪枝技术是为了有效避免噪声数据的干扰、提高分类精度的一种关键技术,而且不同程度的剪枝会得到不同结果的分类精度.根据实验发现在修剪程度为86 时达到最高,之后下降.因此将剪枝程度控制在85–90 之间.具体情况如表2所示.依照表2,在生成最优决策树时选择86 作为剪枝度值,然后计算各属性的信息增益率值进行排序,取前20 个属性作为最优特征组合,结果如图6所示.

表2 不同程度剪枝的分类正确率(%)

图6 特征属性信息增益率排序

依照图6内容所得的实验结论,将前20 个属性作为BP 神经网络的输入参数,与未经过特征选择的BP 神经网络模型进行对比,具体见图7所示.通过决策树分类算法进行特征选择后,可以增加BP 神经网络模型的分类精度,这说明本文通过特征选择方式能有效降低噪声数据的影响,提高分类的稳定性.

图7 均方差对比图

3.2.2 单一模型与组合模型的对比

实验按照如下参数建立训练模型:输入层神经元数目为相关度大的前20 个最优特征属性;隐藏层的神经元数目通过决策树优化后为12 个;输出层的神经元数目为1 个;种群规模为100,进化次数为200 次,个体交叉率和基因变异率分别60%和2%.为突出本文提出的DTGA-BP 组合模型的优越性,分别从误差、收敛速度、分类精度几方面与GA-BP,BP 分类模型做比对.

BP,GA-BP 和DTGA-BP 3 个模型的误差随迭代次数变化的曲线如图8所示.

图8 3 种模型的误差随训练次数的变化情况

由图8可知BP 模型和GA-BP 模型在迭代次数大约为150 次时开始逐渐收敛,但GA-BP 模型的误差低于BP 模型.而DTGA-BP 模型在迭代100 次后趋于稳定,且收敛后的误差要低于GA-BP 模型,GA-BP 模型要达到与DTGA-BP 模型相同的误差需要更多的训练次数.尤其与BP 模型相比,优化后的DTGA-BP 模型无论在训练次数还是误差方面都好很多.由图8、图9可以看出通过DTGA优化后的BP 神经网络在收敛过程中很稳定,说明改进神经网络结构和初始权值后的分类模型克服了易陷入局部最优的缺陷,神经网络会逐渐接近全局最优.

图9 3 种模型的误差对比

3 种模型的平均评估精度结果如表3.BP 神经网络模型的平均精度为57.18%,GA-BP 模型的平均评价精度为78.71%,而基于决策树和遗传算法优化的BP神经网络模型的平均评价精度为98.22%,结合表4得到,DTGA-BP 组合模型在分类精度上相比GA-BP提高了20%,相比单一BP 模型提高了41%.由此看出DTGA-BP 组合模型的评价结果精度更高.MAE(平均绝对误差),RMSE(均方根误差)的计算公式如下:

表3 3 种模型平均精度对比

表4 3 种模型指标对比

4 结束语

本文围绕区域自主创新能力评价问题展开研究,针对当特征属性较多时,BP 神经网络出现的结构复杂、收敛速度慢和易陷入局部最优等问题,提出一种决策树遗传算法优化BP 神经网络的组合模型.首先通过对各个特征属性计算信息增益率,排列顺序后选出最优组合特征,以此降低噪声数据对神经网络模型的影响;其次通过生成的决策树的最长规则链的非叶子结点来确定隐藏层节点数,以此优化神经网络的结构,能够在加快收敛速度的同时降低误差;最后通过改进后的遗传算法优化神经网络的初始权重,采用最优保存策略与最坏保存策略相结合的选择算子方式以及非线性的交叉变异概率值,保证了种群多样性和收敛性.结果证明DTGA-BP 组合模型实现了对专家经验的自学习,并且在训练时间、收敛度、分类精度等方面相比传统的人工评估以及单一模型评估方式均有优势.

猜你喜欢
适应度决策树遗传算法
改进的自适应复制、交叉和突变遗传算法
基于改进遗传算法的航空集装箱装载优化
基于改进遗传算法的航空集装箱装载问题研究
基于遗传算法的高精度事故重建与损伤分析
简述一种基于C4.5的随机决策树集成分类算法设计
物流配送车辆路径的免疫遗传算法探讨
启发式搜索算法进行乐曲编辑的基本原理分析
决策树学习的剪枝方法
基于人群搜索算法的上市公司的Z—Score模型财务预警研究
决策树在施工项目管理中的应用