基于进化神经网络的Spark参数自动优化系统和方法技术方案

技术编号:25044348 阅读:39 留言:0更新日期:2020-07-29 05:34
本发明专利技术公开了一种基于进化神经网络的Spark参数自动优化系统和方法,属于大数据处理系统性能优化领域。包括:收集不同Spark配置参数下相同Spark应用程序的运行时间,得到训练集,所述训练数据包括:Spark配置参数、Spark应用程序的输入数据集大小和对应运行时间;使用训练集,采用遗传进化的思想训练神经网络模型,得到性能预测模型;使用性能预测模型,通过遗传算法搜索Spark最优配置参数。本发明专利技术采用进化神经网络,通过优化网络结构,使神经网络的结构尽可能简单,使用进化策略在现有的神经元中挑选优秀的作为下一代的起点,不断更迭。使用进化策略的神经网络能够更好地避免陷入局部最优,比起梯度下降,进化理论中的算法能够并行,大大减少训练时间。

【技术实现步骤摘要】
基于进化神经网络的Spark参数自动优化系统和方法
本专利技术属于大数据处理系统性能优化领域,更具体地,涉及基于进化神经网络的Spark参数自动优化系统和方法。
技术介绍
ApacheSpark是当前应用最广泛的通用大数据处理系统,它是由加州大学伯克利分校AMP实验室设计并用于大规模数据处理的快速通用计算引擎,也是一个开源通用并行框架。Spark支持多种大数据应用,它提供了大量功能强大的库函数,包括SparkSQL、MLlib、GraphX、SparkStreaming等。在Spark中,不同的大数据应用程序对参数配置有不同的要求。即使在相同的大数据应用程序中,如果处理数据的规模不同,所需的参数配置也各不相同。为了能兼顾各方面的应用,Spark提供了超过180个配置参数,并为每个参数设定了一个默认值。但是,Spark框架给出的默认配置往往只能保证作业能够开始执行,至于作业执行的效率和能否顺利执行完成作业并不关心。在如此大参数空间中,参数间的交互复杂,手工调节参数既费时又费力。此外,手工参数调优要想取得良好的效果,还需要系统管理人员熟练掌本文档来自技高网...

【技术保护点】
1.一种基于进化神经网络的Spark参数自动优化系统,其特征在于,所述系统包括:/n训练数据收集模块,用于收集不同Spark配置参数下相同Spark应用程序的运行时间,得到训练集,训练集中训练数据包括:Spark配置参数、Spark应用程序的输入数据集大小和对应运行时间;/n建模模块,用于使用训练集,采用遗传进化的思想训练神经网络模型,得到性能预测模型;/n参数空间搜索模块,用于使用性能预测模型,通过遗传算法搜索Spark最优配置参数。/n

【技术特征摘要】
1.一种基于进化神经网络的Spark参数自动优化系统,其特征在于,所述系统包括:
训练数据收集模块,用于收集不同Spark配置参数下相同Spark应用程序的运行时间,得到训练集,训练集中训练数据包括:Spark配置参数、Spark应用程序的输入数据集大小和对应运行时间;
建模模块,用于使用训练集,采用遗传进化的思想训练神经网络模型,得到性能预测模型;
参数空间搜索模块,用于使用性能预测模型,通过遗传算法搜索Spark最优配置参数。


2.如权利要求1所述的系统,其特征在于,所述Spark配置参数通过以下方式获取:
(1)从Spark配置参数空间中选择N个目标配置参数;
(2)在各个目标配置参数的取值范围内,随机生成该目标配置参数的值;
(3)将选择的目标配置参数按照数值类型,分为整型目标配置参数集、浮点型目标配置参数集和布尔型目标配置参数集。


3.如权利要求1或2所述的系统,其特征在于,所述采用遗传进化的思想训练神经网络模型,得到性能预测模型的方式如下:
(1)种群P中每一个个体为一个神经网络,种群大小Psize为神经网络数量;
(2)固定输入层和输出层,随机选择隐藏层的每层神经元个数、网络层数、激活函数、优化器,搭建Psize个神经网络以初始化种群P;
(3)训练Psize个神经网络,得到每个神经网络的预测准确率,将Psize个神经网络按预测准确率排序,取预测准确率高的前个神经网络作为种群下一代的父辈P′;
(4)从P′任选m个网络,m为随机产生的整数,固定输入层和输出层,从m个神经网络中每一个神经网络任意选择一层作为隐藏层构建一个新神经网络,重复Psize次得到新的种群P″;
(5)重复步骤(3)~(4),直到种群中80%的神经网络预测准确率超过90%结束循环,进入步骤(6);
(6)选出当前种群中预测准确率最高的神经网络作为性能预测模型。


4.如权利要求1至3任一项所述的系统,其特征在于,所述建模模块通过以下方式得到性能预测模型:
(1)将训练数据收集模块收集到训练集按照数据类型切分为三个子集TDint、TDfloat、TDbool;
(2)利用进化神经网络分别训练三个性能预测子模型Modelint、Modelfloat、Modelbool;
(3)性能预测模型Tall=l1×Tint+l2×Tfloat+l3×Tbool,其中,l1、l2、l3分别为Modelint、Modelfloat、Modelbool的系数,取值范围为[0,1],且l1+l2+l3=1,通过线性规划得到,Tint、Tfloat、Tbool分别表示通过Modelint、Modelfloat、Modelbool预测出的运行时间。


5.如权利要求2所述的系统,其特征在于,所述遗传算法将随机变异操作替换为在Spark集群资源实际范围内做线性加法变异操作。


6.如权利要求5所述的系统,其特征在于,所述线性加法变异操作具体如下:
(1)在[0,N]范围内随机选择参数j;
(2)判断Ci[j]是布尔型、整型或是浮点型,如果是布尔型,进入步骤(3);如果是整型,进入步骤(4);如果是浮点型,进入步骤(5),其中,Ci[j]表示第i组中第j个目标配置参数的值,i∈[1,K],j∈[1,N],K表示训练集...

【专利技术属性】
技术研发人员:石宣化金海李明玉胡振宇张一鹏宗玉芬
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1