一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种超参数组合的搜索方法、装置、电子设备及存储介质与流程

2022-08-23 21:35:20 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术领域,尤其涉及一种超参数组合的搜索方法、装置、电子设备及存储介质。


背景技术:

2.在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数。通常情况下,需要对超参数进行搜索,给学习机选择一组最优的超参数,以提高学习的性能和效果。
3.目前,现有的超参数组合的搜索方法,通常是在机器学习模型的训练过程中,采用经验法通过手动的方式对超参数组合进行调整。然而,由于机器学习的多样性,导致用户在大多数超参数组合的调整过程中,无法得知如何设定合适的超参数。而且该方法需要多次对超参数组合进行调整,才能得到最优的超参数组合,导致在多次训练试验过程中需要耗费大量时间。因此,现有的超参数组合的搜索方法,超参数组合的搜索过程繁杂,而且超参数组合的搜索效率低下。


技术实现要素:

4.本发明实施例提供一种超参数组合的搜索方法、装置、电子设备及存储介质,能够简化超参数组合的搜索过程,实现超参数组合的自动搜索,从而提高超参数组合的搜索效率。
5.根据本发明的一方面,提供了一种超参数组合的搜索方法,其特征在于,包括:
6.响应于针对目标机器学习模型的超参数组合搜索请求,获取所述超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件;
7.根据所述搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,其中,所述超参数组合搜索脚本中包括多个超参数组合搜索框架;
8.根据所述至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间;
9.通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中搜索获取与所述目标机器学习模型匹配的目标超参数组合。
10.另外,根据本发明上述实施例的超参数组合的搜索方法,还可以具有如下附加的技术特征:
11.可选的,根据至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间,包括:
12.根据所述目标机器学习模型中各超参数的预设取值范围,获取与所述目标超参数组合搜索框架匹配的全域搜索空间;
13.根据所述至少一个超参数的值域限制条件,对所述全域搜索空间进行缩减处理,得到所述超参数组合搜索空间。
14.上述发明中的一个实施例具有如下优点或有益效果:提出了根据超参数的值域限
制条件确定超参数组合搜索空间的具体实现方式,以能够更准确的确定目标超参数组合搜索框架的超参数组合搜索空间。
15.可选的,通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中搜索获取与所述目标机器学习模型匹配的目标超参数组合,包括:
16.通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中,依次获取一组当前超参数组合;
17.通过所述超参数组合搜索脚本,将所述当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取所述用户训练脚本反馈的,目标机器学习模型针对所述当前超参数组合的模型验证结果;
18.返回执行通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中,依次获取一组当前超参数组合的操作,直至达到预设的搜索次数阈值;
19.通过所述超参数组合搜索脚本,根据与各所述超参数组合分别对应的模型验证结果,确定目标超参数组合。
20.上述发明中的一个实施例具有如下优点或有益效果:通过超参数组合搜索脚本获取当前超参数组合,使用户训练脚本根据当前超参数组合进行模型训练和模型验证,并获取用户训练脚本反馈的模型验证结果,重复执行获取当前超参数组合的操作,直至达到搜索次数阈值后,根据各模型验证结果确定目标超参数组合,能够实现超参数组合的自动搜索,提高超参数组合的搜索效率。
21.可选的,所述方法由分布式集群中的多个分布式节点共同执行,其中,所述方法预先以容器的形式配置在各所述分布式节点中。
22.上述发明中的一个实施例具有如下优点或有益效果:提出了在分布式集群中实现超参数组合的搜索方法的具体应用场景,以实现在分布式集群的应用场景中自动搜索超参数组合,从而进一步提高在分布式集群的应用场景中超参数组合的搜索效率。
23.可选的,在通过所述超参数组合搜索脚本,将所述当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取所述用户训练脚本反馈的,目标机器学习模型针对所述当前超参数组合的模型验证结果之后,还包括:
24.通过所述超参数组合搜索脚本,将所述目标机器学习模型针对所述当前超参数组合的模型验证结果存储于所述分布式集群的数据库容器中;
25.通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中,依次获取一组当前超参数组合的操作,具体包括:
26.通过所述超参数组合搜索脚本,根据所述数据库容器历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在所述超参数组合搜索空间中获取当前超参数组合。
27.上述发明中的一个实施例具有如下优点或有益效果:在分布式集群的应用场景中,通过将模型验证结果存储于数据库容器中,并根据数据库容器历史存储的各超参数组合的模型验证结果,在超参数组合搜索空间中获取当前超参数组合,能够进一步提高超参数组合的搜索效率。
28.可选的,所述方法由单节点独立执行,所述方法预先以容器的形式配置在所述单节点中。
29.上述发明中的一个实施例具有如下优点或有益效果:提出了在单节点中实现超参数组合的搜索方法的具体应用场景,以实现在单节点的应用场景中自动搜索超参数组合,从而进一步提高在单节点的应用场景中超参数组合的搜索效率。
30.可选的,在通过所述超参数组合搜索脚本,将所述当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取所述用户训练脚本反馈的,目标机器学习模型针对所述当前超参数组合的模型验证结果之后,还包括:
31.通过所述超参数组合搜索脚本,将所述目标机器学习模型针对所述当前超参数组合的模型验证结果存储于所述单节点的数据库中;
32.通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中,依次获取一组当前超参数组合的操作,具体包括:
33.通过所述超参数组合搜索脚本,根据所述数据库历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在所述超参数组合搜索空间中获取当前超参数组合。
34.上述发明中的一个实施例具有如下优点或有益效果:在单节点的应用场景中,通过将模型验证结果存储于数据库中,并根据数据库历史存储的各超参数组合的模型验证结果,在超参数组合搜索空间中获取当前超参数组合,能够进一步提高超参数组合的搜索效率。
35.根据本发明的另一方面,提供了一种超参数组合的搜索装置,包括:
36.超参数组合搜索请求响应模块,用于响应于针对目标机器学习模型的超参数组合搜索请求,获取所述超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件;
37.目标超参数组合搜索框架确定模块,用于根据所述搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,其中,所述超参数组合搜索脚本中包括多个超参数组合搜索框架;
38.超参数组合搜索空间确定模块,用于根据所述至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间;
39.目标超参数组合确定模块,用于通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中搜索获取与所述目标机器学习模型匹配的目标超参数组合。
40.根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
41.至少一个处理器;以及
42.与所述至少一个处理器通信连接的存储器;其中,
43.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的超参数组合的搜索方法。
44.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的超参数组合的搜索方法。
45.本发明实施例的技术方案,通过响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件,以根
据搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,并根据至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间,从而通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中搜索获取与目标机器学习模型匹配的目标超参数组合,解决现有的超参数组合的搜索过程繁杂以及搜索效率低下的问题,能够简化超参数组合的搜索过程,实现超参数组合的自动搜索,从而提高超参数组合的搜索效率。
46.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
47.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1是本发明实施例一提供的一种超参数组合的搜索方法的流程图;
49.图2是本发明实施例二提供的一种超参数组合的搜索方法的流程图;
50.图3是本发明实施例二提供的用户训练脚本的示例示意图;
51.图4是本发明实施例二提供的超参数组合搜索脚本更新的示意图;
52.图5是本发明实施例二提供的分布式节点中容器分布的示例示意图;
53.图6是本发明实施例二提供的单节点中超参数组合搜索的示例示意图;
54.图7是本发明实施例三提供的一种超参数组合的搜索方法的示例流程图;
55.图8是本发明实施例三提供的一种超参数组合的搜索方法的另一示例流程图;
56.图9是本发明实施例四提供的一种超参数组合的搜索装置的示意图;
57.图10是实现本发明实施例的超参数组合的搜索方法的电子设备的结构示意图。
具体实施方式
58.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
59.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
60.实施例一
61.图1是本发明实施例一提供的一种超参数组合的搜索方法的流程图,本实施例可适用于简化超参数组合的搜索过程的情况,该方法可以由超参数组合的搜索装置执行,该装置可以通过软件和/或硬件的方式实现,并一般可以直接集成在执行本方法的电子设备
中,该电子设备可以是终端设备,也可以是服务器设备,本发明实施例并不对执行超参数组合的搜索方法的电子设备的类型进行限定。具体的,如图1所示,该超参数组合的搜索方法具体可以包括如下步骤:
62.s110、响应于针对目标机器学习模型的超参数组合搜索请求,获取所述超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件。
63.其中,目标机器学习模型可以是任意一个需要进行训练的机器学习模型。超参数组合搜索请求可以是对超参数组合中超参数的取值进行搜索的请求。可以理解的是,不同的机器学习模型可以对应不同的超参数,不同的超参数可以有不同的取值,可以将多个超参数以及超参数取值进行组合得到与机器学习模型对应的超参数组合。搜索规则可以是对超参数组合中超参数的取值进行搜索的规则。示例性的,搜索规则可以是对超参数组合中超参数的取值进行搜索的python(计算机编程语言)模块。超参数的值域限制条件可以是限制各超参数的取值范围的条件。示例性的,超参数a的值域限制条件可以是大于a1且小于a2。
64.在本发明实施例中,对超参数组合搜索请求进行响应,并获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件。具体的,超参数组合搜索请求可以是针对目标机器学习模型的超参数组合搜索请求。
65.s120、根据所述搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,其中,所述超参数组合搜索脚本中包括多个超参数组合搜索框架。
66.其中,超参数组合搜索脚本可以是能够执行对超参数组合的取值进行搜索的文件。可以理解的是,在超参数组合搜索脚本中,可以预置搜索超参数组合取值的必要代码。示例性的,超参数组合搜索脚本可以是调优脚本。超参数组合搜索框架可以是对超参数组合中超参数的取值进行搜索的框架,例如可以是optuna(为机器学习设计的自动超参数优化软件框架),也可以是hyperopt(通过贝叶斯优化来调整参数的工具)等,本发明实施例对此并不进行限制。目标超参数组合搜索框架可以是多个超参数组合搜索框架中的一个目标框架。
67.在本发明实施例中,在获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件之后,可以进一步根据搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架。需要说明的是,超参数组合搜索脚本中可以包括多个超参数组合搜索框架。
68.s130、根据所述至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间。
69.其中,超参数组合搜索空间可以是对超参数组合中超参数的取值进行搜索的空间范围。可以理解的是,目标超参数组合搜索框架可以在超参数组合搜索空间中对超参数的取值进行搜索。
70.在本发明实施例中,在根据搜索规则在超参数组合搜索脚本中选取目标超参数组合搜索框架之后,可以进一步根据至少一个超参数的值域限制条件确定目标超参数组合搜索框架的超参数组合搜索空间。
71.s140、通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中搜索获取与所述目标机器学习模型匹配的目标超参数组合。
72.其中,目标超参数组合可以是能够使目标机器学习模型的学习性能和效果达到最佳状态的超参数组合。
73.在本发明实施例中,在根据至少一个超参数的值域限制条件确定目标超参数组合搜索框架的超参数组合搜索空间之后,可以进一步通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中搜索获取与目标机器学习模型匹配的目标超参数组合。
74.可以理解的是,在对目标机器学习模型进行训练之前,即可发送超参数组合搜索请求,并在确定与目标机器学习模型匹配的目标超参数组合之后,完成对目标机器学习模型的训练。
75.本实施例的技术方案,通过响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件,以根据搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,并根据至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间,从而通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中搜索获取与目标机器学习模型匹配的目标超参数组合,解决现有的超参数组合的搜索过程繁杂以及搜索效率低下的问题,能够简化超参数组合的搜索过程,实现超参数组合的自动搜索,从而提高超参数组合的搜索效率。
76.实施例二
77.图2是本发明实施例二提供的一种超参数组合的搜索方法的流程图,本实施例是对上述各技术方案的进一步细化,给出了根据至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间,以及通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中搜索获取与目标机器学习模型匹配的目标超参数组合的多种具体可选的实现方式。本实施例中的技术方案可以与上述一个或多个实施例中的各个可选方案结合。如图2所示,该方法可以包括如下步骤:
78.s210、响应于针对目标机器学习模型的超参数组合搜索请求,获取所述超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件。
79.s220、根据所述搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,其中,所述超参数组合搜索脚本中包括多个超参数组合搜索框架。
80.s230、根据所述目标机器学习模型中各超参数的预设取值范围,获取与所述目标超参数组合搜索框架匹配的全域搜索空间。
81.其中,预设取值范围可以是预先设置的超参数的取值范围。全域搜索空间可以是对目标机器学习模型中所有超参数的取值进行搜索的空间范围。可以理解的是,相同的机器学习模型在不同的学习任务中,机器学习模型的各超参数的预设取值范围也可以不同。
82.在本发明实施例中,在根据搜索规则在超参数组合搜索脚本中选取目标超参数组合搜索框架之后,可以进一步根据目标机器学习模型中各超参数的预设取值范围,获取与目标超参数组合搜索框架匹配的全域搜索空间。
83.s240、根据所述至少一个超参数的值域限制条件,对所述全域搜索空间进行缩减处理,得到所述超参数组合搜索空间。
84.在本发明实施例中,在根据目标机器学习模型中各超参数的预设取值范围,获取
与目标超参数组合搜索框架匹配的全域搜索空间之后,可以进一步根据至少一个超参数的值域限制条件对全域搜索空间进行缩减处理,得到超参数组合搜索空间。示例性的,假设超参数a的值域限制条件是[1,5],且全域搜索空间中超参数a的取值范围是[0,8],则可以根据超参数a的值域限制条件对全域搜索空间进行缩减处理,得到超参数组合中超参数a的搜索空间为[1,5]。
[0085]
上述技术方案,提出了根据超参数的值域限制条件确定超参数组合搜索空间的具体实现方式,以能够更准确的确定目标超参数组合搜索框架的超参数组合搜索空间。
[0086]
s250、通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中,依次获取一组当前超参数组合。
[0087]
其中,当前超参数组合可以是目标超参数组合搜索框架在超参数组合搜索空间中搜索得到的一组超参数组合。
[0088]
在本发明实施例中,在根据至少一个超参数的值域限制条件,对全域搜索空间进行缩减处理,得到超参数组合搜索空间之后,可以进一步通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合。可以理解的是,机器学习模型的一次训练,对应一组当前超参数组合。如果机器学习模型要多次训练,则需要获取多组超参数组合。
[0089]
s260、通过所述超参数组合搜索脚本,将所述当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取所述用户训练脚本反馈的,目标机器学习模型针对所述当前超参数组合的模型验证结果。
[0090]
其中,用户训练脚本可以是能够执行目标机器学习模型的模型训练以及模型验证的文件。示例性的,图3是本发明实施例二提供的用户训练脚本的示例示意图,用户训练脚本可以如图3所示。模型训练可以是通过训练集对目标机器学习模型进行训练。模型验证可以是在目标机器学习模型训练之后,通过验证集对目标机器学习模型进行验证。模型验证结果可以是通过验证集对目标机器学习模型进行验证后得到的结果。示例性的,模型验证结果可以是模型的准确率,也可以是模型的损失率等,本发明实施例对此并不进行限制。
[0091]
在本发明实施例中,通过超参数组合搜索脚本,采用目标超参数组合搜索框架即调优框架,在超参数组合搜索空间中依次获取一组当前超参数组合之后,可以进一步通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本,用户训练脚本接收到当前超参数组合之后,用户训练脚本根据当前超参数组合对目标机器学习模型进行模型训练和模型验证,并在用户训练脚本得到模型验证结果之后,通过用户训练脚本将模型验证结果反馈给超参数组合搜索脚本。
[0092]
可选的,在通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证之前,还可以包括:根据目标超参数组合搜索框架和超参数组合搜索空间对超参数组合搜索脚本进行脚本更新,并将更新后的超参数组合搜索脚本和用户训练脚本放到同一工作目录中。示例性的,图4是本发明实施例二提供的超参数组合搜索脚本更新的示意图,如图4所示,根据图4中的learning_rate(学习率)、drop_out(过拟合率)、optimizer(优化程序)、layers_in(层间)等对超参数组合搜索脚本tunning_py进行脚本更新,并将更新后的tunning_py和用户训练脚本training_py放到同一工作目录中。
[0093]
s270、判断超参数组合的搜索次数是否达到预设的搜索次数阈值;若是,执行
s280;否则,执行s250。
[0094]
其中,搜索次数可以是超参数组合中各超参数取值的搜索次数。搜索次数阈值可以是预先设置的超参数组合中各超参数取值的搜索次数的阈值。可以理解的是,每对超参数组合的取值搜索一次,超参数组合的数量增加一个,也即搜索次数与超参数组合的数量相同。超参数组合的数量,与机器学习模型的训练次数相同,也即超参数组合的搜索次数、遍历的超参数组合的数量、机器学习模型的训练次数,以及模型验证结果的数量在概念或数值上都是相同的。
[0095]
在本发明实施例中,在通过所述超参数组合搜索脚本,将所述当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取所述用户训练脚本反馈的,目标机器学习模型针对所述当前超参数组合的模型验证结果之后,可以进一步判断超参数组合的搜索次数是否达到预设的搜索次数阈值。如果超参数组合的搜索次数达到预设的搜索次数阈值,则可以通过超参数组合搜索脚本,根据与各超参数组合分别对应的模型验证结果,确定目标超参数组合。如果超参数组合的搜索次数未达到预设的搜索次数阈值,则可以返回执行通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作,直至达到预设的搜索次数阈值。
[0096]
s280、通过所述超参数组合搜索脚本,根据与各所述超参数组合分别对应的模型验证结果,确定目标超参数组合。
[0097]
在本发明实施例中,在超参数组合的搜索次数达到预设的搜索次数阈值之后,可以进一步通过超参数组合搜索脚本,根据与各超参数组合分别对应的模型验证结果确定目标超参数组合。示例性的,假设模型验证结果为模型的准确率,则可以将模型验证结果中模型准确率的最大值对应的超参数组合,确定为目标超参数组合。在另一个示例中,假设模型验证结果为模型的损失率,则可以将模型验证结果中模型损失率的最小值对应的超参数组合,确定为目标超参数组合。
[0098]
上述技术方案,通过超参数组合搜索脚本获取当前超参数组合,使用户训练脚本根据当前超参数组合进行模型训练和模型验证,并获取用户训练脚本反馈的模型验证结果,重复执行获取当前超参数组合的操作,直至达到搜索次数阈值后,根据各模型验证结果确定目标超参数组合,能够实现超参数组合的自动搜索,提高超参数组合的搜索效率。
[0099]
在本发明实施例的一个可选实施方式中,超参数组合的搜索方法可以由分布式集群中的多个分布式节点共同执行,其中,超参数组合的搜索方法对应的机器学习框架可以预先以容器的形式配置在各分布式节点中,以提供超参数组合的搜索方法的运行环境。相应的,在通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的,目标机器学习模型针对当前超参数组合的模型验证结果之后,还可以包括:通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于分布式集群的数据库容器中。相应的,通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作,具体可以包括:通过超参数组合搜索脚本,根据数据库容器存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。
[0100]
其中,机器学习框架可以是用户训练脚本在模型训练时使用的框架,可以用于提供模型训练的运行环境。可以理解的是,超参数组合的搜索方法通过超参数组合搜索脚本
将当前超参数组合提供给用户训练脚本,以使用户训练脚本进行模型训练,也即在模型训练时,需要同时执行超参数组合的搜索方法,因此,为模型训练提供运行环境的机器学习框架,也即超参数组合的搜索方法对应的机器学习框架,也可以提供超参数组合的搜索方法的运行环境。
[0101]
其中,数据库容器的制作过程一般是由封装了数据库的镜像在运行时的产物。不同于把数据库直接部署于节点。数据库容器除了有存储数据功能外还有易部署,隔离性高,即便一个数据库容器发生异常,其余的容器还可正常运行的特性。数据库容器可以配置在分布式的任意节点中,包括了计算节点和管理节点。搜索算法可以是对超参数组合中超参数的取值进行搜索的算法,例如可以是随机算法,也可以是网格算法等,本发明实施例对此并不进行限制。可以理解的是,容器是类似于一个轻量级的沙箱,可以利用容器运行和隔离应用程序,有隔离性高,可靠性大的优势。
[0102]
具体的,在分布式集群的应用场景中,超参数组合的搜索方法可以由分布式集群中的多个分布式节点共同执行。具体的,超参数组合的搜索方法对应的机器学习框架可以预先以容器的形式配置在各分布式节点中,以提供超参数组合的搜索方法的运行环境。
[0103]
上述技术方案,提出了在分布式集群中实现超参数组合的搜索方法的具体应用场景,以实现在分布式集群的应用场景中自动搜索超参数组合,从而进一步提高在分布式集群的应用场景中超参数组合的搜索效率。
[0104]
具体的,在分布式集群的应用场景中,在通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的模型验证结果之后,还可以进一步通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于分布式集群的数据库容器中。并在返回执行通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作时,通过超参数组合搜索脚本,根据数据库容器历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。可以理解的是,将目标机器学习模型针对当前超参数组合的模型验证结果存储于分布式集群的数据库容器中,也即将当前超参数组合与当前超参数组合对应的模型验证结果共同存储于分布式集群的数据库容器中。
[0105]
示例性的,图5是本发明实施例二提供的分布式节点中容器分布的示例示意图,如图5所示,在控制节点和计算节点中都配置有封装了超参数组合的搜索方法的容器,在各分布式节点中执行超参数组合的搜索方法得到的用户训练脚本反馈的模型验证结果,都存储在数据库容器中。可选的,可以在数据库容器中获取超参数组合的数量,当超参数组合的数量达到预设的搜索次数阈值时,停止各分布式节点中超参数组合的搜索方法的执行。
[0106]
上述技术方案,在分布式集群的应用场景中,通过将模型验证结果存储于数据库容器中,并根据数据库容器历史存储的各超参数组合的模型验证结果,在超参数组合搜索空间中获取当前超参数组合,能够进一步提高超参数组合的搜索效率。
[0107]
在本发明实施例的另一个可选的实施方式中,超参数组合的搜索方法可以由单节点独立执行,超参数组合的搜索方法可以预先以容器的形式配置在单节点中。相应的,在通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的,目标机器学习模型针对当前超参数组合的模型验证结果
之后,还可以包括:通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于单节点的数据库中。相应的,通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作,具体可以包括:通过超参数组合搜索脚本,根据数据库历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。
[0108]
具体的,在单节点的应用场景中,超参数组合的搜索方法可以预先以容器的形式配置在单节点中,而且可以由单节点独立执行。
[0109]
上述技术方案,提出了在单节点中实现超参数组合的搜索方法的具体应用场景,以实现在单节点的应用场景中自动搜索超参数组合,从而进一步提高在单节点的应用场景中超参数组合的搜索效率。
[0110]
具体的,在单节点的应用场景中,在通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的模型验证结果之后,还可以进一步通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于单节点的数据库中。并在返回执行通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作时,通过超参数组合搜索脚本,根据数据库历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。
[0111]
示例性的,图6是本发明实施例二提供的单节点中超参数组合搜索的示例示意图,如图6所示,第一次训练的当前超参数组合的模型验证结果为准确率0.30,第二次训练的当前超参数组合的模型验证结果为准确率0.27,第三次训练的当前超参数组合的模型验证结果为准确率0.85,第四次训练的当前超参数组合的模型验证结果为准确率0.56,将每次训练的模型验证结果存储于单节点的数据库中。并在确定第五次训练的当前超参数组合时,通过超参数组合搜索脚本根据前四次的模型验证结果以及模型验证结果对应的超参数组合,采用预设的搜索算法在超参数组合搜索空间中获取当前超参数组合。
[0112]
上述技术方案,在单节点的应用场景中,通过将模型验证结果存储于数据库中,并根据数据库历史存储的各超参数组合的模型验证结果,在超参数组合搜索空间中获取当前超参数组合,能够进一步提高超参数组合的搜索效率。
[0113]
本实施例的技术方案,通过响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件,并根据搜索规则在超参数组合搜索脚本中选取目标超参数组合搜索框架,以及根据目标机器学习模型中各超参数的预设取值范围获取与目标超参数组合搜索框架匹配的全域搜索空间,并根据至少一个超参数的值域限制条件,对全域搜索空间进行缩减处理,得到超参数组合搜索空间,以通过超参数组合搜索脚本采用目标超参数组合搜索框架,在超参数组合搜索空间中依次获取一组当前超参数组合,并通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的目标机器学习模型针对当前超参数组合的模型验证结果,并返回执行通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作,以在达到预设的搜索次数阈值时,通过超参数组合搜索脚本根据与各超参数组合分别对应的模型验证结果确定目标超参数组合,解决现有的超参数组合的搜索过程繁杂以及搜索效率低
下的问题,能够简化超参数组合的搜索过程,实现超参数组合的自动搜索,从而提高超参数组合的搜索效率。
[0114]
实施例三
[0115]
为了使本领域技术人员更好的理解本实施例的超参数组合的搜索方法,本实施例采用两个具体示例进行说明。
[0116]
在本发明实施例的一个具体示例中,以分布式集群中的多个分布式节点共同执行超参数组合的搜索方法的应用场景为例进行具体说明,其中,超参数组合的搜索方法对应的特定的机器学习框架如pytorch,tensorflow等可以预先以容器的形式配置在各分布式节点中来提供超参数组合的搜索方法运行时的必要环境。图7是本发明实施例三提供的一种超参数组合的搜索方法的示例流程图,如图7所示,具体可以包括以下步骤:
[0117]
s710、响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件。
[0118]
s720、根据搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架。
[0119]
s730、根据目标机器学习模型中各超参数的预设取值范围,获取与目标超参数组合搜索框架匹配的全域搜索空间。
[0120]
s740、根据至少一个超参数的值域限制条件,对全域搜索空间进行缩减处理,得到超参数组合搜索空间。
[0121]
s750、通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,获取一组当前超参数组合。
[0122]
s760、通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的,目标机器学习模型针对当前超参数组合的模型验证结果。
[0123]
s770、通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于分布式集群的数据库容器中。
[0124]
s780、通过超参数组合搜索脚本,根据数据库容器历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取下一组当前超参数组合,直至达到预设的搜索次数阈值。
[0125]
s790、通过超参数组合搜索脚本,根据与各超参数组合分别对应的模型验证结果,确定目标超参数组合。
[0126]
上述技术方案,在分布式集群的应用场景中,通过将超参数组合的搜索方法预先以容器的形式配置在各分布式节点中,能够更快的部署到分布式集群中的各分布式节点,从而实现了在分布式集群中利用多节点的计算资源,对超参数组合进行搜索,提高了超参数组合的搜索方法在不同应用场景中的可用性。
[0127]
在本发明实施例的另一个具体示例中,以单节点独立执行超参数组合的搜索方法的应用场景为例进行具体说明,其中,超参数组合的搜索方法可以预先以容器的形式配置在单节点中,图8是本发明实施例三提供的一种超参数组合的搜索方法的另一示例流程图,如图8所示,具体可以包括以下步骤:
[0128]
s810、响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件。
[0129]
s820、根据搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架。
[0130]
s830、根据目标机器学习模型中各超参数的预设取值范围,获取与目标超参数组合搜索框架匹配的全域搜索空间。
[0131]
s840、根据至少一个超参数的值域限制条件,对全域搜索空间进行缩减处理,得到超参数组合搜索空间。
[0132]
s850、通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合。
[0133]
s860、通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的,目标机器学习模型针对当前超参数组合的模型验证结果。
[0134]
s870、通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于单节点的数据库中。
[0135]
s880、通过超参数组合搜索脚本,根据数据库历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合,直至达到预设的搜索次数阈值。
[0136]
s890、通过超参数组合搜索脚本,根据与各超参数组合分别对应的模型验证结果,确定目标超参数组合。
[0137]
上述技术方案,由于容器具有沙箱的特征,通过将超参数组合的搜索方法封装在容器中,提高了超参数组合的搜索方法执行的便携度;在单节点的应用场景中,除了使用数据库容器,也可以直接将模型验证结果存储于该节点的数据库中,并根据数据库历史存储的各超参数组合的模型验证结果,在超参数组合搜索空间中获取新的超参数组合。具体部署与节点的数据库或是使用数据库容器可根据业务场景而定。
[0138]
实施例四
[0139]
图9是本发明实施例四提供的一种超参数组合的搜索装置的示意图,如图9所示,所述装置包括:超参数组合搜索请求响应模块910、目标超参数组合搜索框架确定模块920、超参数组合搜索空间确定模块930以及目标超参数组合确定模块940,其中:
[0140]
超参数组合搜索请求响应模块910,用于响应于针对目标机器学习模型的超参数组合搜索请求,获取所述超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件;
[0141]
目标超参数组合搜索框架确定模块920,用于根据所述搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,其中,所述超参数组合搜索脚本中包括多个超参数组合搜索框架;
[0142]
超参数组合搜索空间确定模块930,用于根据所述至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间;
[0143]
目标超参数组合确定模块940,用于通过所述超参数组合搜索脚本,采用目标超参数组合搜索框架,在所述超参数组合搜索空间中搜索获取与所述目标机器学习模型匹配的目标超参数组合。
[0144]
本实施例的技术方案,通过响应于针对目标机器学习模型的超参数组合搜索请求,获取超参数组合搜索请求中的搜索规则以及至少一个超参数的值域限制条件,以根据
搜索规则,在超参数组合搜索脚本中选取目标超参数组合搜索框架,并根据至少一个超参数的值域限制条件,确定目标超参数组合搜索框架的超参数组合搜索空间,从而通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中搜索获取与目标机器学习模型匹配的目标超参数组合,解决现有的超参数组合的搜索过程繁杂以及搜索效率低下的问题,能够简化超参数组合的搜索过程,实现超参数组合的自动搜索,从而提高超参数组合的搜索效率。
[0145]
可选的,超参数组合搜索空间确定模块930,可以具体用于:根据目标机器学习模型中各超参数的预设取值范围,获取与目标超参数组合搜索框架匹配的全域搜索空间;根据至少一个超参数的值域限制条件,对全域搜索空间进行缩减处理,得到超参数组合搜索空间。
[0146]
可选的,目标超参数组合确定模块940,可以具体用于:通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合;通过超参数组合搜索脚本,将当前超参数组合提供给用户训练脚本进行模型训练和模型验证,并获取用户训练脚本反馈的,目标机器学习模型针对当前超参数组合的模型验证结果;返回执行通过超参数组合搜索脚本,采用目标超参数组合搜索框架,在超参数组合搜索空间中,依次获取一组当前超参数组合的操作,直至达到预设的搜索次数阈值;通过超参数组合搜索脚本,根据与各超参数组合分别对应的模型验证结果,确定目标超参数组合。
[0147]
可选的,超参数组合的搜索装置可以配置于分布式集群中的多个分布式节点,其中,超参数组合的搜索装置可以预先以容器的形式配置在各分布式节点中。
[0148]
可选的,目标超参数组合确定模块940,可以进一步用于:通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于分布式集群的数据库容器中;通过超参数组合搜索脚本,根据数据库容器历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。
[0149]
可选的,超参数组合的搜索装置可以配置于单节点;超参数组合的搜索装置可以预先以容器的形式配置在单节点中。
[0150]
可选的,目标超参数组合确定模块940,可以进一步用于:通过超参数组合搜索脚本,将目标机器学习模型针对当前超参数组合的模型验证结果存储于单节点的数据库中;通过超参数组合搜索脚本,根据数据库历史存储的各超参数组合的模型验证结果,采用预设的搜索算法,在超参数组合搜索空间中获取当前超参数组合。
[0151]
本发明实施例所提供的超参数组合的搜索装置可执行本发明任意实施例所提供的超参数组合的搜索方法,具备执行方法相应的功能模块和有益效果。
[0152]
实施例10
[0153]
图10示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
[0154]
如图10所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信
连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
[0155]
电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0156]
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如超参数组合的搜索方法。
[0157]
在一些实施例中,超参数组合的搜索方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的超参数组合的搜索方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行超参数组合的搜索方法。
[0158]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0159]
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0160]
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只
读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0161]
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0162]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
[0163]
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
[0164]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
[0165]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献