一种机器学习模型的实现方法及装置

文档序号:34389970发布日期:2023-06-08 09:28阅读:44来源:国知局
一种机器学习模型的实现方法及装置与流程

本发明涉及计算机,具体是一种机器学习模型的实现方法及装置。


背景技术:

1、机器学习是当前越来越重要的大规模数据分析技术,广泛应用于在线搜索、市场营销、医疗保健和信息安全等领域。机器学习包括训练和推理等两个阶段,训练阶段从训练数据集构建机器学习模型,推理阶段使用该模型对新输入进行预测。机器学习模型是输入到输出映射的近似函数,模型训练通常需要基于大规模数据集,经过多次迭代计算,直到收敛。模型训练是探索性过程,通过反复训练调整超参数和模型结构,生成最终模型。

2、例如中国专利,公告号为:cn109299785b,该发明公开了一种机器学习模型的实现方法及装置,该方法,包括:预先设置机器学习模型的至少一个训练模板和机器学习模型的至少一个服务模板;确定目标训练模板;确定目标服务模板;接收至少一个训练模板参数;接收至少一个发布模板参数;根据目标训练模板和训练模板参数,生成目标机器学习模型的训练代码;运行训练代码,实现:生成目标机器学习模型,对目标机器学习模型进行训练,生成训练后的目标机器学习模型;根据目标服务模板和发布模板参数,生成服务代码;运行服务代码,实现:对训练后的目标机器学习模型进行封装,生成机器学习模型服务。

3、该发明提供的一种机器学习模型的实现方法及装置,能够更加方便地实现机器学习模型。但是在云计算环境下,并发训练多机器学习模型会造成严重的共享集群资源竞争,影响执行效率。所以本发明提出一种机器学习模型的实现方法及装置,以解决上述提出的问题。


技术实现思路

1、本发明意在提供一种机器学习模型的实现方法及装置,以解决现有的技术手段在云计算环境下,并发训练多机器学习模型会造成严重的共享集群资源竞争,影响执行效率的问题。

2、为了达到上述目的,本发明的基础方案如下:一种机器学习模型的实现方法,包括在机器学习模型训练中的资源调度框架,资源调度框架管理跨多个作业的资源分配,数据分析将资源调度框架分为两层调度:作业级调度器将资源分配给运行在worker上的并发作业,任务级调度器将作业中的任务分配给可用的worker;现有工作级调度器根据资源公平或优先级分配资源,对机器学习训练任务,调度器做出次优的调度决策,调度器从每个作业中收集质量和延迟信息,并动态调整资源分配,以优化集群范围内的质量改进。

3、基础方案的原理:本发明提出的机器学习模型的实现方法,根据历史监测数据建立迭代次数与模型质量提升间的模型,在线预测资源分配对模型质量提升的影响,制定资源分配策略,以达到在云计算平台运行的多个并发执行的模型训练任务的整体性能最大化的目标。机器学习模型训练任务是反复迭代的过程,随着迭代次数增加,模型训练的收益逐渐减小,因此,分配更多的资源给那些可能获得更高收益的任务,可以提高整体的模型训练性能和资源利用率。本发明方法通过历史数据建立迭代次数与模型质量提升间的关联模型以在线预测资源分配对模型质量提升的影响,进而制定资源分配策略以达到在云计算平台运行的多个并发执行的模型训练任务的整体性能最大化的效果,从而提高资源利用率,快速适应任务和负载的动态变化。

4、所达到的有益效果是:实际运用表明,本发明所提出的机器学习模型方法能够提高资源利用率,快速适应任务和负载的动态变化。解决了现有的技术手段在云计算环境下,并发训练多机器学习模型会造成严重的共享集群资源竞争,影响执行效率的问题。

5、进一步,资源调度算法执行流程具体包括以下步骤:

6、步骤一,每隔一段时间执行一次在线资源调度策略的制定,预测机器学习在将来的一段时间内执行迭代次数;

7、步骤二,每个机器学习任务在某时刻的分配资源通过历史迭代次数以及收益损失函数值计算;

8、步骤三,为步骤二中的每个任务分配单位资源,预测资源分配后得到的收益损失值变化为δj=lossj(aj)-lossj(aj+r),将该资源分配给收益损失值变化最大的任务,更新aj=aj+r,r是单位资源;

9、步骤四,在满足条件:∑jaj≤c的同时,表示任务分配资源aj总和不大于资源池中可分配资源的总量c下,重复步骤四,从而达到mj∈ajx∑jδj,即在云计算平台并发执行的j个任务在将来t时间内的收益损失减少量最大化。

10、基础方案的原理及有益效果是:本发明的资源调度算法通过历史数据建立迭代次数与模型质量提升间的关联模型,能够在线预测资源分配对模型质量提升的影响;能够从整体上考虑在云计算平台运行的多个并发执行的模型训练任务的性能,提高资源利用率,快速适应任务和负载的动态变化。

11、进一步,步骤一中的执行迭代次数预测公式为iter=(t×r)/(c×s),t是时间段,c是由算法复杂度所决定的常数,s是每次迭代处理的数据量,r是分配的单位资源。

12、进一步,步骤二中的收益损失函数为:lossj(aj)=μiter-b+c,iter为到t时刻的迭代次数,j是学习任务,μ,b,c为常数。

13、进一步,在机器学习模型训练中,任务根据数据集分区对模型参数进行更新,当任务完成数据处理,所有任务的更新结果聚集并发送回作业驱动程序以更新机器学习模型,调度器也从一些作业驱动程序中回收资源单元,并将它们分配给其他作业。

14、进一步,在机器学习模型训练中,细粒度的作业级调度器在竞争的机器学习作业之间分配集群资源,在短时间间隔内完成,短时间间隔的调度确保跨作业的资源的持续再平衡,其迭代时间为30-500毫秒。

15、一种机器学习模型的实现装置,包括处理器、存储器、服务器和总线,存储器用于存储执行指令,处理器、服务器和存储器通过总线信号连接,当存储器运行时,处理器执行存储器存储的执行指令,总线上还连接有网络接口和内存;还包括设有调度器和作业驱动程序的调度分配训练单元和更新单元。

16、进一步,调度分配训练单元中调度器用来协调共享云计算资源的多个机器学习模型训练作业的资源分配;作业驱动程序包含迭代训练逻辑,为每个迭代生成任务,并跟踪作业的整体进度;

17、更新单元中调度器与并发执行作业的驱动程序进行通信,跟踪作业进度并定期更新资源分配;在每个调度阶段的开始阶段,调度器根据作业的工作负载、资源需求和任务进度分配资源。

18、基础方案的原理及有益效果是:建立的资源调度框架中,调度器用来协调共享云计算资源的多个机器学习模型训练作业的资源分配;作业驱动程序包含迭代训练逻辑,为每个迭代生成任务,并跟踪作业的整体进度;调度器与并发执行作业的驱动程序进行通信,跟踪作业进度并定期更新资源分配;在每个调度阶段的开始阶段,调度器根据作业的工作负载、资源需求和任务进度分配资源;每个作业由一组任务组成,每个任务处理数据集分区上的数据;在机器学习模型训练中,任务根据数据集分区对模型参数进行更新,当任务完成数据处理,所有任务的更新结果聚集并发送回作业驱动程序以更新机器学习模型;调度器也可以从一些作业驱动程序中回收资源单元,并将它们分配给其他作业。

19、本发明使用云计算调度框架实现在apachespark,及其相应的机器学习库机器学习ib,云计算调度方法实现在spark作业调度器中,训练数据集缓存在集群共享内存中的spark dataframes,每次迭代处理训练数据。

20、本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1