CN112365002A - 基于spark的模型构建方法、装置、系统及存储介质 - Google Patents
基于spark的模型构建方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN112365002A CN112365002A CN202011259305.6A CN202011259305A CN112365002A CN 112365002 A CN112365002 A CN 112365002A CN 202011259305 A CN202011259305 A CN 202011259305A CN 112365002 A CN112365002 A CN 112365002A
- Authority
- CN
- China
- Prior art keywords
- training
- model
- spark
- parameter
- optimal
- 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
- 238000010276 construction Methods 0.000 title claims abstract description 46
- 238000012549 training Methods 0.000 claims abstract description 270
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000011156 evaluation Methods 0.000 claims description 39
- 238000012795 verification Methods 0.000 claims description 26
- 238000004422 calculation algorithm Methods 0.000 claims description 23
- 238000004458 analytical method Methods 0.000 claims description 18
- 238000012360 testing method Methods 0.000 claims description 7
- 238000010801 machine learning Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Abstract
本申请公开了一种基于spark的模型构建方法、装置、系统及存储介质,该方法的步骤包括:响应用户的调参请求,基于调参请求确定对应的训练任务和待训练数据集;基于训练任务和待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;基于各个训练模型确定对应的最优模型参数,基于最优模型参数构建对应的最优训练模型。由此可知,本申请通过自动根据训练任务和待训练数据进行分布式spark模型训练,得到构建模型的最优模型参数,并通过该最优模型参数进行构建最优训练模型,提升了模型构建效率,不需要人工手动设置参数和调整参数,提升了模型参数准确性。
Description
技术领域
本申请涉及数据处理、Spark分布式和模型优化技术领域,尤其涉及一种基于spark的模型构建方法、装置、系统及存储介质。
背景技术
随着机器学习(Machine Learning)的发展,机器学习已经应用于spark分布式领域。现有技术中,分布式机器学习的建模参数调优,主要是通过人工方式去设置参数和调整参数。但是,分布式机器学习的过程中,涉及到了大量的数据,以及需要针对每个不同的现实场景,进行不同的配置和优化,因此,需要花费大量的时间进行模型选择和模型参数调整等方面,从而导致了模型构建和模型调整的耗时过长。同时,设置参数和调整参数都是通过人工手动完成的,从而导致构建的模型参数准确性低。
发明内容
本申请的主要目的在于提供一种基于spark的模型构建方法、装置、系统及存储介质,旨在提升模型构建效率和模型参数准确性。
为实现上述目的,本申请实施例提供一种基于spark的模型构建方法,所述基于spark的模型构建方法包括:
响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
可选地,所述基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型的步骤包括:
基于所述调参请求中的模型评价指标确定各个所述训练模型对应的评价参数,并基于验证数据集将所有训练模型的评价参数进行参数对比,得到最优评价参数;
将所述最优评价参数对应的训练模型确定为目标训练模型,并将所述目标训练模型中的模型参数确定为所述最优模型参数;
基于所述最优模型参数进行全量数据集的模型训练,以构建所述最优训练模型。
可选地,所述基于所述调参请求确定对应的训练任务和待训练数据集的步骤包括:
解析所述调参请求,得到对应的解析结果,其中,所述解析结果包括参数信息和算法类型;
基于所述参数信息确定所述调参请求中的待训练数据集,并基于所述算法类型确定所述调参请求中的训练任务。
可选地,所述基于所述参数信息确定所述调参请求中的待训练数据集的步骤包括:
确定所述参数信息中的验证模式参数,基于所述验证模式参数将调参请求中的数据集进行划分,得到所述调参请求中的待训练数据集。
可选地,所述基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型的步骤包括:
基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练,得到所述待训练数据集对应的各个训练模型。
可选地,所述基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练的步骤包括:
确定各个所述训练任务对应的参数选择模式,基于所述参数选择模式确定各个所述训练任务的执行类型,其中,执行类型为串行任务或者并行任务;
根据各个所述训练任务的执行类型和spark集群资源的可用情况,对各个所述训练任务的进行队列分桶,确定各个所述训练任务的执行队列;
串行任务在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。
可选地,所述基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型的步骤之后,还包括:
将所述最优训练模型返回至显示界面,以供所述用户基于所述最优训练模型进行对应的数据测试任务。
本申请实施例还提供一种基于spark的模型构建装置,所述基于spark的模型构建装置包括:
确定模块,用于响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
训练模块,用于基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
构建模块,用于基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
本申请实施例还提供一种系统,所述系统包括存储器、处理器和存储在所述存储器上并在所述处理器上运行的基于spark的模型构建程序,所述基于spark的模型构建程序被所述处理器执行时实现如上所述的基于spark的模型构建方法的步骤。
本申请实施例还提供一种存储介质,所述存储介质上存储有基于spark的模型构建程序,所述基于spark的模型构建程序被处理器执行时实现如上所述的基于spark的模型构建方法的步骤。
本申请实施例提供的基于spark的模型构建方法、装置、系统及存储介质,通过响应用户的调参请求,基于调参请求确定对应的训练任务和待训练数据集;基于训练任务和待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;基于各个训练模型确定对应的最优模型参数,基于最优模型参数构建对应的最优训练模型。由此可知,本申请在构建模型的过程中,通过自动根据训练任务和待训练数据进行分布式spark模型训练,得到构建模型的最优模型参数,并通过该最优模型参数进行构建最优训练模型,提升了模型构建效率,不需要人工手动设置参数和调整参数,提升了模型参数准确性。
附图说明
图1是本申请实施例方案涉及的硬件运行环境的系统结构示意图;
图2是本申请基于spark的模型构建方法第一实施例的流程示意图;
图3是本申请基于spark的模型构建方法的模型构建系统结构示意图;
图4是本申请基于spark的模型构建方法步骤S10的细化流程示意图;
图5是本申请基于spark的模型构建方法步骤S201的细化流程示意图;
图6是本申请基于spark的模型构建方法的模型构建系统流程示意图;
图7是本申请基于spark的模型构建装置的功能模块示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:响应用户的调参请求,基于调参请求确定对应的训练任务和待训练数据集;基于训练任务和待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;基于各个训练模型确定对应的最优模型参数,基于最优模型参数构建对应的最优训练模型。由此可知,本申请在构建模型的过程中,通过自动根据训练任务和待训练数据进行分布式spark模型训练,得到构建模型的最优模型参数,并通过该最优模型参数进行构建最优训练模型,提升了模型构建效率,不需要人工手动设置参数和调整参数,提升了模型参数准确性。
具体地,参照图1,图1为本申请实施例方案涉及的硬件运行环境的系统结构示意图。
本申请实施例的系统可以具有数据处理功能的固定系统和基于spark机器学习建模的模型构建系统等。
如图1所示,该系统可以包括:处理器1001,例如CPU(Central Processing Unit,中央处理器),存储器1005,用户接口1003,网络接口1004,通信总线1002。通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(board),用户接口1003可选的还可以包括标准的有线接口(如USB(Universal SerialBus,通用串行总线)接口)、无线接口(如蓝牙接口)。网络接口1004可以包括标准的有线接口、无线接口(如WI-FI((Wireless-Fidelity))接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的系统结构并不构成对系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质(需要说明的是,本申请中的存储介质为计算机可读存储介质)的存储器1005中可以包括操作设备、网络通信模块、用户接口模块以及基于spark的模型构建程序。其中,操作设备是管理和控制系统硬件和软件资源的程序,支持基于spark的模型构建程序以及其它软件或程序的运行。
在图1所示的系统中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接用户终端,与用户终端进行数据通信;其中,处理器1001可以用于调用存储器1005中存储的基于spark的模型构建程序,并执行如下操作:
响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
基于所述调参请求中的模型评价指标确定各个所述训练模型对应的评价参数,并基于验证数据集将所有训练模型的评价参数进行参数对比,得到最优评价参数;
将所述最优评价参数对应的训练模型确定为目标训练模型,并将所述目标训练模型中的模型参数确定为所述最优模型参数;
基于所述最优模型参数进行全量数据集的模型训练,以构建所述最优训练模型。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
解析所述调参请求,得到对应的解析结果,其中,所述解析结果包括参数信息和算法类型;
基于所述参数信息确定所述调参请求中的待训练数据集,并基于所述算法类型确定所述调参请求中的训练任务。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
确定所述参数信息中的验证模式参数,基于所述验证模式参数将调参请求中的数据集进行划分,得到所述调参请求中的待训练数据集。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练,得到所述待训练数据集对应的各个训练模型。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
确定各个所述训练任务对应的参数选择模式,基于所述参数选择模式确定各个所述训练任务的执行类型,其中,执行类型为串行任务或者并行任务;
根据各个所述训练任务的执行类型和spark集群资源的可用情况,对各个所述训练任务的进行队列分桶,确定各个所述训练任务的执行队列;
串行任务在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。
进一步地,处理器1001可以调用存储器1005中存储的基于spark的模型构建程序,还执行以下操作:
将所述最优训练模型返回至显示界面,以供所述用户基于所述最优训练模型进行对应的数据测试任务。
本申请实施例通过响应用户的调参请求,基于调参请求确定对应的训练任务和待训练数据集;基于训练任务和待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;基于各个训练模型确定对应的最优模型参数,基于最优模型参数构建对应的最优训练模型。由此可知,本申请在构建模型的过程中,通过自动根据训练任务和待训练数据进行分布式spark模型训练,得到构建模型的最优模型参数,并通过该最优模型参数进行构建最优训练模型,提升了模型构建效率,不需要人工手动设置参数和调整参数,提升了模型参数准确性。
基于上述的系统架构但不限于上述架构,本申请实施例提供了基于spark的模型构建方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些数据下,可以以不同于此处的顺序完成所示出或描述的步骤。
本申请本实施例方法的执行主体可以是一种基于spark的模型构建装置,也可以是一种基于spark机器学习建模的模型构建系统,本申请实施例以基于spark机器学习建模的模型构建系统作为执行主体进行举例。
参照图2,图2为本申请基于spark的模型构建方法第一实施例的流程示意图。所述基于spark的模型构建方法包括:
步骤S10,响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集。
如图3所示,图3是本申请基于spark的模型构建方法的模型构建系统结构示意图。spark机器学习建模的模型构建系统(模型构建系统)包括但不限制于参数设置层、管理层、参数选择Client层、参数选择Server层、模型训练层和运行环境。
参数设置层用于接收用户通过Web UI界面提交调参请求,调参请求包括但不限制于数据划分策略、算法(模型)评价指标、验证模式、参数选择模式和参数配置等参数。其中,数据划分策略和验证模式可为固定划分和交叉验证。参数选择模式可为网格搜索、随机搜索、贝叶斯优化、SimulateAnneal(模拟退火算法)等模式。算法评价指标可为F值、加权精确率、加权召回率、精度,MAE(Mean Absolute Error,回归支持平均绝对误差),MSE(MeanSquared Error,均方误差),RMSE(Re Mean Squared Error,均方根差)和轮廓系数等。参数配置可为分类算法、回归算法、聚类算法的参数设置。
管理层用于解析用户通过Web UI界面发送的调参请求,生成参数选择Client层执行的训练任务、训练数据的划分,训练任务的下发、最优模型参数和最优训练模型的生成和返回。参数选择Client层用于执行管理层下发的训练任务,并将一次训练任务封装为一次学习请求,并将此学习请求提交至参数选择Server层。参数选择Server层用于响应参数选择Client层发送的的学习请求,将学习任务根据学习策略生成Spark的Job,并向Spark提交Job,根据模型训练结果向参数选择Client端返回学习结果。模型训练层用于执行参数选择Server层发送的Spark Job请求,基于Spark集群执行训练任务,并向参数选择Server层返回模型训练结果。运行环境为底层的服务器环境支撑,Spark集群可以支持云主机集群、服务器集群和虚拟主机集群的部署。
模型构建系统侦测到用户通过Web UI界面发送的调参请求后,响应该调参请求,并将该调参请求进行参数解析,得到调参请求中的各个参数。然后,模型构建系统根据调参请求中的算法(模型)类型参数确定该调参请求对应的模型训练任务(训练任务,也即DAG(Directed Acyclic Graph,有向无环图)任务)。接着,模型构建系统确定调参请求中的设定数据集,设定数据集中包括参数范围和参数宽度,再根据调参请求中的验证模式参数将设定数据集进行拆分,拆分成用于训练任务的待训练数据集和验证数据集。
其中,若模型构建系统确定验证模式参数为固定划分,模型构建系统则将待训练数据划分为训练验证集类型的待训练数据集。若模型构建系统确定验证模式参数为交叉验证,模型构建系统则将待训练数据划分为K折交叉集类型的待训练数据集。
步骤S20,基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型。
模型构建系统得到训练任务和待训练数据集后,模型构建系统确定各个训练任务的执行队列以及执行类型,其中,执行类型由算法类型参数决定的,执行类型可为并行执行或者串行执行。接着,模型构建系统根据各个训练任务的执行队列以及执行类型将待训练数据集进行分布式spark模型训练,得到该调参请求对应的各个训练模型。
步骤S30,基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
模型构建系统得到该调参请求对应的各个训练模型后,确定该调参请求中的算法评价指标(模型评价指标),根据该模型评价指标确定各个训练模型中的评价参数。然后,模型构建系统基于验证数据集将各个训练模型中的评价参数进行对应参数比较方式,确定评价参数中的最优评价参数,其中,参数比较方式由模型评价指标决定,本实施例不作限制。接着,模型构建系统将最优评价参数对应的训练模型中的模型参数确定为最优模型参数,并通过最优模型参数进行再次模型训练,构建该最优模型参数对应的最优训练模型。
进一步地,所述步骤S20包括:
步骤S201,基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练,得到所述待训练数据集对应的各个训练模型。
具体地,模型构建系统确定各个训练任务对应的参数选择模式,基于参数选择模式确定各个训练任务的执行类型,其中,执行类型为串行任务或者并行任务。然后,模型构建系统根据各个训练任务的执行类型和spark集群资源的可用情况,对各个训练任务进行队列分桶,确定各个训练任务的执行队列。接着,模型构建系统根据训练任务对应的执行队列和执行类型将待训练数据集进行分布式spark模型训练,得到各个待训练数据集对应的各个训练模型。
进一步地,所述步骤S30包括:
步骤S301,基于所述调参请求中的模型评价指标确定各个所述训练模型对应的评价参数,并基于验证数据集将所有训练模型的评价参数进行参数对比,得到最优评价参数;
步骤S302,将所述最优评价参数对应的训练模型确定为目标训练模型,并将所述目标训练模型中的模型参数确定为所述最优模型参数;
步骤S303,基于所述最优模型参数进行全量数据集的模型训练,以构建所述最优训练模型。
具体地,模型构建系统确定该调参请求中的模型评价指标,根据该模型评价指标确定各个训练模型中的评价参数,并基于验证数据集将各个训练模型中的评价参数进行参数比较,确定评价参数中的最优评价参数。然后,模型构建系统将最优评价参数对应的训练模型确定为训练任务训练得到的目标训练模型,并将该目标训练模型中的模型参数确定为训练任务训练得到的最优模型参数。接着,模型构建系统将最优模型参数进行全量数据集的模型训练,构建该最优模型参数对应的最优训练模型。
进一步地,所述步骤S30之后还包括:
步骤S40,将所述最优训练模型返回至显示界面,以供所述用户基于所述最优训练模型进行对应的数据测试任务。
具体地,模型构建系统得到该调参请求对应的最优训练模型后,将该最优训练模型返回至Web UI显示界面。用户得到最优训练模型,将对应的测试数据输入该最优训练模型中进行对应的数据测试任务,得到该测试数据对应的预测结果。
本实施例通过响应用户的调参请求,基于调参请求确定对应的训练任务和待训练数据集;基于训练任务和待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;基于各个训练模型确定对应的最优模型参数,基于最优模型参数构建对应的最优训练模型。由此可知,本实施例在构建最优训练模型的过程中,对调参请求进行参数解析,更好的适应spark执行引擎,生成批量训练任务,实现混合调度执行策略。此外,本实施例只需要在模型构建系统的显示界面输入对应的参数范围、选择对应的算法类型,以及设定对应的参数即可得到对应的最优训练模型,而不需要进行手动设置和调整具体的参数,从而提升了模型构建准确性和构建效率。同时,本实施例在调参即在确定最优模型参数的过程中,是基于模型构建系统的端到端进行实现的,从而达到自动调参以及一键式生成最优训练模型的目的。此外,模型构建系统可根据spark集群资源实现动态扩展计算,不再局限于单台服务器的资源限制。
参照图4,图4为本申请基于spark的模型构建方法另一实施例的流程示意图。所述另一实施例是步骤S10的细化,所述步骤S10包括:
步骤S101,解析所述调参请求,得到对应的解析结果,其中,所述解析结果包括参数信息和算法类型;
步骤S102,基于所述参数信息确定所述调参请求中的待训练数据集,并基于所述算法类型确定所述调参请求中的训练任务。
具体地,模型构建系统对调参请求进行解析,得到包括但不限制于参数信息和算法类型的解析结果。然后,模型构建系统根据解析结果中参数信息将调参请求中的数据集进行拆分,得到调参请求中的待训练数据集。接着,模型构建系统根据解析结果中的算法类型确定调参请求中的训练任务。
在本实施例中,比如,解析结果中的算法类型为随机搜索,随机确定对应的训练次数为1000次,随机搜索对应的执行类型为并行执行,模型构建系统则确定调参请求对应的训练任务为1000次的并行执行训练。
所述步骤S102包括:
步骤S1021,确定所述参数信息中的验证模式参数,基于所述验证模式参数将调参请求中的数据集进行划分,得到所述调参请求中的待训练数据集。
具体地,模型构建系统对调参请求进行解析得到解析结果后,确定解析结果中参数信息的验证模式参数,然后,模型构建系统根据验证模式参数将数据集进行对应的拆分,得到调参请求中的待训练数据集。
本实施例解析调参请求,得到对应的解析结果,其中,解析结果包括参数信息和算法类型;基于参数信息确定调参请求中的待训练数据集,并基于算法类型确定调参请求中的训练任务。由此可知,本实施例在确定训练任务的过程中,对调参请求进行参数解析,更好的适应spark执行引擎,生成批量训练任务,实现混合调度执行策略。同时,本实施例在确定待训练数据集的过程中,只需要输入对应的设置数据集即可得到对应的待训练数据集,而不需要进行手动设置和调整具体的参数,从而保证了参数精确性,以及模型构建的效率。
参照图5,图5为本申请基于spark的模型构建方法另一实施例的流程示意图。所述另一实施例是步骤S201的细化,所述步骤S201包括:
步骤S2011,确定各个所述训练任务对应的参数选择模式,基于所述参数选择模式确定各个所述训练任务的执行类型,其中,执行类型为串行任务或者并行任务;
步骤S2012,根据各个所述训练任务的执行类型和spark集群资源的可用情况,对各个所述训练任务的进行队列分桶,确定各个所述训练任务的执行队列;
步骤S2013,串行任务在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。
具体地,模型构建系统确定各个训练任务对应的参数选择模式,基于参数选择模式确定各个训练任务的执行类型,其中,执行类型为串行任务或者并行任务。然后,模型构建系统根据各个训练任务的执行类型和spark集群资源的可用情况,对各个训练任务的进行队列分桶,确定各个训练任务的执行队列。接着,模型构建系统将串行任务排列在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。
需要说明的是,对于并行执行类型的训练任务,采用多线程技术实现训练任务的并行化执行。
本实施例通过确定各个训练任务对应的参数选择模式,基于参数选择模式确定各个训练任务的执行类型,其中,执行类型为串行任务或者并行任务;根据各个训练任务的执行类型和spark集群资源的可用情况,对各个训练任务的进行队列分桶,确定各个训练任务的执行队列;串行任务在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。由此可知,本实施例在确定训练模型的过程中,可通过串行执行类型和并行执行类型进行训练任务,实现了串行执行与并行执行混合的调度执行方法,相较于其他调参系统,通过并行执行方式的调度执行,提高了模型构建系统的性能。
进一步地,如图6,图6是本申请基于spark的模型构建方法的模型构建系统流程示意图。
用户通过Web UI界面提交调参请求,调参请求包括但不限制于数据划分策略、算法(模型)评价指标、验证模式、参数选择模式和参数配置等参数。管理层接收到用户提交的调参请求后,解析该调参请求,生成参数选择Client层执行的训练任务和待训练数据,并将训练任务和待训练数据下发至参数选择Client层。参数选择Client层接收到管理层下发的训练任务和待训练数据后,根据训练任务和待训练数据进行模型训练,并将每一次训练任务封装为一次学习请求,并将此学习请求提交至参数选择Server层。参数选择Server层接收并响应参数选择Client层发送的的学习请求,将学习任务根据学习策略生成Spark的Job,并向Spark提交Job。模型训练层接收并响应参数选择Server层发送的Spark Job请求,基于Spark集群执行训练任务,并向参数选择Server层返回模型训练结果。参数选择Server层将模型训练结果返回至参数选择Client层,参数选择Client层再将模型训练结果返回至管理层,管理层再将模型训练结果返回至Web UI界面。
本申请还提供一种基于spark的模型构建装置。参照图7,图7是本申请基于spark的模型构建装置的功能模块示意图。所述基于spark的模型构建装置包括:
确定模块10,用于确定模块,用于响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
训练模块20,用于基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
构建模块30,用于基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
其中,上述基于spark的模型构建装置中各个模块的功能实现与上述基于spark的模型构建方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
本申请还提供一种存储介质,该存储介质上存储有基于spark的模型构建程序,所述基于spark的模型构建程序被处理器执行时实现如以上任一项实施例所述的基于spark的模型构建方法的步骤。
本申请存储介质的具体实施例与上述基于spark的模型构建方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的数据下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多数据下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件货物的形式体现出来,该计算机软件货物存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台系统完成本申请各个实施例所述的方法。
Claims (10)
1.一种基于spark的模型构建方法,其特征在于,所述基于spark的模型构建方法包括:
响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
2.如权利要求1所述的基于spark的模型构建方法,其特征在于,所述基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型的步骤包括:
基于所述调参请求中的模型评价指标确定各个所述训练模型对应的评价参数,并基于验证数据集将所有训练模型的评价参数进行参数对比,得到最优评价参数;
将所述最优评价参数对应的训练模型确定为目标训练模型,并将所述目标训练模型中的模型参数确定为所述最优模型参数;
基于所述最优模型参数进行全量数据集的模型训练,以构建所述最优训练模型。
3.如权利要求1所述的基于spark的模型构建方法,其特征在于,所述基于所述调参请求确定对应的训练任务和待训练数据集的步骤包括:
解析所述调参请求,得到对应的解析结果,其中,所述解析结果包括参数信息和算法类型;
基于所述参数信息确定所述调参请求中的待训练数据集,并基于所述算法类型确定所述调参请求中的训练任务。
4.如权利要求3所述的基于spark的模型构建方法,其特征在于,所述基于所述参数信息确定所述调参请求中的待训练数据集的步骤包括:
确定所述参数信息中的验证模式参数,基于所述验证模式参数将调参请求中的数据集进行划分,得到所述调参请求中的待训练数据集。
5.如权利要求1所述的基于spark的模型构建方法,其特征在于,所述基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型的步骤包括:
基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练,得到所述待训练数据集对应的各个训练模型。
6.如权利要求5所述的基于spark的模型构建方法,其特征在于,所述基于各个所述训练任务对应的执行队列和执行类型将所述待训练数据集进行分布式spark模型训练的步骤包括:
确定各个所述训练任务对应的参数选择模式,基于所述参数选择模式确定各个所述训练任务的执行类型,其中,执行类型为串行任务或者并行任务;
根据各个所述训练任务的执行类型和spark集群资源的可用情况,对各个所述训练任务的进行队列分桶,确定各个所述训练任务的执行队列;
串行任务在同一队列中,并行任务根据任务数量动态调整其队列,将执行队列提交到spark集群进行模型训练。
7.如权利要求1至6任一项所述的基于spark的模型构建方法,其特征在于,所述基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型的步骤之后,还包括:
将所述最优训练模型返回至显示界面,以供所述用户基于所述最优训练模型进行对应的数据测试任务。
8.一种基于spark的模型构建装置,其特征在于,所述基于spark的模型构建装置包括:
确定模块,用于响应用户的调参请求,基于所述调参请求确定对应的训练任务和待训练数据集;
训练模块,用于基于所述训练任务和所述待训练数据集进行分布式spark模型训练,得到对应的各个训练模型;
构建模块,用于基于各个所述训练模型确定对应的最优模型参数,基于所述最优模型参数构建对应的最优训练模型。
9.一种系统,其特征在于,所述系统包括存储器、处理器和存储在所述存储器上并在所述处理器上运行的基于spark的模型构建程序,所述基于spark的模型构建程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于spark的模型构建方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有基于spark的模型构建程序,所述基于spark的模型构建程序被处理器执行时实现如权利要求1至7中任一项所述的基于spark的模型构建方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011259305.6A CN112365002A (zh) | 2020-11-11 | 2020-11-11 | 基于spark的模型构建方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011259305.6A CN112365002A (zh) | 2020-11-11 | 2020-11-11 | 基于spark的模型构建方法、装置、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112365002A true CN112365002A (zh) | 2021-02-12 |
Family
ID=74516058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011259305.6A Pending CN112365002A (zh) | 2020-11-11 | 2020-11-11 | 基于spark的模型构建方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112365002A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794003A (zh) * | 2015-02-04 | 2015-07-22 | 汉鼎信息科技股份有限公司 | 一种整合实时和非实时模式的大数据分析系统 |
CN105912500A (zh) * | 2016-03-30 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 机器学习模型生成方法和装置 |
WO2017070900A1 (zh) * | 2015-10-29 | 2017-05-04 | 华为技术有限公司 | 多核数字信号处理系统中处理任务的方法和装置 |
US20180300653A1 (en) * | 2017-04-18 | 2018-10-18 | Distributed Systems, Inc. | Distributed Machine Learning System |
CN110188804A (zh) * | 2019-05-16 | 2019-08-30 | 武汉工程大学 | 基于MapReduce框架的支持向量机最优分类模型参数搜索的方法 |
CN110276074A (zh) * | 2019-06-20 | 2019-09-24 | 出门问问信息科技有限公司 | 自然语言处理的分布式训练方法、装置、设备及存储介质 |
CN111176832A (zh) * | 2019-12-06 | 2020-05-19 | 重庆邮电大学 | 基于内存计算框架Spark的性能优化和参数配置方法 |
CN111368998A (zh) * | 2020-03-04 | 2020-07-03 | 深圳前海微众银行股份有限公司 | 基于Spark集群的模型训练方法、装置、设备及存储介质 |
CN111813580A (zh) * | 2020-07-24 | 2020-10-23 | 成都信息工程大学 | 一种基于矩阵表示的分布式模型训练优化方法 |
-
2020
- 2020-11-11 CN CN202011259305.6A patent/CN112365002A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794003A (zh) * | 2015-02-04 | 2015-07-22 | 汉鼎信息科技股份有限公司 | 一种整合实时和非实时模式的大数据分析系统 |
WO2017070900A1 (zh) * | 2015-10-29 | 2017-05-04 | 华为技术有限公司 | 多核数字信号处理系统中处理任务的方法和装置 |
CN105912500A (zh) * | 2016-03-30 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 机器学习模型生成方法和装置 |
US20180300653A1 (en) * | 2017-04-18 | 2018-10-18 | Distributed Systems, Inc. | Distributed Machine Learning System |
CN110188804A (zh) * | 2019-05-16 | 2019-08-30 | 武汉工程大学 | 基于MapReduce框架的支持向量机最优分类模型参数搜索的方法 |
CN110276074A (zh) * | 2019-06-20 | 2019-09-24 | 出门问问信息科技有限公司 | 自然语言处理的分布式训练方法、装置、设备及存储介质 |
CN111176832A (zh) * | 2019-12-06 | 2020-05-19 | 重庆邮电大学 | 基于内存计算框架Spark的性能优化和参数配置方法 |
CN111368998A (zh) * | 2020-03-04 | 2020-07-03 | 深圳前海微众银行股份有限公司 | 基于Spark集群的模型训练方法、装置、设备及存储介质 |
CN111813580A (zh) * | 2020-07-24 | 2020-10-23 | 成都信息工程大学 | 一种基于矩阵表示的分布式模型训练优化方法 |
Non-Patent Citations (2)
Title |
---|
WEIBEI FAN等: "An evaluation model and benchmark for parallel computing frameworks", 《MOBILE INFORMATION SYSTEMS》, vol. 2018, pages 1 - 15 * |
许贤泽等: "基于Spark和梯度提升树模型的短期负荷预测", 《华中科技大学学报(自然科学版)》, vol. 47, no. 05, pages 84 - 89 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688493B (zh) | 训练深度神经网络的方法、装置及系统 | |
CN110321222B (zh) | 基于决策树预测的数据并行作业资源分配方法 | |
WO2016110234A1 (zh) | 面向云平台应用的服务推荐方法、设备及系统 | |
JP7043596B2 (ja) | ニューラルアーキテクチャ検索 | |
Fang et al. | Qos-aware scheduling of heterogeneous servers for inference in deep neural networks | |
Han et al. | Workload-adaptive configuration tuning for hierarchical cloud schedulers | |
JP2023526883A (ja) | タスクのためのスケジューリング方法、コンピューティングデバイス、およびストレージ媒体 | |
CN112181664A (zh) | 负载均衡方法及装置、计算机可读存储介质及电子设备 | |
CN111814117A (zh) | 模型解释方法、设备及可读存储介质 | |
CN111581039A (zh) | 系统性能的测试方法、装置、设备及存储介质 | |
CN116302448B (zh) | 任务调度方法和系统 | |
CN112365002A (zh) | 基于spark的模型构建方法、装置、系统及存储介质 | |
CN110716809B (zh) | 用于调度云资源的方法和装置 | |
JP2006221516A (ja) | 通信サーバ設定値決定装置,そのプログラム及びその方法 | |
CN116915869A (zh) | 基于云边协同的时延敏感型智能服务快速响应方法 | |
Marinho et al. | LABAREDA: a predictive and elastic load balancing service for cloud-replicated databases | |
WO2012026582A1 (ja) | シミュレーション装置、分散計算機システム、シミュレーション方法およびプログラム | |
US20160078069A1 (en) | Method for improving energy efficiency of map-reduce system and apparatus thereof | |
CN110727511A (zh) | 应用程序的控制方法、网络侧设备和计算机可读存储介质 | |
Cui et al. | A scheduling algorithm for multi-tenants instance-intensive workflows | |
CN113225269B (zh) | 基于容器的工作流调度方法、装置、系统及存储介质 | |
Poltronieri et al. | Value is king: the mecforge deep reinforcement learning solution for resource management in 5g and beyond | |
Boëzennec et al. | Optimization metrics for the evaluation of batch schedulers in hpc | |
Peláez et al. | Online scheduling of deadline‐constrained bag‐of‐task workloads on hybrid clouds | |
Pakhrudin et al. | Cloud service analysis using round-robin algorithm for quality-of-service aware task placement for internet of things services |
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 |