参数优化及其服务方法、设备及存储介质与流程

文档序号:31307848发布日期:2022-08-30 22:09阅读:76来源:国知局
参数优化及其服务方法、设备及存储介质与流程

1.本技术涉及人工智能技术领域,尤其涉及一种参数优化及其服务方法、设备及存储介质。


背景技术:

2.算法(algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。算法能够对一定规范的输入,在有限时间内获得所要求的输出。大部分算法会涉及算法参数,即需要预先设定的一些参数。算法参数的选择直接影响着算法的性能,这使得对算法参数进行优化非常有必要。
3.从算法研发的角度出发,依赖人工调整算法参数非常费时费力,尤其算法在线上迭代速度较快的时候,人工调整算法参数后的算法在线上应用时仍有可能面临众多问题。同时,面对精细化场景越来越多的趋势,手工调整算法参数可应对的情况有限,并且还要权衡算法在线上应用时的各种因素,例如算法效果和计算资源等。因此,出现基于种群演进的参数优化方法,这种方法可自动化完成算法参数的优化,从而让算法在研发效率上得到大的提升。
4.但是,在资源池化场景中,现有基于种群演进的参数优化方法需要占用资源池中大量资源,不利于资源池中资源的灵活调度。


技术实现要素:

5.本技术的多个方面提供一种参数优化服务方法、设备及存储介质,用以自动化完成算法参数的优化,降低对资源调度的影响,提高资源调度的灵活性。
6.本技术实施例提供一种参数优化服务方法,包括:接收客户端发送的参数调优请求,所述参数调优请求包括算法模块的标识;结合用于参数优化服务的资源的动态变化信息,对所述算法模块的参数组合进行与所述资源适配的种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
7.本技术实施例还提供一种参数优化服务方法,包括:接收客户端发送的参数调优请求,所述参数调优请求包括算法模块的标识;结合种群变异方式和贝叶斯优化方式,对所述算法模块的参数组合进行种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
8.本技术实施例还提供一种服务端设备,包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器与所述存储器耦合,用于执行所述计算机程序,以用于:接收客户端发送的参数调优请求,所述参数调优请求包括算法模块的标识;结合用于参数优化服务的资源的动态变化信息,对所述算法模块的参数组合进行与所述资源适配的种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
9.本技术实施例还提供一种服务端设备,包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器与所述存储器耦合,用于执行所述计算机程序,以用于:接收客户端发送的参数调优请求,所述参数调优请求包括算法模块的标识;结合种群变异方式和贝叶斯优化方式,对所述算法模块的参数组合进行种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
10.本技术实施例还提供一种存储有计算机程序的计算机存储介质,当所述计算机程序被处理器执行时,致使所述处理器实现本技术实施例提供的任一方法中的步骤。
11.本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当当所述计算机程序/指令被处理器执行时,致使所述处理器实现本技术实施例提供的任一方法中的步骤。
12.在本技术实施例中,对基于种群演进的参数优化方法进行改进,在优化过程中,结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代,一方面基于种群迭代可自动化完成算法参数的优化,有利于让算法在研发效率上得到大的提升,另一方面进行与资源适配的种群迭代,允许用于参数优化的资源动态变化,在资源池化场景中便于对资源进行动态、灵活调度。
附图说明
13.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
14.图1为本技术示例性实施例提供的一种参数优化服务系统的结构示意图;
15.图2为本技术示例性实施例提供的一种参数优化服务方法的流程示意图;
16.图3为本技术示例性实施例提供的另一种参数优化服务方法的流程示意图;
17.图4为本技术示例性实施例提供的又一种参数优化服务方法的流程示意图;
18.图5为本技术示例性实施例提供的一种参数服务优化装置的结构示意图;
19.图6为本技术示例性实施例提供的一种服务端设备的结构示意图。
具体实施方式
20.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
21.针对现有基于种群演进的参数优化面临的技术问题,在本技术实施例中,对基于种群演进的参数优化方法进行改进,在优化过程中,结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代,一方面基于种群迭代可自动化完成算法参数的优化,有利于让算法在研发效率上得到大的提升,另一方面进行与资源适配的种群迭代,允许用于参数优化的资源动态变化,在资源池化场景中便于对资源进行动态、灵活调度。
22.以下结合附图,详细说明本技术各实施例提供的技术方案。
23.图1为本技术示例性实施例提供的一种参数优化服务系统的结构示意图。如图1所示,该系统100包括:客户端设备101和服务端设备102。客户端设备101与服务端设备102之间以有线或无线方式通信连接。
24.在本实施例中,客户端设备101可以是任何需要运行算法模块的设备,例如可以是算法研发人员在研发过程中使用的终端设备,例如笔记本电脑、台式电脑或测试终端等;或者,也可以是运行有算法模块最终所属系统或应用的终端设备,例如手机、笔记本电脑、台式电脑、平板电脑、家庭网关或智能家居设备等。
25.其中,算法模块是指能够实现一定算法逻辑的软件模块,在产品形态上,该算法模块可以是一个应用程序、程序模块、插件、补丁或sdk等。其中,按照算法模块是否需要样本数据进行训练,将算法模块划分为基于机器学习的算法模块(learning-based algorithm)和不需要基于机器学习的算法模块。在本实施例中,将不需要基于机器学习的算法模块称为传统的算法模块(traditional algorithm),例如可以是基于规则的算法模块。对于基于机器学习的算法模块,需要通过训练数据反复学习直到算法收敛才能得到输出结果。对于传统的算法模块,向其输入数据后可直接得到输出结果。无论是哪种算法模块,都具有算法参数,算法参数是指需要预先为算法模块设定的一些参数。对于基于机器学习的算法模块,算法参数是指算法模块的超参数,而不是算法模块的模型参数。
26.对不同算法模块来说,其算法参数的数量可能不相同。有一些算法模块具有一个算法参数,有一些算法模块具有多个算法参数,例如2个、3个或5个等。在本技术实施例中,更加关注具有多个算法参数的情况。对于算法参数来说,其可以有多种不同的取值组合。在本实施例中,将算法参数的取值组合称为参数组合。其中,算法参数选择哪种参数组合直接影响着算法模块的性能。
27.在本实施例中,服务端设备102可为客户端设备101提供参数优化服务,为客户端设备101所需的算法模块提供合适的参数组合。如图1中

所示,客户端设备101需要优化算法模块的算法参数时,可以向服务端设备102发送参数调优请求,并在该参数调优请求中携带算法模块的标识,以供服务端设备102获知需要进行参数调优的是哪个算法模块以及该算法模块的算法参数有哪些。服务端设备102接收客户端设备101发送的参数调优请求,根据参数调优请求中携带的标识识别需要进行参数调优的算法模块;之后,如图1中

所示,为该算法模块进行算法参数的优化;进一步,基于算法参数的优化结果向客户端设备101提供目标参数组合,如图1中

所示;客户端设备101根据目标参数组合运行算法模块,如图1中

所示。
28.在本实施例中,考虑到算法模块的种类和数量非常丰富,既包含基于机器学习的算法模块,也包含基于规则的算法模块,既有使用人工标注数据进行评价的算法模块,也有需要和环境进行交互才能评价的算法模块。因此,结合算法模块的类型,对基于种群演进的参数优化方法进行改进,得到可适合不同类型的算法模块的改进后的基于种群演进的参数优化方法;服务端设备102采用改进后的基于种群演进的参数优化方法为不同类型的算法模块进行算法参数的优化。
29.首先,考虑基于机器学习的算法模块,在对这类算法模块进行算法参数优化时,需要借助于验证数据模拟算法模块的学习过程,以对算法模块进行性能评估,因此对资源需求相对较多。如图1所示,在资源池化场景中,服务端设备102可以从资源池中获取用于参数
优化服务的资源,这里的资源主要包括计算资源,也可以包括存储资源。如图1所示,在资源池化场景中,可以通过资源调度器103对资源池中的资源进行调度。服务端设备102可以从资源调度器103获取可用于参数优化服务的资源信息,这里的资源信息至少包括资源量以及指示具体是哪些资源的资源标识等。
30.在本实施例中,资源调度器103可以按照一定的资源调度策略灵活地对资源池中的资源进行调度,如图1所示,资源池中包括多个资源节点,这些资源节点可以提供计算资源,也可以提供存储资源。例如,资源调度器103可在空闲资源较多的情况下,临时为服务端设备102分配更多的资源进行参数优化;或者,也可以在空闲资源较少的情况下,临时收回分配给服务端设备102的资源。也就是说,服务端设备102在为客户端设备101提供参数优化服务过程中,其用于参数优化服务的资源可能是动态变化的。为了适应资源的动态变化,如图1中

所示,服务端设备102在采用基于种群演进的方法为算法模块进行参数优化时,具体结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与该资源适配的种群迭代。可将这种改进的基于种群演进的参数优化方法称为与资源适配的基于种群演进的参数优化方法。进一步,如图1中

所示,服务端设备102具体根据种群迭代产生的参数组合向客户端设备101提供目标参数组合,以使客户端设备101基于目标参数组合运行该算法模块。其中,目标参数组合是种群迭代过程中产生的更加适合该算法模块的参数组合。
31.其中,结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与所述资源适配的种群迭代的过程包括以下几个阶段:
32.种群初始化:对算法模块的算法参数进行初始化,以得到初始种群。可选地,可以针对算法模块的算法参数设定少量参数组合,然后以少量参数组合为基础,使用随机采样方式对算法模块的算法参数进行初始化,得到初始种群。初始种群中包含一定数量的参数组合。
33.种群迭代:自初始种群开始,根据算法模块在当前种群中各参数组合下的性能参数和用于参数优化服务的资源的动态变化信息不断进行种群迭代。简单来说,种群迭代的过程就是在上一次迭代操作中产生下一次迭代操作中的种群,并基于所产生的种群继续进行下一次迭代操作的过程。
34.在本实施例中,每一次的种群迭代操作涉及种群规模控制、模型评估和新种群产生三个操作:
35.种群规模控制:在每次迭代操作中,实时跟踪分配到的用于参数优化服务的资源的变化情况;根据可用于参数优化服务的资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群。其中,第一种群是由上一次迭代操作产生的用于参与下一次迭代操作的种群;但是,对于第一次迭代操作来说,第一种群就是初始种群。
36.其中,根据资源的动态变化情况,可能需要减少第一种群中参数组合的数量,也可能需要增加第一种群中参数组合的数量;换句话说,第二种群中参数组合的数量可能大于第一种群中参数组合的数量,也可能少于第一种群中参数组合的数量。
37.可选地,若在资源优化服务过程中,资源调度器103因为某些原因临时收回了一部分分配给服务端设备102用于参数优化服务的资源,那么用于参数优化服务的资源就会减少,则可以根据剩余的资源量,结合第一种群中各种参数组合的代际数,从中淘汰至少一种参数组合,以得到第二种群。其中,剩余的资源足以对算法模块在第二种群中各参数组合下
的性能进行评估。其中,参数组合的代际数是指参数组合已经参与迭代的次数。在本实施例中,并不限定根据第一种群中各参数组合的代际数,从中淘汰至少一种参数组合的方式。例如,可以根据第一种群中各参数组合的代际数,从中淘汰代际数最老的至少一种参数组合;或者,也可以淘汰特定代际的参数组合,还可以淘汰代际数在设定代际数范围内的参数组合。
38.可选地,若在资源优化服务过程中,资源调度器103因为某些原因临时又分配了一些资源给服务端设备102,那么用于参数优化服务的资源就会增加,则可以根据增加的资源量,以第一种群中的部分参数组合为基础产生新的参数组合,以得到第二种群。其中,增加后的资源总量足以对算法模块在第二种群中各参数组合下的性能进行评估。在本实施例中,并不限定以第一种群中的部分参数组合为基础产生新的参数组合的方式。例如,可以根据算法模块在第一种群中各参数组合下的性能参数,选择性能参数最优且没有后代的m种参数组合,没有后代的参数组合是指代际数为0的参数组合;或者,也可以单纯选择性能参数最优的m种参数组合;以不大于所增加的资源量所能承载的数量为目标,对m种参数组合分别进行变异以得到新的参数组合;将由m种参数组合变异得到的新的参数组合加入第一种群中,以得到第二种群。其中,m是大于或等于1的整数。
39.在本实施例中,并不限定对m种参数组合进行变异得到新的参数组合的方式。下面以m种参数组合中的任一种参数组合为例,对变异方式进行示例性说明。为例便于描述和区分,将所述任一种参数组合称为第一参数组合。
40.变异方式1:获取第一参数组合的原始搜索空间,在原始搜索空间中采样不同于第一种群中任何参数组合的参数组合,作为新的参数组合。
41.变异方式2:根据第一参数组合的代际数和算法参数的数量,生成搜索空间的波动比例上限值;根据波动比例上限值和第一参数组合的原始搜索空间,生成新的搜索空间;在新的搜索空间中进行至少一次随机采样,得到至少一种新的参数组合。
42.变异方式3:根据第一参数组合的代际数,确定参数偏差;根据所述参数偏差对第一参数组合进行调整,将调整后的参数组合作为新的参数组合。
43.模型评估:在得到第二种群后,利用验证数据集评估算法模块在第二种群中各参数组合下的性能参数。具体地,可以将第二种群中各参数组合分别赋给算法模块,并利用上述减少或增加后的资源同步运行具有不同参数组合的算法模块,根据各算法模块的输出结果可得到各算法模块在其所对应的参数组合下的性能参数。
44.新种群的产生:在得到算法模块在第二种群中各参数组合下的性能参数之后,可以根据算法模块在第二种群中各参数组合下的性能参数,采用种群变异方式产生用于参与下一次迭代操作的第一种群,完成一次种群迭代操作。
45.在本实施例中,并不限定采用种群变异方式产生用于参与下一次迭代操作的第一种群的方式。例如,可以根据算法模块在第二种群中各参数组合下的性能参数,从第二种群中选择性能参数最优的n种参数组合,或者从第二种群中选择性能最优且没有后代的n种参数组合;以不大于当前用于参数优化服务的资源量所能承载的数量为目标,对n种参数组合分别进行变异以得到新的参数组合;根据n种参数组合以及由n种参数组合变异得到的新的参数组合,产生用于参与下一次迭代操作的第一种群。其中,n是大于或等于1的整数。又例如,根据算法模块在第二种群中各参数组合下的性能参数,从第二种群中选择性能参数最
优的k1种参数组合;进一步,从k1种参数组合中选择k2种参数组合;以不大于当前用于参数优化服务的资源量所能承载的数量为目标,对k2种参数组合分别进行变异以得到新的参数组合;根据k1种参数组合以及由k2种参数组合变异得到的新的参数组合,产生用于参与下一次迭代操作的第一种群。其中,k1是大于或等于2的整数,k2是大于或等于1的整数,且k1≥k2。
46.其中,上述种群迭代操作直至满足迭代终止条件为止。在本实施例中,并不对迭代终止条件进行限定。例如,可以设定迭代终止时间,则当迭代终止时间到达时迭代操作结束;或者,可以设定最大迭代次数,则当迭代次数达到最大迭代次数时迭代操作结束;或者,可以设定迭代损失函数,当迭代损失函数的均方误差小于设定误差阈值时迭代操作结束。
47.在本技术实施例中,在基于种群演进的参数优化过程中,增加了基于资源动态变化信息的种群规模控制过程,可以根据资源的动态变化情况,结合早停(early-stop)策略的使用将每次迭代过程中的种群控制到当前资源适配的规模,例如,可在计算资源充裕的时候,可以允许一部分性能较优的参数组合优先产生后代参与迭代,可选地,参与迭代的后代不超过1代;当计算资源紧张的时候,可以将代际较老的参数组合结束训练,释放出计算资源优先供代际较新的参数组合继续参与训练,可适应资源的动态变化,降低了对资源数量的要求,尤其在资源池化场景中,有利于资源调度器对资源进行灵活调度,适用于动态资源分配场景。
48.进一步,在上述针对基于机器学习的算法模块进行参数优化的过程,是基于种群演进的方式进行参数优化的,每一次迭代操作中种群中的每种参数组合作为个体是单独训练或评估的,因此可以采用并行的方式针对每种参数组合对算法模块进行评估,有利于提高参数优化效率。
49.进一步,在本实施例中,服务端设备102除了可以为基于机器学习的算法模块提供参数优化服务之外,也可以为传统的算法模块提供参数优化服务。在本实施例中,服务端设备102也采用改进后的基于种群演进的方法为传统的算法模块进行参数优化。需要说明的是,针对传统的算法模块进行参数优化所使用的改进后的基于种群演进的参数优化方法,与针对基于机器学习的算法模块进行参数优化所使用的改进后的基于种群演进的参数优化方法是不同的。下面对服务端设备102采用改进后的基于种群演进的方法为传统的算法模块进行参数优化的过程进行说明。
50.客户端设备101需要优化传统算法模块的算法参数时,可以向服务端设备102发送参数调优请求。该过程可参见图1中

所示,此时,参数调优请求中携带的算法模块的标识用于标识传统的算法模块。
51.如图1中

所示,服务端设备102在接收到参数调优请求之后,在采用基于种群演进的方法为传统算法模块进行参数优化时,具体结合种群变异方式和贝叶斯优化方式,对传统算法模块的参数组合进行种群迭代。之后,如图1中

所示,服务端设备102具体根据种群迭代产生的参数组合向客户端设备101提供目标参数组合,以使客户端设备101基于目标参数组合运行该传统的算法模块。
52.其中,结合种群变异方式和贝叶斯优化方式,对传统算法模块的参数组合进行种群迭代的过程包括:使用贝叶斯优化方式对传统算法模块的算法参数进行初始化,以得到初始种群,并自初始种群开始对传统算法模块的参数组合进行种群迭代。
53.进一步可选地,可以采用随机采样方式为传统算法模块生成少量的参数组合,对这些参数组合进行高斯过程回归,并使用置信度上限来选择新的参数组合,如此循环往复直到达到初始种群要求的数量为止,得到初始种群。
54.在本实施例中,在对传统算法模块的参数组合进行种群迭代的过程中,同时结合种群变异方式和贝叶斯优化方式产生新的种群。即,在每次迭代操作中,一方面根据传统算法模块在当前种群中各参数组合下的性能参数,采用种群变异方式产生第一部分新的参数组合,另一方面以当前种群中全部参数组合作为样本采用贝叶斯优化方式产生第二部分新的参数组合;根据第一部分新的参数组合和第二部分新的参数组合产生用于参与下一次迭代操作的种群。
55.进一步可选地,以当前种群中全部参数组合作为样本采用贝叶斯优化方式产生第二部分新的参数组合的一种实现方式,包括:使用当前种群中所有参数组合作为样本进行高斯过程回归,使用置信度上限来选择新的参数组合。
56.在本实施例中,针对传统的算法模块,在种群初始化阶段使用贝叶斯优化来引入全局信息,让初始种群的位置更加分散,降低对初始种群的依赖性;进一步,在种群迭代的过程中,一方面利用种群变异方式可以继承最优族群,提升迭代效果,另一方面利用贝叶斯优化方式考虑全局信息进行探索,可以克服局部最优的问题。进一步可选地,还可以控制采用两种方式生成的新的参数组合的比例,利用概率平衡利用和探索的比例。
57.在此说明,本技术实施例中的服务端设备102可以面向客户端设备101单独提供针对基于机器学习的算法模块的参数优化服务,也可以面向客户端设备101单独提供针对传统算法模块的参数优化服务,还可以面向客户端设备101同时提供针对基于机器学习的算法模块和传统算法模块的参数优化服务。进一步,在服务端设备102面向客户端设备101同时提供针对基于机器学习的算法模块和传统算法模块的参数优化服务的情况下,客户端设备101发起的参数调优请求可能是针对基于机器学习的算法模块的,也可能是针对传统算法模块的,具体可以通过参数调优请求中携带的算法模块的标识进行区分。基于此,如图1中

所示,服务端设备102在接收到客户端设备101发送的参数调优请求之后,可以根据参数调优请求中携带的算法模块的标识,判断该算法模块是否是基于机器学习的算法模块;若是,则进入图1中

所示的分支;若否,则进入图1中

所示的分支。
58.进一步,在服务端设备102面向客户端设备101同时提供针对基于机器学习的算法模块和传统算法模块的参数优化服务的情况下,相当于提供了一套可适配不同算法模块的通用型的参数优化方案,来提升算法模块的参数优化效率,进而提升算法模块产生的算效果。本技术实施例提供的参数优化方案,可应用于任何涉及算法模块的生产环境中,尤其适用于算法模块的类型和数量较为丰富的大规模生产环境中。例如,在自动驾驶环境中,通常会涉及各种不同的算法模块;其中,基于机器学习的算法模块包括但不限于:用于图像检测的算法模块、用于图像分割的算法模块、用于点云分割的算法模块等;其中,传统的算法模块包括但不限于:用于融合跟踪的算法模块、用于轨迹预测的算法模块等。当然,根据自动驾驶车辆类型的不同,这些算法模块也会有所不同。例如,对于物流车辆、公共服务车辆、医疗服务车辆、终端服务车辆会涉及不同的算法模块。下面分别针对这四种自动驾驶车辆对算法模块进行举例说明:
59.其中,物流车辆是指物流场景中使用的车辆,例如可以是带自动分拣功能的物流
车辆、带冷藏保温功能的物流车辆、带测量功能的物流车辆。这些物流车辆会涉及不同算法模块。
60.例如,对于物流车辆,可以带有自动化的分拣装置,该分拣装置可以在物流车辆到达目的地后自动把货物取出并搬送、分拣、存放。这就涉及用于货物分拣的算法模块,该算法模块主要实现货物取出、搬运、分拣以及存放等逻辑控制。
61.又例如,针对冷链物流场景,物流车辆还可以带有冷藏保温装置,该冷藏保温装置可以实现运输的水果、蔬菜、水产品、冷冻食品以及其它易腐烂的食品进行冷藏或保温,使之处于合适的温度环境,解决易腐烂食品的长途运输问题。这就涉及用于冷藏保温控制的算法模块,该算法模块主要用于根据食品(或物品)性质、易腐性、运输时间、当前季节、气候等信息动态、自适应计算冷餐或保温的合适温度,根据该合适温度对冷藏保温装置进行自动调节,这样在车辆运输不同食品或物品时运输人员无需手动调整温度,将运输人员从繁琐的温度调控中解放出来,提高冷藏保温运输的效率。
62.又例如,在大多物流场景中,是根据包裹体积和/或重量进行收费的,而物流包裹的数量非常庞大,单纯依靠快递员对包裹体积和/或重量进行测量,效率非常低,人工成本较高。因此,在一些物流车辆中,增设了测量装置,可自动测量物流包裹的体积和/或重量,并计算物流包裹的费用。这就涉及用于物流包裹测量的算法模块,该算法模块主要用于识别物流包裹的类型,确定物流包裹的测量方式,如进行体积测量还是重量测量或者是同时进行体积和重量的组合测量,并可根据确定的测量方式完成体积和/或重量的测量,以及根据测量结果完成费用计算。
63.其中,公共服务车辆是指提供某种公共服务的车辆,例如可以是消防车、除冰车、洒水车、铲雪车、垃圾处理车辆、交通指挥车辆等。这些公共服务车辆会涉及不同算法模块。
64.例如,对于自动驾驶的消防车,其主要任务是针对火灾现场进行合理的灭火任务,这就涉及用于灭火任务的算法模块,该算法模块至少需要实现火灾状况的识别、灭火方案的规划以及对灭火装置的自动控制等逻辑。
65.又例如,对于除冰车,其主要任务是清除路面上结的冰雪,这就涉及除冰的算法模块,该算法模块至少需要实现路面上冰雪状况的识别、根据冰雪状况制定除冰方案,如哪些路段需要采取除冰,哪些路段无需除冰,是否采用撒盐方式、撒盐克数等,以及在确定除冰方案的情况下对除冰装置的自动控制等逻辑。
66.其中,医疗服务车辆是指能够提供一种或多种医疗服务的自动驾驶车辆,该种车辆可提供消毒、测温、配药、隔离等医疗服务,这就涉及提供各种自助医疗服务的算法模块,这些算法模块主要实现消毒需求的识别以及对消毒装置的控制,以使消毒装置为病人进行消毒,或者对病人位置的识别,控制测温装置自动贴近病人额头等位置为病人进行测温,或者,用于实现对病症的判断,根据判断结果给出药方并需要实现对药品/药品容器的识别,以及对取药机械手的控制,使之按药方为病人抓取药品,等等。
67.其中,终端服务车辆是指可代替一些终端设备面向用户提供某种便利服务的自助型的自动驾驶车辆,例如这些车辆可以为用户提供打印、考勤、扫描、开锁、支付、零售等服务。
68.例如,在一些应用场景中,用户经常需要到特定位置去打印或扫描文档,费时费力。于是,出现一种可以为用户提供打印/扫描服务的终端服务车辆,这些服务车辆可以与
用户终端设备互联,用户通过终端设备发出打印指令,服务车辆响应打印指令,自动打印用户所需的文档并可自动将打印出的文档送至用户位置,用户无需去打印机处排队,可极大地提高打印效率。或者,可以响应用户通过终端设备发出的扫描指令,移动至用户位置,用户将待扫描的文档放置的服务车辆的扫描工具上完成扫描,无需到打印/扫描机处排队,省时省力。这就涉及提供打印/扫描服务的算法模块,该算法模块至少需要识别与用户终端设备的互联、打印/扫描指令的响应、用户位置的定位以及行进控制等。
69.又例如,随着新零售业务的开展,越来越多的电商借助于自助售货机将商品销售送到了各大办公楼、公共区,但这些自助售货机被放置在固定位置,不可移动,用户需要到该自助售货机跟前才能购买所需商品,便利性还是较差。于是出现了可提供零售服务的自助驾驶车辆,这些服务车辆可以承载商品自动移动,并可提供对应的自助购物类app或购物入口,用户借助于手机等终端通过app或购物入口可以向提供零售服务的自动驾驶车辆进行下单,该订单中包括待购买的商品名称、数量以及用户位置,该车辆收到下单请求之后,可以确定当前剩余商品是否具有用户购买的商品以及数量是否足够,在确定具有用户购买的商品且数量足够的情况下,可携带这些商品自动移动至用户位置,将这些商品提供给用户,进一步提高用户购物的便利性,节约用户时间,让用户将时间用于更为重要的事情上。这就涉及提供零售服务的算法模块,这些算法模块主要实现响应用户下单请求、订单处理、商品信息维护、用户位置定位、支付管理等逻辑。
70.无论是上述哪种自动驾驶车辆涉及到的算法模块,采用本技术上述实施例提供的服务系统,可对自动驾驶环境中的各种算法模块进行参数优化,提升算法模块的参数优化效率,进而提升算法模块产生的算效果。进一步,如图1所示,自动驾驶领域的研发人员在获得算法模块的目标参数组合之后,可根据使用目标参数组合的算法模块进一步开发车载软件,将车载软件部署在自动驾驶车辆上,为自动驾驶车辆提供相关服务。
71.图2为本技术示例性实施例提供的一种参数优化服务方法的流程示意图。如图2所示,该方法包括:
72.201、接收客户端发送的参数调优请求,参数调优请求包括算法模块的标识。
73.202、结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代。
74.203、根据种群迭代产生的参数组合向客户端提供目标参数组合,以使客户端基于目标参数组合运行算法模块。
75.在一可选实施例中,上述步骤202,即结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代,包括:使用随机采样方式对算法模块的算法参数进行初始化,以得到初始种群;自初始种群开始,根据算法模块在当前种群中各参数组合下的性能参数和用于参数优化服务的资源的动态变化信息进行种群迭代。
76.进一步可选地,上述根据算法模块在当前种群中各参数组合下的性能参数和用于参数优化服务的资源的动态变化信息进行种群迭代,包括:在每次迭代操作中,根据资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群,并利用验证数据集评估算法模块在第二种群中各参数组合下的性能参数;以及根据算法模块在第二种群中各参数组合下的性能参数,采用种群变异方式产生用于参与下一次迭代操作的第一种群,直至满足迭代终止条件;其中,第一种群是由上一次迭代操作产生的用于参与下一次迭代操作的
种群。
77.更进一步,根据资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群,包括:若资源减少,则根据剩余的资源量,结合第一种群中各种参数组合的代际数,从中淘汰至少一种参数组合,以得到第二种群。
78.更进一步,根据资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群,还包括:若资源增加,则根据增加的资源量,以第一种群中的部分参数组合为基础产生新的参数组合,以得到第二种群。
79.可选地,根据增加的资源量,以第一种群中的部分参数组合为基础产生新的参数组合,以得到第二种群,包括:根据算法模块在第一种群中各参数组合下的性能参数,选择性能参数最优且没有后代的m种参数组合;以不大于增加的资源量所能承载的数量为目标,对m种参数组合分别进行变异以得到新的参数组合;将由m种参数组合变异得到的新的参数组合加入第一种群中,以得到第二种群;m是大于或等于1的整数。
80.可选地,以不大于增加的资源量所能承载的数量为目标,对m种参数组合分别进行变异以得到新的参数组合,包括:对第一参数组合,根据第一参数组合的代际数和算法参数的数量,生成搜索空间的波动比例上限值;根据波动比例上限值和第一参数组合的原始搜索空间,生成新的搜索空间;在新的搜索空间中进行至少一次随机采样,以得到至少一种新的参数组合;其中,第一参数组合是m种参数组合中的任一种参数组合。
81.在一可选实施例中,上述根据算法模块在第二种群中各参数组合下的性能参数,采用种群变异方式产生用于参与下一次迭代操作的第一种群,包括:根据算法模块在第二种群中各参数组合下的性能参数,从中选择性能参数最优且没有后代的n种参数组合;以不大于当前用于参数优化服务的资源量所能承载的数量为目标,对n种参数组合分别进行变异以得到新的参数组合;根据n种参数组合以及由n种参数组合变异得到的新的参数组合产生用于参与下一次迭代操作的第一种群;n是大于或等于1的整数。
82.在一可选实施例中,根据种群迭代产生的参数组合向所述客户端提供目标参数组合,包括:
83.获取最后一次种群迭代产生的k种参数组合,将所述k种参数组合及所述算法模块在所述k种参数组合下的性能参数返回给所述客户端,以供所述客户端从中选择目标参数组合;
84.或者
85.获取最后一次种群迭代产生的k种参数组合,根据所述算法模块在所述k种参数组合下的性能参数从所述k种参数组合中选择目标参数组合,并将所述目标参数组合返回给所述客户端。
86.在本实施例中,对基于种群演进的参数优化方法进行改进,在优化过程中,结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代,一方面基于种群迭代可自动化完成算法参数的优化,有利于让算法在研发效率上得到大的提升,另一方面进行与资源适配的种群迭代,允许用于参数优化的资源动态变化,在资源池化场景中便于对资源进行动态、灵活调度。
87.图3为本技术示例性实施例提供的另一种参数优化服务方法的流程示意图。如图3所示,该方法包括:
88.301、接收客户端发送的参数调优请求,参数调优请求包括算法模块的标识。
89.302、结合种群变异方式和贝叶斯优化方式,对算法模块的参数组合进行种群迭代。
90.303、根据种群迭代产生的参数组合向客户端提供目标参数组合,以使客户端基于目标参数组合运行算法模块。
91.在一可选实施例中,结合种群变异方式和贝叶斯优化方式,对算法模块的参数组合进行种群迭代,包括:
92.使用贝叶斯优化方式对算法模块的算法参数进行初始化,以得到初始种群,并自初始种群开始对算法模块的参数组合进行种群迭代;
93.其中,在每次迭代操作中,根据算法模块在当前种群中各参数组合下的性能参数,采用种群变异方式产生第一部分新的参数组合,并以当前种群中全部参数组合作为样本采用贝叶斯优化方式产生第二部分新的参数组合;根据第一部分新的参数组合和第二部分新的参数组合产生用于参与下一次迭代操作的种群。
94.在一可选实施例中,根据种群迭代产生的参数组合向客户端提供目标参数组合,包括:
95.获取最后一次种群迭代产生的k种参数组合,将k种参数组合及算法模块在k种参数组合下的性能参数返回给客户端,以供客户端从中选择目标参数组合;
96.或者
97.获取最后一次种群迭代产生的k种参数组合,根据算法模块在k种参数组合下的性能参数从k种参数组合中选择目标参数组合,并将目标参数组合返回给客户端。
98.图4为本技术示例性实施例提供的又一种参数优化服务方法的流程示意图。如图4所示,该方法包括:
99.401、接收客户端发送的参数调优请求,参数调优请求包括算法模块的标识。
100.402、根据算法模块的标识,判断算法模块是否是基于机器学习的算法模块;若是,执行步骤403;若否,执行步骤404。
101.403、结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代,并进入步骤405。
102.404、结合种群变异方式和贝叶斯优化方式,对算法模块的参数组合进行种群迭代,并进入步骤405。
103.405、根据种群迭代产生的参数组合向客户端提供目标参数组合,以使客户端基于目标参数组合运行算法模块。
104.本关于本实施例中各步骤的详细实施方式,可参见前述实施例中的描述,在此不再赘述。
105.在本实施例中,同时提供针对基于机器学习的算法模块和传统算法模块的参数优化服务,相当于提供了一套可适配不同算法模块的通用型的参数优化方案,来提升算法模块的参数优化效率,进而提升算法模块产生的算效果。
106.为了说明本技术实施例提供的各种方法的有益效果,本技术发明人在业界参数优化算法常用的数据集上对现有参数优化方法和本技术实施例提供的参数优化方法进行了模拟实验,其中比对效果如下表1和表2所示。在表1和表2中,效果值越小代表算法性能越
好,效率值越小代表算法越好。其中,表1是基于机器学习的算法模块在不同算法下的优化效果比对,表2是传统算法模块在不同算法下的优化效果比对。
107.表1
[0108][0109][0110]
表2
[0111][0112]
由上述表1和表2可知,无论是本技术实施例提供的针对机器学习的算法模块的参数优化方案还是本技术实施例提供的针对传统的算法模块的参数优化方案,从效果和效率上都要优于传统参数优化算法。其中,图2所示实施的方法可简称为结合资源的pbt优化方法,图3所示实施例的方法可简称为种群贝叶斯优化方法。
[0113]
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,
或者,该方法也由不同设备作为执行主体。比如,步骤201至步骤203的执行主体可以为设备a;又比如,步骤201和202的执行主体可以为设备a,步骤203的执行主体可以为设备b;等等。
[0114]
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如201、202等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0115]
图5为本技术示例性实施例提供的一种参数服务优化装置的结构示意图。如图5所示,该装置包括:接收模块51、第一迭代优化模块52和提供模块53。
[0116]
接收模块51,用于接收客户端发送的参数调优请求,参数调优请求包括算法模块的标识。第一迭代优化模块52,用于结合用于参数优化服务的资源的动态变化信息,对算法模块的参数组合进行与资源适配的种群迭代。提供模块53,用于根据种群迭代产生的参数组合向客户端提供目标参数组合,以使客户端基于目标参数组合运行算法模块。
[0117]
在一可选实施例中,第一迭代优化模块52具体用于:使用随机采样方式对算法模块的算法参数进行初始化,以得到初始种群;自初始种群开始,根据算法模块在当前种群中各参数组合下的性能参数和用于参数优化服务的资源的动态变化信息进行种群迭代。
[0118]
进一步可选地,第一迭代优化模块52在进行种群迭代时,具体用于:在每次迭代操作中,根据资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群,并利用验证数据集评估算法模块在第二种群中各参数组合下的性能参数;以及根据算法模块在第二种群中各参数组合下的性能参数,采用种群变异方式产生用于参与下一次迭代操作的第一种群,直至满足迭代终止条件;其中,第一种群是由上一次迭代操作产生的用于参与下一次迭代操作的种群。
[0119]
进一步可选地,第一迭代优化模块52在得到第二种群时,具体用于:若资源减少,则根据剩余的资源量,结合第一种群中各种参数组合的代际数,从中淘汰至少一种参数组合,以得到第二种群;若资源增加,则根据增加的资源量,以第一种群中的部分参数组合为基础产生新的参数组合,以得到第二种群。
[0120]
进一步可选地,在资源增加的情况下,第一迭代优化模块52在得到第二种群时,具体用于:根据算法模块在第一种群中各参数组合下的性能参数,选择性能参数最优且没有后代的m种参数组合;以不大于增加的资源量所能承载的数量为目标,对m种参数组合分别进行变异以得到新的参数组合;将由m种参数组合变异得到的新的参数组合加入第一种群中,以得到第二种群;m是大于或等于1的整数。
[0121]
进一步可选地,第一迭代优化模块52在对m种参数组合分别进行变异时,具体用于:对第一参数组合,根据第一参数组合的代际数和算法参数的数量,生成搜索空间的波动比例上限值;根据波动比例上限值和第一参数组合的原始搜索空间,生成新的搜索空间;在新的搜索空间中进行至少一次随机采样,以得到至少一种新的参数组合;其中,第一参数组合是m种参数组合中的任一种参数组合。
[0122]
进一步可选地,第一迭代优化模块52在采用种群变异方式产生用于参与下一次迭代操作的第一种群时,具体用于:根据算法模块在第二种群中各参数组合下的性能参数,从
中选择性能参数最优且没有后代的n种参数组合;以不大于当前用于参数优化服务的资源量所能承载的数量为目标,对n种参数组合分别进行变异以得到新的参数组合;根据n种参数组合以及由n种参数组合变异得到的新的参数组合产生用于参与下一次迭代操作的第一种群;n是大于或等于1的整数。
[0123]
在一可选实施例中,如图5所示,该装置还包括:判断模块54。判断模块54,用于根据算法模块的标识,判断算法模块是否是基于机器学习的算法模块;若算法模块是基于机器学习的算法模块,则触发第一迭代优化模块52执行相应操作。
[0124]
在一可选实施例中,如图5所示,该装置还包括:第二迭代优化模块55。第二迭代优化模块55,用于在判断模块54的判断结果为否时,结合种群变异方式和贝叶斯优化方式,对算法模块的参数组合进行种群迭代。
[0125]
进一步可选地,第二迭代优化模块55具体用于:使用贝叶斯优化方式对算法模块的算法参数进行初始化,以得到初始种群,并自初始种群开始对算法模块的参数组合进行种群迭代;其中,在每次迭代操作中,根据算法模块在当前种群中各参数组合下的性能参数,采用种群变异方式产生第一部分新的参数组合,并以当前种群中全部参数组合作为样本采用贝叶斯优化方式产生第二部分新的参数组合;根据第一部分新的参数组合和第二部分新的参数组合产生用于参与下一次迭代操作的种群。
[0126]
在一可选实施例中,提供模块53具体用于:获取最后一次种群迭代产生的k种参数组合,将k种参数组合及算法模块在k种参数组合下的性能参数返回给客户端,以供客户端从中选择目标参数组合;或者,获取最后一次种群迭代产生的k种参数组合,根据算法模块在k种参数组合下的性能参数从k种参数组合中选择目标参数组合,并将目标参数组合返回给客户端。
[0127]
以上描述了参数服务优化装置的内部功能和结构,如图6所示,实际中,该参数服务优化装置可实现为服务端设备,包括:存储器61、处理器62以及通信组件63。
[0128]
存储器61,用于存储计算机程序,并可被配置为存储其它各种数据以支持在服务端设备上的操作。这些数据的示例包括用于在服务端设备上操作的任何应用程序或方法的指令,消息,图片,视频等。
[0129]
存储器61可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0130]
处理器62,与存储器61耦合,用于执行存储器61中的计算机程序,以用于:通过通信组件63接收客户端发送的参数调优请求,所述参数调优请求包括算法模块的标识;结合用于参数优化服务的资源的动态变化信息,对所述算法模块的参数组合进行与所述资源适配的种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
[0131]
在一可选实施例中,处理器62在执行种群迭代时,具体用于:使用随机采样方式对算法模块的算法参数进行初始化,以得到初始种群;自初始种群开始,根据算法模块在当前种群中各参数组合下的性能参数和用于参数优化服务的资源的动态变化信息进行种群迭代。
[0132]
进一步可选地,处理器62在进行种群迭代时,具体用于:在每次迭代操作中,根据资源的动态变化信息,调整第一种群中参数组合的数量以得到第二种群,并利用验证数据集评估算法模块在第二种群中各参数组合下的性能参数;以及根据算法模块在第二种群中各参数组合下的性能参数,采用种群变异方式产生用于参与下一次迭代操作的第一种群,直至满足迭代终止条件;其中,第一种群是由上一次迭代操作产生的用于参与下一次迭代操作的种群。
[0133]
进一步可选地,处理器62在得到第二种群时,具体用于:若资源减少,则根据剩余的资源量,结合第一种群中各种参数组合的代际数,从中淘汰至少一种参数组合,以得到第二种群;若资源增加,则根据增加的资源量,以第一种群中的部分参数组合为基础产生新的参数组合,以得到第二种群。
[0134]
进一步可选地,在资源增加的情况下,处理器62在得到第二种群时,具体用于:根据算法模块在第一种群中各参数组合下的性能参数,选择性能参数最优且没有后代的m种参数组合;以不大于增加的资源量所能承载的数量为目标,对m种参数组合分别进行变异以得到新的参数组合;将由m种参数组合变异得到的新的参数组合加入第一种群中,以得到第二种群;m是大于或等于1的整数。
[0135]
进一步可选地,处理器62在对m种参数组合分别进行变异时,具体用于:对第一参数组合,根据第一参数组合的代际数和算法参数的数量,生成搜索空间的波动比例上限值;根据波动比例上限值和第一参数组合的原始搜索空间,生成新的搜索空间;在新的搜索空间中进行至少一次随机采样,以得到至少一种新的参数组合;其中,第一参数组合是m种参数组合中的任一种参数组合。
[0136]
进一步可选地,处理器62在采用种群变异方式产生用于参与下一次迭代操作的第一种群时,具体用于:根据算法模块在第二种群中各参数组合下的性能参数,从中选择性能参数最优且没有后代的n种参数组合;以不大于当前用于参数优化服务的资源量所能承载的数量为目标,对n种参数组合分别进行变异以得到新的参数组合;根据n种参数组合以及由n种参数组合变异得到的新的参数组合产生用于参与下一次迭代操作的第一种群;n是大于或等于1的整数。
[0137]
在一可选实施例中,处理器62还用于:根据算法模块的标识,判断算法模块是否是基于机器学习的算法模块;若算法模块是基于机器学习的算法模块,则执行结合用于参数优化服务的资源的动态变化信息,对所述算法模块的参数组合进行与所述资源适配的种群迭代的操作。
[0138]
在一可选实施例中,处理器62还用于在判断结果为否时,结合种群变异方式和贝叶斯优化方式,对算法模块的参数组合进行种群迭代;根据种群迭代产生的参数组合向所述客户端提供目标参数组合,以使所述客户端基于所述目标参数组合运行所述算法模块。
[0139]
进一步可选地,处理器62具体用于:使用贝叶斯优化方式对算法模块的算法参数进行初始化,以得到初始种群,并自初始种群开始对算法模块的参数组合进行种群迭代;其中,在每次迭代操作中,根据算法模块在当前种群中各参数组合下的性能参数,采用种群变异方式产生第一部分新的参数组合,并以当前种群中全部参数组合作为样本采用贝叶斯优化方式产生第二部分新的参数组合;根据第一部分新的参数组合和第二部分新的参数组合产生用于参与下一次迭代操作的种群。
[0140]
在一可选实施例中,处理器62具体用于:获取最后一次种群迭代产生的k种参数组合,将k种参数组合及算法模块在k种参数组合下的性能参数返回给客户端,以供客户端从中选择目标参数组合;或者,获取最后一次种群迭代产生的k种参数组合,根据算法模块在k种参数组合下的性能参数从k种参数组合中选择目标参数组合,并将目标参数组合返回给客户端。
[0141]
需要说明的是,处理器62可以仅具有执行结合用于参数优化服务的资源的动态变化信息,对所述算法模块的参数组合进行与所述资源适配的种群迭代的能力,也可以仅具有执行结合种群变异方式和贝叶斯优化方式,对所述算法模块的参数组合进行种群迭代的能力,也可以同时具有执行两种种群迭代操作的能力。
[0142]
进一步,如图6所示,该服务端设备还包括:电源组件64等其它组件。图6中仅示意性给出部分组件,并不意味着服务端设备只包括图6所示组件。
[0143]
相应地,本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现上述各方法实施例中的各步骤。
[0144]
上述图6中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如wifi,2g、3g、4g/lte、5g等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0145]
上述图6中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
[0146]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0147]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0148]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0149]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0150]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0151]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0152]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0153]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0154]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1