一种模型组合方法及装置与流程

文档序号:16880660发布日期:2019-02-15 22:06阅读:193来源:国知局
一种模型组合方法及装置与流程

本申请涉及图像处理领域,具体而言,涉及一种模型组合方法及装置。



背景技术:

人工智能(ai)在越来越多细分领域里展现了它的能力,通过大量数据的学习,它能够很好的在所学习的领域内对未来的数据做出预测。与此同时,ai也有着很明确的能力范围。对于人类将要处理的复杂事情,可以将复杂事情具体化、确定化,然后利用ai在每个小的、确定的领域里较好地完成工作。

如果面对的是一个或少量几个固定的问题,那么可以逐个将这些问题需要用的ai模型都预先分别打包,成为解决不同固定问题的模型,然后分别部署应用。

但是如果面向的是来自不同领域的不同问题时,以及随时出现的新问题时,这样打包模型,就会是大量重复的、类似的工作。此外,预先打包模型,会导致模型固化,失去了模型的灵活性,无法根据各个模型实际需要的吞吐量分配资源,资源利用率相对较低。

申请内容

有鉴于此,本申请实施例提供了一种模型组合方法及装置。

第一方面,本申请实施例提供了一种模型组合方法,所述方法包括:根据现存问题的问题性质,将所述现存问题拆分为多个子问题;从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型;将多个所述ai模型进行组合,获得组合后的模型组。

在一个可能的设计中,所述根据现存问题的问题性质,将所述现存问题拆分为多个子问题,包括:从多个问题性质中选择一种问题性质;判断现存问题能否根据上述选择的问题性质进行拆分;若是,则根据所述问题性质从所述现存问题拆分出多个子问题;将拆分出多个子问题以后的现存问题作为新的现存问题,并跳转至步骤“从多个问题性质中选择一种问题性质”,直到多个问题性质中的所有问题性质均被判断过为止。

在一个可能的设计中,在所述从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型之后以及所述将多个所述ai模型进行组合,获得组合后的模型组之前,所述方法还包括:对多个所述ai模型的输入和输出进行标准化处理。

在一个可能的设计中,将多个所述ai模型进行组合,获得组合后的模型组,包括:将多个所述ai模型中的每个ai模型填充进树形结构中;将填充后的树形结构作为所述组合后的模型组。

在一个可能的设计中,在所述获得组合后的模型组之后,所述方法还包括:对所述树形结构的模型组进行遍历,从而执行所述模型组中的多个ai模型,获得执行结果;将所述执行结果返回给上一ai模型,从而在所述树形结构的根节点获得所述执行结果。

第二方面,本申请实施例提供了一种模型组合装置,所述装置包括:子问题拆分模块,用于根据现存问题的问题性质,将所述现存问题拆分为多个子问题;ai模型获得模块,用于从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型;模型组获得模块,用于将多个所述ai模型进行组合,获得组合后的模型组。

在一个可能的设计中,所述子问题拆分模块包括:问题性质选择子模块,用于从多个问题性质中选择一种问题性质;问题性质判断子模块,用于判断现存问题能否根据上述选择的问题性质进行拆分;问题性质拆分子模块,用于根据所述问题性质从所述现存问题拆分出多个子问题;步骤跳转子模块,用于将拆分出多个子问题以后的现存问题作为新的现存问题,并跳转至步骤“从多个问题性质中选择一种问题性质”,直到多个问题性质中的所有问题性质均被判断过为止。

在一个可能的设计中,所述装置还包括:标准化模块,用于对多个所述ai模型的输入和输出进行标准化处理。

在一个可能的设计中,所述模型组获得模块包括:模型填充子模块,用于将多个所述ai模型中的每个ai模型填充进树形结构中;模型形成子模块,用于将填充后的树形结构作为所述组合后的模型组。

在一个可能的设计中,所述装置还包括:结果执行模块,用于对所述树形结构的模型组进行遍历,从而执行所述模型组中的多个ai模型,获得执行结果;结果返回模块,用于将所述执行结果返回给上一ai模型,从而在所述树形结构的根节点获得所述执行结果。

在本申请实施例提供的模型组合方法及装置中,根据现存问题的问题性质,将所述现存问题拆分为多个子问题;从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型;将多个所述ai模型进行组合,获得组合后的模型组。根据问题性质来对现存问题进行拆分,然后从模型数据库中获得ai模型,然后对ai模型进行组合,获得组合后的模型组,由于本申请实施例提供的模型组合方法可以根据现存问题的具体类型生成能解决该问题的相应的模型组,与现有技术相比,使得解决问题的ai模型的灵活性更强,提高了资源利用率。

为使本申请实施例所要实现的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚的说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请第一实施例提供的模型组合方法的流程图;

图2是图1中步骤s110的具体步骤的流程图;

图3是本申请第一实施例提供的模型组合方法的部分步骤流程图;

图4是本申请第二实施例提供的模型组合装置的结构框图。

具体实施方式

第一实施例

请参见图1,图1示出了本申请第一实施例提供的模型组合方法的流程示意图,具体包括如下步骤:

步骤s110,根据现存问题的问题性质,将所述现存问题拆分为多个子问题。

问题性质指的是该现存问题所包含的可执行的动作,例如识别、查找、判断等。对于现存问题,可以先判断该现存问题是否包括识别性质,若是,则从现存问题中,将所有需要进行识别动作的子问题拆分出来。

将现存问题拆分为多个子问题的步骤具体包括如下步骤:

请参见图2,图2示出了步骤s110的具体步骤流程图,具体包括如下步骤:

步骤s111,从多个问题性质中选择一种问题性质。

问题性质包括识别问题性质、查找问题性质、判断问题性质等,具体地,识别问题性质可以为从图像中识别出某种特定的图像,例如从图像中识别出猫、从图像中识别出头部等;查找问题性质可以为从图像中获取某特定图像,并查找与该特定图像相似的图像,例如,从图像中识别出狗,并查找与狗相似的其他狗的图像;判断问题性质为对图像中的某特定图像进行判断,即可以判断图像显示的内容为白天或黑夜。

可以从多个问题性质中选择一种问题性质,具体可以随机选择出该问题性质,例如可以选识别问题性质。

步骤s112,判断现存问题能否根据上述选择的问题性质进行拆分,若是,执行步骤s113。

对现存问题进行判断,看其能否根据问题性质进行拆分。例如,现存问题为获取目标图像中猫的头部图像,并查找与该猫的头像相似的头像。可以判断根据识别问题性质是否能对现存问题进行拆分,若能,执行步骤s113。

步骤s113,根据所述问题性质从所述现存问题拆分出多个子问题。

具体地,根据识别问题性质对现存问题“获取目标图像中猫的头部图像,并查找与该猫的头像相似的头像”进行拆分,可以将其拆分为“识别目标图像中的猫”、“识别目标图像中的头部”两个子问题。

步骤s114,将拆分出多个子问题以后的现存问题作为新的现存问题,并跳转至步骤s110,直到多个问题性质中的所有问题性质均被判断过为止。

对现存问题根据识别问题性质进行拆分之后,现存问题“获取目标图像中猫的头部图像,并查找与该猫的头像相似的头像”还剩“查找与该猫的头像相似的头像”,根据判断问题性质来判断现存问题能否拆分可知,现存问题无法根据判断问题性质进行拆分。根据查找问题性质对该现存问题进行拆分,可以完成将现存问题拆分为多个子问题的动作。

问题性质除了上述性质外,还可以包括其他的问题属性,问题性质的具体性质类型不应该理解为是对本申请的限制。

步骤s120,从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型。

既然将现存问题拆分成了多个子问题,每个子问题必然有对应的可以解决该子问题的ai模型,可以从模型数据库中获得相应的ai模型。

在步骤s120与步骤s130之间,还包括对多个所述ai模型的输入和输出进行标准化处理。

获得多个ai模型之后,由于多个ai模型中的至少两个之间需要相互配合,故需要对ai模型的输入和输出进行标准化处理,以使得标准化处理之后的ai模型可以相互配合。

步骤s130,将多个所述ai模型进行组合,获得组合后的模型组。

该步骤具体可以包括:将多个所述ai模型中的每个ai模型填充进树形结构中;将填充后的树形结构作为所述组合后的模型组。

可以获取一树形结构,然后将多个ai模型中的每个ai模型填充到树形结构中,将完成填充动作的树形结构作为组合后的模型组。

请参见图3,本申请实施例提供的模型组合方法还包括如下步骤:

步骤s210,对所述树形结构的模型组进行遍历,从而执行所述模型组中的多个ai模型,获得执行结果。

控制器可以对填充完成的树形结构的模型组进行遍历,根据遍历的顺序依次执行模型组中的多个ai模型,从而获得该模型组的执行结果。

例如,对于上述举出的现存问题“获取目标图像中猫的头部图像,并查找与该猫的头像相似的头像”,可以先识别出目标图像中呈现的动物中的猫;然后对于猫,再识别出其头像;然后再查找与识别出的头像相似的头像。从而利用了两个识别相关的ai模型,一个查找相关的ai模型完成了上述的现存问题,获得了执行结果。

步骤s220,将所述执行结果返回给上一ai模型,从而在所述树形结构的根节点获得所述执行结果。

对于树形结构,当分支执行到叶子节点时,执行结果标准化过程,将下一层的结果标准化到上一层的输入对象,例如,将相似的头像返回到识别出的猫的头像,然后将相似的头像、猫的头像一同返回到识别出的猫;依次逆序,从最底层的叶子节点倒回到根节点,完成结果的标准化。

本申请实施例提供的模型组合方法可以做到灵活组合,支持多变的用户需求;对ai模型屏蔽了用户需求的复杂、多变性,每个模型都能专注于具体的问题;无需针对性开发即可组合出用户需要的特定能力,研发都可专注于基础模型能力的开发;各基础模型都可以独立部署,独立扩缩容,做到资源的最大化利用。

第二实施例

请参见图4,图4示出了本申请第二实施例提供的模型组合装置,该装置300包括:

子问题拆分模块310,用于根据现存问题的问题性质,将所述现存问题拆分为多个子问题。

所述子问题拆分模块310包括:问题性质选择子模块,用于从多个问题性质中选择一种问题性质;问题性质判断子模块,用于判断现存问题能否根据上述选择的问题性质进行拆分;问题性质拆分子模块,用于根据所述问题性质从所述现存问题拆分出多个子问题;步骤跳转子模块,用于将拆分出多个子问题以后的现存问题作为新的现存问题,并跳转至步骤“从多个问题性质中选择一种问题性质”,直到多个问题性质中的所有问题性质均被判断过为止。

ai模型获得模块320,用于从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型。

模型组获得模块330,用于将多个所述ai模型进行组合,获得组合后的模型组。

所述模型组获得模块330包括:模型填充子模块,用于将多个所述ai模型中的每个ai模型填充进树形结构中;模型形成子模块,用于将填充后的树形结构作为所述组合后的模型组。

所述装置还包括:标准化模块,用于对多个所述ai模型的输入和输出进行标准化处理。结果执行模块,用于对所述树形结构的模型组进行遍历,从而执行所述模型组中的多个ai模型,获得执行结果。结果返回模块,用于将所述执行结果返回给上一ai模型,从而在所述树形结构的根节点获得所述执行结果。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

在本申请实施例提供的模型组合方法及装置中,根据现存问题的问题性质,将所述现存问题拆分为多个子问题;从模型数据库中获得与所述多个子问题中的每个子问题分别对应的ai模型;将多个所述ai模型进行组合,获得组合后的模型组。根据问题性质来对现存问题进行拆分,然后从模型数据库中获得ai模型,然后对ai模型进行组合,获得组合后的模型组,由于本申请实施例提供的模型组合方法可以根据现存问题的具体类型生成能解决该问题的相应的模型组,与现有技术相比,使得解决问题的ai模型的灵活性更强,提高了资源利用率。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

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