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

算法资源的配置方法、装置、电子设备及存储介质与流程

2022-08-17 09:08:21 来源:中国专利 TAG:


1.本公开涉及数据处理技术领域,具体而言,本公开涉及一种算法资源的配置方法、装置、电子设备及存储介质。


背景技术:

2.近几年随着视频技术的发展,视频的趣味性越来越高,对视频进行处理变得越来越重要。
3.对视频进行处理的过程可以描述为:终端从服务器获取含有终端所需的算法资源的算法资源包,由终端根据接收到的算法资源包对视频进行处理,获得处理后的视频。
4.由于不同的算法资源包中可能具有重复的算法资源,如果终端对每个算法资源包中的算法资源都执行一次,那么重复的算法资源就会被重复执行,进而导致视频处理的效率较低以及存在冗余开销的问题。


技术实现要素:

5.本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的算法资源的配置方法、装置、电子设备及存储介质。
6.第一方面,提供了一种算法资源的配置方法,该方法包括:
7.获取至少两个原始算法资源包,每个原始算法资源包中包括至少一个算法资源;
8.确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系;
9.确定至少两个原始算法资源包中类型重复的算法资源,并根据预设规则确定类型重复的算法资源中冗余的算法资源;
10.将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;
11.根据目标算法资源间的依赖关系,配置目标算法资源。
12.第二方面,提供了一种算法资源的配置装置,包括:
13.算法资源包获取模块,用于获取至少两个原始算法资源包,每个原始算法资源包中包括至少一个算法资源;
14.信息确定模块,用于确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系;
15.冗余资源确定模块,用于确定至少两个原始算法资源包中类型重复的算法资源,并根据预设规则确定类型重复的算法资源中冗余的算法资源;
16.依赖关系更新模块,用于将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;
17.配置模块,用于根据目标算法资源间的依赖关系,配置目标算法资源。
18.第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤。
19.第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
20.第五方面,本发明实施例提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤。
21.本公开实施例提供的算法资源的配置方法、装置、电子设备及存储介质,通过获取至少两个原始算法资源包,确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系,从类型重复的算法资源中确定冗余的算法资源,从而避免同类型的算法资源被重复调用,将原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源,能够降低算法资源冗余运行产生的开销。
附图说明
22.为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单地介绍。
23.图1为本公开实施例提供的算法资源的配置方法的应用场景示意图;
24.图2为本公开实施例提供的算法资源的配置方法的流程示意图;
25.图3为本公开实施例提供的两个原始算法资源包的示意图;
26.图4为本公开实施例提供的目标有向图的示意图;
27.图5为本公开实施例提供的一种算法资源的配置装置的结构示意图;
28.图6为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
29.下面详细描述本公开的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能解释为对本发明的限制。
30.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本公开的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
31.为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方
式作进一步地详细描述。
32.本公开提供的算法资源的配置方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。
33.下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
34.参见图1,图1为本公开实施例提供的算法资源的配置方法的应用场景示意图,该应用场景以算法资源的配置方法应用于终端设备为例进行介绍。该应用场景中包括终端设备100,终端设备100可以是智能手机等智能终端、计算机、个人数字助理(personal digital assistant,简称pda)、平板电脑、可穿戴电子设备、智能家居设备等。
35.终端设备100中可以存储至少一个视频或者视频片段,为了便于在终端设备100对视频进行处理(例如,在视频中添加特效),可以调用相应的算法资源,终端设备100可以对算法资源进行配置以完成对视频的处理。
36.当需要对算法资源进行配置时,终端设备100可以获得与处理对应的视频对应的算法资源包,参见图1中数据库200所示,终端设备100可以获取算法资源包1和算法资源包2,其中,算法资源包1中包括算法资源a1-a4,算法资源包2中包括算法资源a1、a2、a5。当对视频进行处理时,需要用到算法资源a1-a5,其中a1-a5可以理解为算法资源,且具有对应的算法类型。
37.图1中示出的箭头可以表示算法资源包中的算法资源间的依赖关系。
38.在对视频进行处理时,当调用某个或某些算法资源时,这个或这些算法资源还可能需要调用其他算法资源或者依赖于其他算法资源的输出,才能完成相应的处理,这种调用关系可以称为依赖关系。
39.可以理解的是,通过算法资源间的依赖关系可以连接两个算法资源,通过依赖关系所连接的多个算法资源都可以作为具有依赖关系的算法资源。
40.例如,数据库200中的算法资源a1需要调用算法资源a2,则算法资源a1对算法资源a2具有依赖关系。
41.终端设备100可以根据依赖关系例如图1中的200中的箭头,确定出具有依赖关系的算法资源,从而进一步确定出哪些算法资源依赖于其他算法资源,以及被依赖的算法资源有哪些,等等。
42.图1中300用于表示原始算法资源包的配置过程,算法资源包1和算法资源包2中类型重复的算法资源为a1和a2,通过预设规则确定类型重复的算法资源中冗余的算法资源包括一个a1,因此从算法资源包1和算法资源包2中的确定目标算法资源包括:1个a1、2和a2、1个a3、1个a4和1个a5。
43.在算法资源包1中,算法资源a1需要调用算法资源a2,算法资源a2需要调用算法资源a3,算法资源a3需要调用算法资源a4。在算法资源包2中,算法资源a1需要调用算法资源a2,算法资源a2需要调用算法资源a5,从而确定目标算法资源的依赖关系为:算法资源a1分别调用两个算法资源a2,两个算法资源a2共同调用算法资源a3,算法资源a3调用算法资源a4,算法资源a4调用算法资源a5。
44.从而终端设备100根据目标算法资源的依赖关系,配置目标算法资源,之后利用配
置好的目标算法资源对视频进行处理,获得处理后的视频。
45.需要注意的是,本公开实施例中的算法资源除了可以包括各种算法资源,例如,视频处理的算法资源、运行电子游戏所需的算法资源,本公开实施例所提到的电子游戏可以包括通过在终端设备上执行应用程序所运行的游戏,对应的算法资源可以包括在运行游戏时,需要调用的算法资源,例如,对游戏中的角色模型、贴图、动作、技能、音效等进行处理的算法资源。本领域技术人员应当理解的是,本公开不对算法资源的类型等进行限制。
46.图2为本公开实施例提供的算法资源的配置方法的流程示意图,如图2所示,该方法包括:
47.s101、获取至少两个原始算法资源包,每个原始算法资源包中包括至少一个算法资源。
48.本公开实施例适用于获取至少两个原始算法资源包的场景,每个原始算法资源包中包括至少一个算法资源,在视频处理领域,算法资源可以用于对视频进行处理。
49.现有技术在获得多个算法资源包后,通常会直接利用每个算法资源包中的算法资源对视频进行处理,但这就存在相同类型的算法资源被重复使用的问题。本公开为了克服该问题,在获取算法资源包后进一步将这些算法资源包中类型重复的算法资源包中确定冗余资源,之后将冗余资源删除,从而为后续精简算法资源做准备。
50.s102、确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系。
51.对于一个算法资源包来说,针对该算法资源包可以实现的功能以及该算法资源包中的各个算法资源的功能,可以预先确定好算法资源的类型以及算法资源间的初始依赖关系,初始依赖关系即算法资源在一个算法资源包中预先确定好的依赖关系。
52.图3为本公开实施例提供的两个原始算法资源包的示意图,如图3所示,原始算法资源包1中包括a~h共8个算法资源,原始算法资源包2中包括a~h、k和l共10个算法资源,图中连接算法资源的箭头表示算法资源具有依赖关系,例如在原始算法资源包2中,算法资源c和算法资源g之间具有连线,表示算法资源c和算法资源g具有依赖关系。
53.需要说明的是,依赖关系是根据算法资源包确定的,不同的算法资源包确定出来的依赖关系可能不同,以图3为例,原始算法资源包1中的算法资源e仅与算法资源d存在依赖关系,但原始算法资源包2中的算法资源e与算法资源d和l均存在依赖关系。由此可知,针对不同的算法资源包,算法资源包中的算法资源间的依赖关系可能有所不同。
54.s103、确定至少两个原始算法资源包中类型重复的算法资源,并根据预设规则确定类型重复的算法资源中冗余的算法资源。
55.以图3为例,原始算法资源包1和2中类型重复的算法资源包括a,b,c,d,e,f,g,h。如果两个原始算法资源包都执行一遍,显然这些类型重复的算法资源包都会被执行两遍,因此本公开在确定类型重复的算法资源后,可以根据预设规则确定类型重复的算法资源中冗余的算法资源。
56.在本公开中,冗余的算法资源的数量不作限定。以图3为例,算法资源d属于两个算法资源包中的类型重复的算法资源,可以将其中一个算法资源d作为冗余资源,也可以将两个算法资源d都不作为冗余资源,也就是说,若某一类型重复的算法资源的数量为m,那么冗余的算法资源的数量可以为0或者m-1。
57.s104、将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系。
58.以图3为例,根据预设规则,从两个原始算法资源包最终确定的冗余资源包括:1个a、1个b、1个c、1个f、1个g、1个h,也就是说,两个原始算法资源包中的目标算法资源包括1个算法资源a、1个算法资源b、1个算法资源c、2个算法资源d、2个算法资源e、1个算法资源f、1个算法资源g、1个算法资源h、1个算法资源k和1个算法资源l。
59.在确定目标算法资源后,可以结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系。例如,在原始算法资源包中算法资源a和算法资源b存在依赖关系,则被确定为目标算法资源后,算法资源a和算法资源b间的依赖关系保持不变;在原始算法资源包中算法资源b和算法资源d存在依赖关系,同时目标算法资源包括两个算法资源d,重新确定算法资源b和算法资源d之间的依赖关系时,进一步根据预设更新规则只将算法资源b和其中一个算法资源d保留依赖关系;在原始算法资源包中算法资源c和算法资源d存在依赖关系,同时目标算法资源包括两个算法资源d,重新确定算法资源c和算法资源d之间的依赖关系时,将算法资源c和两个算法资源d均保留依赖关系;在原始算法资源包中算法资源d和e之间存在依赖关系,同时目标算法资源包括两个算法资源d(d1和d2)和两个e(e1和e2),则可以将d1和e1建立依赖关系,将算法资源d2和算法资源e2建立依赖关系。
60.由此可见,根据本公开实施例在确定目标算法资源间的依赖关系时,是在原始依赖关系的基础上,结合针对每一种目标算法资源预设了对应的规则,进而确定目标算法资源间的依赖关系。
61.s105、根据目标算法资源间的依赖关系,配置目标算法资源。
62.确定目标算法资源间的依赖关系后,即可根据依赖关系配置目标算法资源。以图3为例,首先可以配置算法资源h,然后利用配置好的算法资源h配置与算法资源h具有依赖关系的算法资源f和g,再利用配置好的f和g,配置第一算法资源e(e1)、第二算法资源e(e2)和算法资源c,利用配置好的算法资源e1配置第一算法资源d(d1),利用配置好的算法资源e2配置第二算法资源d(d2)和算法资源l,再利用配置好的算法资源d1配置算法资源b和c,再利用配置好的算法资源b和c配置算法资源a,利用配置好的算法资源l配置算法资源k,进而完成所有目标算法资源的配置。以算法资源应用于对视频进行处理为例,对视频运行配置好的所有目标算法资源,即可获得处理后的视频。
63.本公开的算法资源的配置方法,通过获取至少两个原始算法资源包,确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系,从类型重复的算法资源中确定冗余的算法资源,从而避免同类型的算法资源被重复调用,将原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源,能够降低算法资源冗余运行产生的开销。
64.在上述各实施例的基础上,作为一种可选实施例,将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,之后还包括:将目标算法资源打包至同一个新算法资源包。
65.需要说明的是,在配置好目标算法资源后,尽管可以根据配置好的目标算法资源
从两个原始算法资源包中依次运行目标算法资源,但存在从原始算法资源包中调用繁琐的问题,如果后续还需要使用目标算法资源,仍然需要获取两个原始算法资源包,需要占用较多的存储空间,因此本公开实施例在确定目标算法资源后,还可以将目标算法资源打包至同一个新算法资源包,并在新算法资源包中配置目标算法资源,后续在需要对视频进行对应的处理时,直接调用新算法资源包即可,不仅节省时间,提高运行效率,而且还可以节省存储空间。
66.以图3中的两个原始算法资源包的配置结果为例,新算法资源包中包括1个算法资源a、1个算法资源b、1个算法资源c、2个算法资源d、2个算法资源e、1个算法资源f、1个算法资源g、1个算法资源h、1个算法资源k和1个算法资源l。
67.通过将算法资源以资源集合的形式进行打包,使得最终得到的算法资源数量是可控的,并且以资源集合打包得到的算法资源的数量远少于所有原始算法资源包中算法资源的总和,能够避免调用出错且避免算法资源的冗余运行。
68.在上述各实施例的基础上,作为一种可选实施例,确定至少两个原始算法资源包中类型重复的算法资源,根据预设规则确定类型重复的算法资源中冗余的算法资源,之前还包括:
69.针对每个原始算法资源包,根据原始算法资源包中算法资源间的初始依赖关系,生成原始算法资源包对应的有向图;其中,有向图中每个节点用于表征原始算法资源包中的算法资源,有向图包括节点间的拓扑关系,节点间的拓扑关系用于表征算法资源间的初始依赖关系。
70.本公开的原始算法资源包对应的有向图可参见图3,如图3所示,每个算法资源包对应一个有向图,并且,各个算法资源在有向图中用圆形的节点进行表示,图3中节点之间的拓扑关系用箭头进行表示,拓扑关系用于表示算法资源间的初始依赖关系,例如在图3中,算法资源a依赖于算法资源b,当调用算法资源a时,根据原始依赖关系,还需要调用算法资源b。
71.在上述各实施例的基础上,作为一种可选实施例,本公开实施例的结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系,包括:
72.s201、在每个原始算法资源包对应的有向图中确定表征目标算法资源的目标节点;
73.s202、根据目标节点在各自对应的有向图中连接的节点,对目标节点进行拓扑排序,获得目标拓扑序列;
74.以图3为例:
75.目标节点a在原始算法资源包1对应的有向图中连接的节点为b和c,目标节点a在原始算法资源包2对应的有向图中连接的节点为b和c,进行拓扑排序的结果1为:a,b;结果2为:a,c。
76.目标节点b在原始算法资源包1和2中对应的有向图中连接的节点均为d,根据预设规则确定目标算法资源中包括两个类型为d的算法资源,进一步根据预设更新规则针对目标节点b仅保留b与其中一个类型d的节点保持依赖关系,在上述结果1的基础上继续排序,获得结果3:a,b,d1;其中d1表示其中一个类型为d的算法资源对应的节点。
77.目标节点c在原始算法资源包1和2中对应的有向图中连接的节点均为d和g,以节
点d为例,考虑目标算法资源中包括两个类型为d的算法资源,针对目标节点c保留与两个类型d的节点保持依赖关系,在结果2的基础上继续排序,获得结果4:a,c,d1和结果5:a,c,d2;其中d2表示另一个类型为d的算法资源对应的节点。
78.目标节点d在原始算法资源包1和2中对应的有向图中连接的节点均为e,考虑目标算法资源中包括两个类型为e的算法资源,将d1保持与e1的依赖关系,将d2保持与e2的依赖关系,从而在结果3的基础上继续排序,获得结果6:a,b,d1,e1,在结果4的基础上继续排序,获得结果7:a,c,d1,e1,在结果5的基础上继续排序,获得结果8:a,c,d2,e2。
79.类似地,对原始算法资源包1和2中的其他目标算法资源进行排序,并最终可获得图3所述实施例的目标拓扑序列:
80.a,b,d1,e1,f,h;
81.a,c,d1,e1,f,h;
82.a,c,d2,e2,f,h;
83.a,c,g,h;
84.k,l,e2,f,h。
85.s203、根据目标拓扑序列确定目标算法资源间的依赖关系。
86.以上述图3所述实施例的目标拓扑序列为例,算法资源a与算法资源b和算法资源c均存在依赖关系;算法资源b与其中一个算法资源d(d1)存在依赖关系;算法资源c与两个算法资源d和算法资源g均存在依赖关系;算法资源d1与其中一个算法资源e(e1)存在依赖关系;算法资源d2与另一个算法资源e(e2)存在依赖关系;算法资源e1与算法资源f存在依赖关系;算法资源e2与算法资源f存在依赖关系;算法资源k与算法资源l存在依赖关系;算法资源l与算法资源e2存在依赖关系;算法资源f与算法资源h存在依赖关系;算法资源g与算法资源h存在依赖关系。
87.在上述各实施例的基础上,作为一种可选实施例,本公开为了避免后续使用算法资源时重复对目标算法资源进行分析,本公开还包括:根据目标拓扑序列,生成目标有向图;
88.其中,目标有向图包括目标节点和目标节点之间的拓扑关系,并且,目标节点之间的拓扑关系用于表征目标算法资源间的依赖关系。
89.参见图4,图4为本公开实施例提供的目标有向图的示意图,图4所示的目标有向图是根据图3所示的两个原始算法资源包中确定的目标算法资源生成的。图4中的d1表示一个类型为d的算法资源包,d2表示另一个类型为d的算法资源包,同理可知e1表示一个类型为e的算法资源包,e2表示另一个类型为e的算法资源包,也就是说尽管算法资源d和e属于类型重复的算法资源,但算法资源d和e均不存在冗余的算法资源。图4通过有向图的方式清楚地记录了各目标算法资源间的依赖关系,在将目标算法资源打包为一个新的算法资源包后,后续在利用新的算法资源包与其他算法资源包时,由于新的算法资源包的有向图已经预先生成,可以减少配置算法资源的工作量,提高工作效率。
90.在上述各实施例的基础上,作为一种可选实施例,根据预设规则确定类型重复的算法资源中冗余的算法资源,包括:
91.s301、获取预设规则;
92.由于同一类型的算法资源在不同的算法资源包中的依赖关系可能存在差异,同时
不同类型的算法资源在同一算法资源包中的依赖关系必然存在差异,因此本公开可以针对每个算法资源设置对应的预设规则,从而更灵活地确定冗余的算法资源。
93.s302、若预设规则包括合并具有相同初始依赖关系的类型重复的算法资源,则确定类型重复的算法资源中的至少一个算法资源为保留算法资源,将类型重复的算法资源中除保留算法资源外的其他算法资源作为冗余的算法资源;
94.s303、若预设规则包括不合并具有相同初始依赖关系的类型重复的算法资源,则确定类型重复的算法资源中不存在冗余的算法资源。
95.在上述各实施例的基础上,作为一种可选实施例,原始算法资源包中还包括类型信息和依赖关系信息,类型信息包括原始算法资源包中每个算法资源的类型;依赖关系信息包括原始算法资源包中算法资源间的初始依赖关系。
96.以图3为例,原始算法资源包1中记录的依赖关系信息包括算法资源a和算法资源b存在依赖关系、算法资源a和算法资源c存在依赖关系、算法资源b和算法资源d存在依赖关系、算法资源c和算法资源d存在依赖关系、算法资源c和算法资源g存在依赖关系、算法资源d和算法资源e存在依赖关系、算法资源e和算法资源f存在依赖关系、算法资源f和算法资源h存在依赖关系、算法资源g和算法资源h存在依赖关系。本公开实施例通过在算法资源包中记录依赖关系信息,使得后续在进行算法资源的配置时能够快速根据依赖关系信息确定各个算法资源的依赖关系,为后续精简算法资源做准备,为重新确定各算法资源的新的依赖关系提供便利,降低算法资源冗余运行产生的开销。
97.本公开实施例提供了一种算法资源的配置装置,如图5所示,该装置可以包括:算法资源包获取模块101、信息确定模块102、冗余资源确定模块103、依赖关系更新模块104和配置模块105,具体地:
98.算法资源包获取模块101,用于获取至少两个原始算法资源包,每个原始算法资源包中包括至少一个算法资源;
99.信息确定模块102,用于确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系;
100.冗余资源确定模块103,用于确定至少两个原始算法资源包中类型重复的算法资源,并根据预设规则确定类型重复的算法资源中冗余的算法资源;
101.依赖关系更新模块104,用于将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;
102.配置模块105,用于根据目标算法资源间的依赖关系,配置目标算法资源。
103.本发明实施例提供的算法资源的配置装置,具体执行上述方法实施例流程,具体请详见上述算法资源的配置方法实施例的内容,在此不再赘述。本发明实施例提供的算法资源的配置装置,通过获取至少两个原始算法资源包,确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系,从类型重复的算法资源中确定冗余的算法资源,从而避免同类型的算法资源被重复调用,将原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源,能够降低算法资源冗余运行产生的开销。
104.在上述各实施例的基础上,作为一种可选实施例,配置装置还包括:
105.打包模块,用于在将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源之后,将目标算法资源打包至同一个新算法资源包。
106.在上述各实施例的基础上,作为一种可选实施例,配置装置还包括:
107.有向图生成模块,用于在确定至少两个原始算法资源包中类型重复的算法资源之前,针对每个原始算法资源包,根据原始算法资源包中算法资源间的初始依赖关系,生成原始算法资源包对应的有向图;
108.其中,有向图中每个节点用于表征原始算法资源包中的算法资源,有向图包括节点间的拓扑关系,节点间的拓扑关系用于表征算法资源间的初始依赖关系。
109.在上述各实施例的基础上,作为一种可选实施例,依赖关系更新模块包括:
110.目标节点确定单元,用于在每个原始算法资源包对应的有向图中确定表征目标算法资源的目标节点;
111.排序单元,用于根据目标节点在各自对应的有向图中连接的节点,对目标节点进行拓扑排序,获得目标拓扑序列;
112.依赖关系确定单元,用于根据目标拓扑序列确定目标算法资源间的依赖关系。
113.在上述各实施例的基础上,作为一种可选实施例,配置装置还包括:
114.目标有向图建立模块,用于根据目标拓扑序列,生成目标有向图;
115.其中,目标有向图包括目标节点和目标节点之间的拓扑关系,并且,目标节点之间的拓扑关系用于表征目标算法资源间的依赖关系。
116.在上述各实施例的基础上,作为一种可选实施例,冗余资源确定模块包括:
117.预设规则确定单元,用于获取预设规则;
118.第一判断单元,用于若预设规则包括合并具有相同初始依赖关系的类型重复的算法资源,则确定类型重复的算法资源中的至少一个算法资源为保留算法资源,将类型重复的算法资源中除保留算法资源外的其他算法资源作为冗余的算法资源;
119.第二判断单元,用于若预设规则包括不合并具有相同初始依赖关系的类型重复的算法资源,则确定类型重复的算法资源中不存在冗余的算法资源。
120.在上述各实施例的基础上,作为一种可选实施例,原始算法资源包中还包括类型信息和依赖关系信息,类型信息包括原始算法资源包中每个算法资源的类型;依赖关系信息包括原始算法资源包中算法资源间的初始依赖关系。
121.本公开实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,获取至少两个原始算法资源包,每个原始算法资源包中包括至少一个算法资源;确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系;确定至少两个原始算法资源包中类型重复的算法资源,并根据预设规则确定类型重复的算法资源中冗余的算法资源;将至少两个原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源。与现有技术相比可实现:通过获取至少两个原始算法资源包,确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系,从类型重复的算法资源中确定冗余的算法资源,从而避免同类型的算法资源被重复调用,将原始算法资源包中除冗余
的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源,能够降低算法资源冗余运行产生的开销。
122.在一个可选实施例中提供了一种电子设备,如图6所示,图6所示的电子设备600包括:处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置606存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
123.通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置606存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
124.本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,通过获取至少两个原始算法资源包,确定原始算法资源包中每个算法资源的类型以及算法资源间的初始依赖关系,从类型重复的算法资源中确定冗余的算法资源,从而避免同类型的算法资源被重复调用,将原始算法资源包中除冗余的算法资源外的其他算法资源作为目标算法资源,结合原始算法资源包中算法资源间的初始依赖关系,确定目标算法资源间的依赖关系;根据目标算法资源间的依赖关系,配置目标算法资源,能够降低算法资源冗余运行产生的开销。
125.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机程序产品。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序产品可以通过通信装置609从网络上被下载和安装,或者从存储装置606被安装,或者从rom 602被安装。在该计算机程序产品被处理装置601执行时,执行本公开实施例的算法资源的配置方法中限定的上述功能。
126.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
127.以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
再多了解一些

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

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

相关文献