任务请求信息的自动生成方法、装置、计算机设备及介质与流程

文档序号:31132450发布日期:2022-08-13 06:51阅读:71来源:国知局
任务请求信息的自动生成方法、装置、计算机设备及介质与流程

1.本发明涉及人工智能技术领域,尤其涉及一种任务请求信息的自动生成方法、装置、计算机设备及介质。


背景技术:

2.目前,随着人工智能技术的发展,数据处理相关的任务由原有的人工处理逐渐变更为采用分配了计算资源的机器进行处理,以提高任务执行的效率。在机器进行任务处理时,需要生成请求信息,使用该请求信息获取用户的配置数据以及执行后续数据处理,其中,将需要与用户交互以获取配置数据的任务称为交互任务,现有技术中请求信息的生成时机为任务流程达到交互任务执行时间点。
3.然而,在请求信息生成并发送给用户后需要等待用户人为上传配置数据,等待的过程影响了任务流程执行的效率,而如果预先收集配置数据进行存储,将带来较大的存储负担并占用一定的计算资源,从而降低任务流程执行的效率,且用于机器进行数据处理的计算资源分配通常按预设值分配,导致并行任务之间的完成时间点可能出现较大差异,进而导致需要进行冗余时长的等待,也会降低任务流程执行的效率,因此,如何提高任务流程执行的效率成为亟待解决的问题。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种任务请求信息的自动生成方法、装置、计算机设备及介质,以解决任务流程执行的效率较低的问题。
5.第一方面,本发明实施例提供一种任务请求信息的自动生成方法,所述自动生成方法包括:
6.将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度,所述历史执行记录包括任务执行时长和执行分配资源量,所述标记信息用于表征节点对应任务是否需要配置数据;
7.将所述任务执行时长、所述执行分配资源量和所述标记信息作为对应节点的节点信息,并在所述关联程度满足预设条件的节点之间设置边,得到任务图数据;
8.使用所述任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将所述任务图数据输入所述再训练后的资源分配网络,输出每个节点对应的计算资源分配量;
9.根据每个节点对应的所述计算资源分配量,计算对应节点的预测执行时长,根据所述预测执行时长和所述目标任务流程,确定每个任务的执行时间点;
10.根据每个任务的所述执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到所述配置请求时间点时,由对应任务生成配置请求信息,所述配置请求信息用于发送给用户,以获取配置数据。
11.第二方面,本发明实施例提供一种任务请求信息的自动生成装置,所述自动生成
装置包括:
12.任务信息获取模块,用于将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度,所述历史执行记录包括任务执行时长和执行分配资源量,所述标记信息用于表征节点对应任务是否需要配置数据;
13.图数据构建模块,用于将所述任务执行时长、所述执行分配资源量和所述标记信息作为对应节点的节点信息,并在所述关联程度满足预设条件的节点之间设置边,得到任务图数据;
14.资源分配模块,用于使用所述任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将所述任务图数据输入所述再训练后的资源分配网络,输出每个节点对应的计算资源分配量;
15.执行时间确定模块,用于根据每个节点对应的所述计算资源分配量,计算对应节点的预测执行时长,根据所述预测执行时长和所述目标任务流程,确定每个任务的执行时间点;
16.请求信息生成模块,用于根据每个任务的所述执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到所述配置请求时间点时,由对应任务生成配置请求信息,所述配置请求信息用于发送给用户,以获取配置数据。
17.第三方面,本发明实施例提供一种计算机设备,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的自动生成方法。
18.第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的自动生成方法。
19.本发明实施例与现有技术相比存在的有益效果是:
20.将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度,历史执行记录包括任务执行时长和执行分配资源量,标记信息用于表征节点对应任务是否需要配置数据;将任务执行时长、执行分配资源量和标记信息作为对应节点的节点信息,并在关联程度满足预设条件的节点之间设置边,得到任务图数据,使用任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将任务图数据输入再训练后的资源分配网络,输出每个节点对应的计算资源分配量,根据每个节点对应的计算资源分配量,计算对应节点的预测执行时长,根据预测执行时长和目标任务流程,确定每个任务的执行时间点,根据每个任务的执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到配置请求时间点时,由对应任务生成配置请求信息,配置请求信息用于发送给用户,以获取配置数据,采用资源分配网络进行各任务的计算资源分配,避免资源分配不合理的情况,减少了冗余等待时长,能够有效提高任务流程执行的效率,在确定各任务的计算资源分配之后,根据预测的执行时长和任务流程确定合适的时间点生成配置请求信息,预先获取配置请求信息,在尽可能少的占用存储资源的情况下,缩短配置信息等待时间,从而提高任务流程执行的效率。
附图说明
21.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
22.图1是本发明实施例一提供的一种任务请求信息的自动生成方法的一应用环境示意图;
23.图2是本发明实施例一提供的一种任务请求信息的自动生成方法的流程示意图;
24.图3是本发明实施例二提供的一种任务请求信息的自动生成方法的流程示意图;
25.图4是本发明实施例三提供的一种任务请求信息的自动生成装置的结构示意图;
26.图5是本发明实施例四提供的一种计算机设备的结构示意图。
具体实施方式
27.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
28.应当理解,当在本发明说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
29.还应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
30.如在本发明说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0031]
另外,在本发明说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0032]
在本发明说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本发明的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0033]
本发明实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
[0034]
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、
大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0035]
应理解,以下实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0036]
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
[0037]
本发明实施例一提供的一种任务请求信息的自动生成方法,可应用在如图1的应用环境中,其中,服务端能够为目标任务流程提供相应的执行环境、执行的数据记录服务和统计服务,目标任务流程中每个任务均对应有标识信息、标记信息和历史执行记录,服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务端与用户对应的客户端进行通信,用于获取用户的配置数据。其中,客户端包括但不限于掌上电脑、桌上型计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、云端终端设备、个人数字助理(personal digital assistant,pda)等计算机设备。
[0038]
参见图2,是本发明实施例一提供的一种任务请求信息的自动生成方法的流程示意图,上述自动生成方法可以应用于图1中的服务端,服务端将目标任务流程中的每个任务均定义为节点,服务端通过访问节点对应任务的记录数据和统计数据,获取节点对应的标识信息、标记信息和历史执行记录,在目标任务流程执行过程中,服务端生成请求信息并发送给客户端,以获取客户端的配置数据。如图2所示,该自动生成方法可以包括以下步骤:
[0039]
步骤s201,将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度,历史执行记录包括任务执行时长和执行分配资源量。
[0040]
其中,任务可以是指数据采集、转换、计算和排序等对数据进行分析和加工的操作,任务流程可以是指任务执行的过程。
[0041]
节点可以是指图节点,通常以v表示,节点的标识信息可以是指数字序号、字母等用于区分不同节点的符号,节点的标记信息可以是指预先获取的编码信息,标记信息用于表征节点对应任务是否需要配置数据,通常采用0和1表示。
[0042]
任务执行时长可以是指节点对应任务在历史执行过程中执行时长的平均值、最小值和最大值等,执行分配资源量可以是指节点对应任务在历史执行过程中所分配计算资源量的平均值、最小值和最大值等。
[0043]
具体地,任两个相邻节点对应任务之间的关联程度是指在任务流程中执行顺序相邻的两个任务之间的关联指标,例如若任务一与任务二相邻,且任务二的执行顺序在任务一之后,则获取任务一和任务二之间的关联程度,若任务一与任务二相邻,且任务二的执行顺序与任务一相同,为并行执行,则不获取任务一和任务二之间的关联程度。
[0044]
上述将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度步骤将目标任务流程中的任务以节点形式表示,有利于将任务的相关信息量化表示,简化了任务流程的分析过程,提高了任务流程分析的效率。
[0045]
步骤s202,将任务执行时长、执行分配资源量和标记信息作为对应节点的节点信
息,并在关联程度满足预设条件的节点之间设置边,得到任务图数据。
[0046]
其中,节点信息可以是指用于表示节点属性的信息,边可以是指节点之间的连接关系,任务图数据可以是指以任务为节点所构建的图数据,用于将任务进行结构化表示。
[0047]
预设条件可以是指人为根据关联程度的分布而设置的条件,例如,关联程度通过数值表示时,预设条件可以是设定阈值,及关联程度大于设定阈值的情况为满足预设条件,关联程度小于或者等于设定阈值的情况为不满足预设条件,阈值可以为0。
[0048]
具体地,在本实施例中,节点信息以一维向量表示,向量中包含三个元素,各元素位置固定,不同位置的元素代表不同的含义,分别对应任务执行时长、执行分配资源量和标记信息。
[0049]
在一实施方式中,节点信息还可以采用矩阵、三维坐标系中的映射点等方式表示。
[0050]
上述将任务执行时长、执行分配资源量和标记信息作为对应节点的节点信息,并在关联程度满足预设条件的节点之间设置边,得到任务图数据步骤,将任务流程采用图数据形式表示,便于实现任务信息的调整以及任务流程的分析,能够提高任务流程分析的效率。
[0051]
步骤s203,使用任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将任务图数据输入再训练后的资源分配网络,输出每个节点对应的计算资源分配量。
[0052]
其中,资源分配网络可以是指全卷积网络、自编码器和对抗生成网络等神经网络模型。
[0053]
预训练可以是指采用预训练数据集和对应预训练标签进行初步训练的过程,用于使模型能够实现基础功能,基础功能可以是指特征提取和特征重构等,再训练可以是指根据实时提供的再训练数据集和对应再训练标签进行再次训练的过程,用于使模型能够根据实时需求针对性的训练下游任务,下游任务可以是指资源分配任务。
[0054]
计算资源分配量可以是指中央处理器占用量、内存分配空间大小和网络带宽等。
[0055]
具体地,由于预训练仅能确保资源分配网络学习如何提取有效特征,而无法令预训练好的资源分配网络能够输出具体的资源分配结果,因此,需要根据具体的下游任务,下游任务即资源分配任务,对预训练好的资源分配网络进行再训练,再训练的目的为令再训练好的资源分配网络能够将有效特征重构为资源分配结果。
[0056]
可选的是,资源分配网络包括编码器和解码器,资源分配网络的预训练样本为训练图数据,以重构损失作为预训练损失函数;
[0057]
资源分配网络的预训练过程包括:
[0058]
将预训练样本输入编码器,得到样本特征张量;
[0059]
使用解码器对样本特征张量进行特征重构,得到样本重构结果;
[0060]
根据样本重构结果和预训练样本计算预训练损失函数,根据计算结果通过反向传播算法更新编码器和解码器的参数,直至预训练损失函数收敛,得到预训练好的资源分配网络。
[0061]
其中,资源分配网络采用全卷积网络模型,网络组成为编码器和解码器,编码器用于提取输入量的特征,解码器用于将输入量的特征重构,得到输出量。
[0062]
训练图数据可以是指根据历史任务流程所构建的图数据,重构损失可以采用余弦
相似度和欧式距离等相似度计算方法。
[0063]
具体地,预训练的标签即为输入量本身,预训练损失函数用于衡量输入量和输出量的相似度,相似度越大损失函数越小,相似度越小,损失函数越大,输入量为预训练样本,输出量为重构图数据,预训练的下游任务为重构任务。
[0064]
本实施例将预训练的下游任务设置为重构任务,而并非资源分配任务,避免网络无法适应较难的资源分配任务,导致预训练过程难以收敛,且能够在预训练过程中令模型充分学习到提取输入量的有效特征,从而为后续再训练过程提供有效特征,提高资源分配的准确率。
[0065]
可选的是,预训练好的资源分配网络包括预训练好的编码器和预训练好的解码器,以资源分配损失函数作为再训练的损失函数;
[0066]
使用任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将任务图数据输入再训练后的资源分配网络,输出每个节点对应的计算资源分配量包括:
[0067]
将任务图数据输入预训练好的编码器,得到特征张量;
[0068]
使用预训练好的解码器对特征张量进行特征重构,得到重构结果;
[0069]
根据重构结果计算再训练的损失函数的计算,根据计算结果通过反向传播算法更新预训练好的编码器和预训练好的解码器的参数,直至再训练的损失函数收敛;
[0070]
将任务图数据输入参数更新后的资源分配网络,确定参数更新后的资源分配网络的输出结果为资源分配结果。
[0071]
其中,预训练好的资源分配网络可以是指经预训练过程后网络参数固定的资源分配网络,资源分配损失函数可以是指用于衡量资源分配结果对任务流程执行效率影响的损失函数。
[0072]
具体地,再训练的训练样本为任务图数据,再训练过程中,由于再训练的损失函数变更为资源分配损失函数,任务图数据输入预训练好的资源分配网络后,初始输出为重构的任务图数据,初始输出计算得到资源分配损失函数的数值将较大,从而根据资源分配损失函数通过反向传播算法更新预训练好的编码器和预训练好的解码器的参数,直至任务图数据对应的输出量计算得到的资源分配损失函数收敛。
[0073]
本实施例以任务图数据为再训练样本,能够针对性的调整网络参数以适应任务图数据,同时将再训练损失函数设置为资源分配损失函数,变更下游任务,以获取合理的资源分配结果,从而提高任务流程的执行效率。
[0074]
可选的是,若将每个任务按照任务流程中的任务执行顺序划分为n个执行集合,则资源分配损失函数具体为:
[0075][0076]
其中,n为执行集合的序号,n∈[1,2,...,n],n为执行集合的个数,i为执行集合内任务的序号,i∈[1,2,...,in],in为第n个执行集合内任务的个数,c为资源参考值,为第n个执行集合的第i个任务的预测资源分配量,为第n个执行集合的第i个任务的执行分
配资源量,为第n个执行集合的第i个任务的任务执行时长,t为时间参考值。
[0077]
其中,任务执行顺序可以是指任务执行的先后顺序,n为大于0的整数,每个执行集合内的任务并行执行。
[0078]
举例说明,任务三需要在任务一和任务二执行后执行,任务一和任务二并行执行,则第一执行集合包括任务一和任务二,第二执行集合包括任务三。
[0079]
具体地,资源分配损失函数包括资源分配损失项具体地,资源分配损失函数包括资源分配损失项和时间损失项max[0,n=1nmaxntin

*cin

cin-t],i=1incin表示在第n个执行集合中各任务的预测资源分配量总和,由于同一执行集合中的各任务并行执行,不同执行集合按先后顺序执行,因此仅需保证每个执行集合内的各任务所分配的预测资源分配量是合理的,合理是指预测资源分配量总和尽可能接近资源参考值,资源参考值可以是指可分配资源总量,因此即为第n个执行集合中各任务的预测资源分配量总和与资源参考值的差值,且预测资源分配量总和大于资源参考值的情况将导致无法按照资源分配结果进行资源分配,因此损失应较大,因此采用指数函数的形式进行映射,并添加-1项保证预测资源分配量总和与资源参考值相同时,损失为0,由于添加了-1项,为避免损失函数计算结果为负值,对取绝对值。
[0080]
为第n个执行集合的第i个任务在历史执行时的执行分配资源量和任务执行时长的乘积,用于表示对应的任务量,此处采用归一化的思想,仅以执行分配资源量和任务执行时长来确定任务量,无需考虑任务的内容和处理方式等执行细节,便于量化任务量。即为第n个执行集合的第i个任务的预测执行时长,由于对于一个执行集合,只有所有任务完成后才开始下一执行集合,因此执行集合的执行时长即为执行集合中各任务对应的最大执行时长,表示第n个执行集合中的各个任务对应的最大预测执行时长,为目标任务流程的总完成时长,表示当目标任务流程的总完成时长小于或等于t时,该项损失为0,否则,超出时间越长,损失越大。
[0081]
本实施例按照执行集合设计资源分配损失,以及设计任务流程的执行时间损失,能够有效地为资源分配任务提供学习方向,进而使再训练好的资源分配网络输出合理的资源分配结果。
[0082]
可选的是,在使用任务图数据对预训练好的资源分配网络进行再训练之前,还包括:
[0083]
获取目标任务流程对应的预设完成时间和实时总计算资源量;
[0084]
以实时总计算资源量,更新资源分配损失函数中对应的资源参考值;
[0085]
以预设完成时间,更新资源分配损失函数中对应的时间参考值。
[0086]
其中,预设完成时间可以是指目标任务流程的完成时间,在本实施例中,预设完成时间采用人为预设的方式设置。实时总计算资源量可以是指实时获取的可分配计算资源
量。
[0087]
在一实施方式中,预设完成时间还可以采用历史任务流程完成时间的均值或最大值设置。
[0088]
本实施例采用预设完成时间和实时总计算资源量更新资源分配损失函数中对应的参数,提高了资源分配网络的泛化能力,令资源分配网络能够针对不同的目标任务流程,均输出合理的资源分配结果。
[0089]
可选的是,在以预设完成时间,更新资源分配损失函数中对应的时间参考值之后,还包括:
[0090]
获取每个已完成任务的实际用时;
[0091]
将每个已完成任务对应的节点及关联的边从任务图数据中删除,更新任务图数据;
[0092]
计算预设完成时间与所有已完成任务对应的实际用时的和的差值,以差值更新预设完成时间,并调整资源分配损失函数中对应的时间参考值。
[0093]
其中,已完成任务可以是指在目标任务流程开始执行后且执行完毕前的任一目标时刻获取的已经执行完成的任务,实际用时可以是指已完成任务从执行开始到执行完毕实际使用的时间段长度,节点关联的边可以是指节点作为顶点的边。
[0094]
具体地,若同一执行集合内的任务均为已完成任务,则将该执行集合内各已完成任务视作单个已完成任务,并确定实际用时为该执行集合内各任务的最长执行用时,若同一执行集合内的任务包括未完成任务,则该执行集合暂不确定实际用时。
[0095]
本实施例通过实时获取的已完成任务的实际用时,更新任务图数据和预设完成时间,便于在目标任务流程执行的过程中进行资源再次分配,能够在出现任务执行时长偏离预测的情况时,快速调整资源分配结果以在预设完成时间内完成目标任务流程,提高了任务流程执行的鲁棒性。
[0096]
上述将任务图数据输入预训练好的资源分配网络,进行再训练,根据任务图数据输入再训练后的资源分配网络得到的输出,确定各个节点对应的计算资源分配量步骤,能够获取合理的资源分配结果,有利于提高目标任务流程的执行效率。
[0097]
步骤s204,根据每个节点对应的计算资源分配量,计算对应节点的预测执行时长,根据预测执行时长和目标任务流程,确定每个任务的执行时间点。
[0098]
其中,预测执行时长可以是指节点按照所分配的计算资源配置量执行任务所需的预测时长,执行时间点可以是指对应任务开始执行的时间点。
[0099]
具体地,计算节点对应任务的任务执行时长和执行分配资源量的乘积,再计算上述乘积与计算资源配置量的比值,确定比值为预测执行时长。整个目标任务流程的起始时间默认是已知的,则根据前一任务的预测时长即可获取后一任务的执行时间点。
[0100]
上述根据每个节点对应的计算资源分配量,计算对应节点的预测执行时长,根据预测执行时长和目标任务流程,确定每个任务的执行时间点步骤,能够将任务对应的任务量量化表示,便于快速计算出每个任务的预测执行时长,从而得到每个任务的执行时间点,提高后续配置请求信息生成的计算效率。
[0101]
步骤s205,根据每个任务的执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到配置请求时间点时,由对应任务生成配置请求信息。
[0102]
其中,配置预留时间可以是指对应节点在发送请求信息后的等待时间,配置请求时间点可以是指节点开始请求配置信息的时间点,配置请求信息用于发送给用户,以获取配置数据。
[0103]
在本实施例中,配置预留时间采用对应节点的历史配置时间均值,根据任务的执行时间点,在执行时间点之前通过配置预留时间确定配置请求时间点,从而能够预先请求配置数据,在任务开始执行时无需进行冗余的等待。需要说明的是,对于标记信息为不需要配置数据的节点,无需确定配置请求时间点。
[0104]
在一实施方式中,配置预留时间还可以采用对应节点的历史配置时间最大值或通过人工设置。
[0105]
上述根据每个任务的执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到配置请求时间点时,由对应任务生成配置请求信息步骤,能够在尽可能少的占用存储资源的情况下,缩短配置信息等待时间,提高目标任务流程的执行效率。
[0106]
本实施例采用资源分配网络进行各任务的计算资源分配,避免资源分配不合理的情况,减少了冗余等待时长,能够有效提高任务流程执行的效率,在确定各任务的计算资源分配之后,根据预测的执行时长和任务流程确定合适的时间点生成配置请求信息,预先获取配置请求信息,在尽可能少的占用存储资源的情况下,缩短配置信息等待时间,从而提高任务流程执行的效率。
[0107]
参见图3,是本发明实施例二提供的一种任务请求信息的自动生成方法的流程示意图,该自动生成方法中进行分析的任务图数据可以是无权图,也可以是有权图。
[0108]
当任务图数据是无权图时,实施者可参照步骤s202的图数据构建方法构建任务图数据。
[0109]
当任务图数据是有权图时,任务包括任务输入组件和任务输出组件,关联程度为任务流程中在后任务的任务输入组件与相邻在前任务的任务输出组件相同的个数;
[0110]
在得到任务图数据之后,还包括:
[0111]
步骤s301,根据关联程度,根据预设的权重查找表确定对应关联程度的权重,将权重确定为任务图数据中的对应边的权重,得到带权任务图数据;
[0112]
步骤s302,对带权任务图数据进行二阶聚合,根据二阶聚合后每个节点的聚合值均值确定阈值;
[0113]
步骤s303,针对任一节点,将对应节点的聚合值与阈值进行比较,若对应节点的聚合值大于阈值,确定对应节点的类别为关键节点类别,若对应节点的聚合值小于或等于阈值,确定对应节点的类别为非关键节点类别;
[0114]
步骤s304,将每个节点的类别类别添加至任务图数据中对应节点的节点信息中。
[0115]
其中,任务输出组件可以是指任务执行过程中的执行输出,执行输出可以是指数据、判断结果或指令等,任务输入组件可以是指任务执行所需的执行输入,执行输入可以是指数据、判断结果或指令等。
[0116]
聚合可以是指加权求和,二阶聚合即为进行两次加权求和,邻居节点可以是指与目标节点通过单边连接的节点,聚合值为图数据经加权求和处理后节点对应的节点值。
[0117]
具体地,为每个节点的节点值进行初始赋值,所有节点均赋值为f,建议f为大于0
的整数,以方便计算,在本实施例中f取1,实施者可根据实际先验条件,为节点进行赋值。
[0118]
对于目标节点的任一邻居节点,获取该邻居节点与目标节点之间的边的权重,计算该邻居节点的节点值与权重的乘积,得到计算结果,将所有邻居节点的计算结果与目标节点的节点值相加,得到聚合值,将聚合值作为对应节点的节点值,再重新计算将所有邻居节点的计算结果与目标节点的节点值相加,得到二阶聚合值。
[0119]
本实施例通过图数据聚合的方式,提取关键节点类别和非关键节点类别,能够丰富任务图数据的特征,从而提高任务图数据分析的准确性。
[0120]
对应于上文实施例一的任务请求信息的自动生成方法,图4示出了本发明实施例三提供的任务请求信息的自动生成装置的结构框图,上述自动生成装置应用于服务端,服务端能够为目标任务流程提供相应的执行环境、执行的数据记录服务和统计服务,目标任务流程中每个任务均对应有标识信息、标记信息和历史执行记录,服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务端与用户对应的客户端进行通信,用于获取用户的配置数据。为了便于说明,仅示出了与本发明实施例相关的部分。
[0121]
参见图4,该自动生成装置包括:
[0122]
任务信息获取模块41,用于将目标任务流程中的任务作为节点,获取每个节点的标识信息、标记信息和历史执行记录,以及任两个相邻节点对应任务之间的关联程度,历史执行记录包括任务执行时长和执行分配资源量,标记信息用于表征节点对应任务是否需要配置数据;
[0123]
图数据构建模块42,用于将任务执行时长、执行分配资源量和标记信息作为对应节点的节点信息,并在关联程度满足预设条件的节点之间设置边,得到任务图数据;
[0124]
资源分配模块43,用于使用任务图数据对预训练好的资源分配网络进行再训练,得到再训练后的资源分配网络,将任务图数据输入再训练后的资源分配网络,输出每个节点对应的计算资源分配量;
[0125]
执行时间确定模块44,用于根据每个节点对应的计算资源分配量,计算对应节点的预测执行时长,根据预测执行时长和目标任务流程,确定每个任务的执行时间点;
[0126]
请求信息生成模块45,用于根据每个任务的执行时间点和预设的配置预留时间,确定每个任务的配置请求时间点,并在当前时间达到配置请求时间点时,由对应任务生成配置请求信息,配置请求信息用于发送给用户,以获取配置数据。
[0127]
可选的,任务包括任务输入组件和任务输出组件,关联程度为任务流程中在后任务的任务输入组件与相邻在前任务的任务输出组件相同的个数;
[0128]
上述自动生成装置还包括:
[0129]
权重获取模块,用于根据关联程度,根据预设的权重查找表确定对应关联程度的权重,将权重确定为任务图数据中的对应边的权重,得到带权任务图数据;
[0130]
图聚合模块,用于对带权任务图数据进行二阶聚合,根据二阶聚合后每个节点的聚合值均值确定阈值;
[0131]
类别确定模块,用于针对任一节点,将对应节点的聚合值与阈值进行比较,若对应节点的聚合值大于阈值,确定对应节点的类别为关键节点类别,若对应节点的聚合值小于或等于阈值,确定对应节点的类别为非关键节点类别;
[0132]
类别更新模块,用于将每个节点的类别添加至任务图数据中对应节点的节点信息
中。
[0133]
可选的是,资源分配网络包括编码器和解码器,资源分配网络的预训练样本为训练图数据,以重构损失作为预训练损失函数;
[0134]
上述自动生成装置还包括:
[0135]
样本特征提取模块,用于将预训练样本输入编码器,得到样本特征张量;
[0136]
样本特征重构模块,用于使用解码器对样本特征张量进行特征重构,得到样本重构结果;
[0137]
预训练模块,用于根据样本重构结果和预训练样本计算预训练损失函数,根据计算结果通过反向传播算法更新编码器和解码器的参数,直至预训练损失函数收敛,得到预训练好的资源分配网络。
[0138]
可选的是,预训练好的资源分配网络包括预训练好的编码器和预训练好的解码器,以资源分配损失函数作为再训练的损失函数;
[0139]
上述资源分配模块43包括:
[0140]
特征提取单元,用于将任务图数据输入预训练好的编码器,得到特征张量;
[0141]
特征重构单元,用于使用预训练好的解码器对特征张量进行特征重构,得到重构结果;
[0142]
再训练单元,用于根据重构结果计算再训练的损失函数的计算,根据计算结果通过反向传播算法更新预训练好的编码器和预训练好的解码器的参数,直至再训练的损失函数收敛;
[0143]
资源分配单元,用于将任务图数据输入参数更新后的资源分配网络,确定参数更新后的资源分配网络的输出结果为资源分配结果。
[0144]
可选的是,在上述资源分配模块43中:
[0145]
若将每个任务按照任务流程中的任务执行顺序划分为n个执行集合,n为大于0的整数,每个执行集合内的任务并行执行,则资源分配损失函数具体为:
[0146][0147]
其中,n为执行集合的序号,n∈[1,2,...,n],n为执行集合的个数,i为执行集合内任务的序号,i∈[1,2,...,in],in为第n个执行集合内任务的个数,c为资源参考值,为第n个执行集合的第i个任务的预测资源分配量,为第n个执行集合的第i个任务的执行分配资源量,为第n个执行集合的第i个任务的任务执行时长,t为时间参考值。
[0148]
可选的是,上述自动生成装置还包括:
[0149]
实时信息获取模块,用于获取目标任务流程对应的预设完成时间和实时总计算资源量;
[0150]
资源参数更新模块,用于以实时总计算资源量,更新资源分配损失函数中对应的资源参考值;
[0151]
时间参数更新模块,用于以预设完成时间,更新资源分配损失函数中对应的时间参考值。
[0152]
可选的是,上述自动生成装置还包括:
[0153]
实际用时获取模块,用于获取每个已完成任务的实际用时;
[0154]
图数据更新模块,用于将每个已完成任务对应的节点及关联的边从任务图数据中删除,更新任务图数据;
[0155]
参数调整模块,用于计算预设完成时间与所有已完成任务对应的实际用时的和的差值,以差值更新预设完成时间,并调整资源分配损失函数中对应的时间参考值。
[0156]
需要说明的是,上述模块和单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0157]
图5为本发明实施例四提供的一种计算机设备的结构示意图。如图5所示,该实施例的计算机设备包括:至少一个处理器(图5中仅示出一个)、存储器以及存储在存储器中并可在至少一个处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意各个自动更新方法实施例中的步骤。
[0158]
该计算机设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图5仅仅是计算机设备的举例,并不构成对计算机设备的限定,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括网络接口、显示屏和输入装置等。
[0159]
所称处理器可以是cpu,该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0160]
存储器包括可读存储介质、内存储器等,其中,内存储器可以是计算机设备的内存,内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。可读存储介质可以是计算机设备的硬盘,在另一些实施例中也可以是计算机设备的外部存储设备,例如,计算机设备上配备的插接式硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)等。进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,该其他程序如计算机程序的程序代码等。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
[0161]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计
算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0162]
本发明实现上述实施例方法中的全部或部分流程,也可以通过一种计算机程序产品来完成,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现可实现上述方法实施例中的步骤。
[0163]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0164]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0165]
在本发明所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0166]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0167]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1