掌桥专利:专业的专利平台
掌桥专利
首页

网络模型的动态优化方法、图像处理方法及设备

文献发布时间:2023-06-19 18:34:06


网络模型的动态优化方法、图像处理方法及设备

技术领域

本发明涉及网络模型的技术领域,尤其涉及一种网络模型的动态优化方法、图像处理方法及设备。

背景技术

随着科学技术的飞速发展,网络模型的应用越来越广泛。对于计算机视觉相关的网络模型而言,大规模的数据训练能够带来较好的模型效果,但是,针对大量数据的训练操作而言,需要的资源消耗巨大,例如,在对某一网络模型进行大规模的训练过程中,需要大概约10亿规模大数据进行200-300轮的迭代操作,这样大概需要花费15-30天的时间进行训练,并且,需要大量的计算资源。

发明内容

本发明实施例提供了一种网络模型的动态优化方法、图像处理方法及设备,能够实现对网络模型进行分阶段的优化操作,由于不同的优化阶段所对应的多个阶段优化参数不同,因此可以有效地降低网络模型优化操作所需要的计算资源,提高网络模型优化的质量和效率。

第一方面,本发明实施例提供一种网络模型的动态优化方法,包括:

获取与待优化的网络模型相对应的模型维度参数、用于对所述网络模型进行优化操作的迭代次数以及至少两个优化阶段,所述模型维度参数用于标识对所述网络模型进行优化的维度,其中,所述网络模型为机器学习模型;

基于所述迭代次数,确定所述至少两个优化阶段各自对应的阶段迭代次数;

基于所述模型维度参数,确定所述至少两个优化阶段各自对应的阶段优化参数,其中,所述至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于所述模型维度参数;

利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作,获得目标网络模型。

第二方面,本发明实施例提供一种网络模型的动态优化装置,包括:

第一获取模块,用于获取与待优化的网络模型相对应的模型维度参数、用于对所述网络模型进行优化操作的迭代次数以及至少两个优化阶段,所述模型维度参数用于标识对所述网络模型进行优化的维度,其中,所述网络模型为机器学习模型;

第一确定模块,用于基于所述迭代次数,确定所述至少两个优化阶段各自对应的阶段迭代次数;

所述第一确定模块,用于基于所述模型维度参数,确定所述至少两个优化阶段各自对应的阶段优化参数,其中,所述至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于所述模型维度参数;

第一处理模块,用于利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作,获得目标网络模型。

第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现上述第一方面中的网络模型的动态优化方法。

第四方面,本发明实施例提供了一种计算机存储介质,用于储存计算机程序,所述计算机程序使计算机执行时实现上述第一方面中的网络模型的动态优化方法。

第五方面,本发明实施例提供了一种计算机程序产品,包括:计算机程序,当所述计算机程序被电子设备的处理器执行时,使所述处理器执行上述第一方面所示的网络模型的动态优化方法中的步骤。

第六方面,本发明实施例提供了一种图像处理方法,应用于扩展现实设备,所述方法包括:

获取待处理图像;

确定用于对待处理图像进行处理的目标网络模型,所述目标网络模型是通过至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作所获得的,其中,所述至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于所述模型维度参数,所述目标网络模型为机器学习模型;

利用所述目标网络模型对所述待处理图像进行处理,获得目标图像;

将所述目标图像渲染到所述扩展现实设备的显示屏。

第七方面,本发明实施例提供了一种图像处理装置,应用于扩展现实设备,所述方法包括:

第二获取模块,用于获取待处理图像;

第二确定模块,用于确定用于对待处理图像进行处理的目标网络模型,所述目标网络模型是通过至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作所获得的,其中,所述至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于所述模型维度参数,所述目标网络模型为机器学习模型;

第二处理模块,用于利用所述目标网络模型对所述待处理图像进行处理,获得目标图像;

第二渲染模块,用于将所述目标图像渲染到所述扩展现实设备的显示屏。

第八方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现上述第六方面中的图像处理方法。

第九方面,本发明实施例提供了一种计算机存储介质,用于储存计算机程序,所述计算机程序使计算机执行时实现上述第六方面中的图像处理方法。

第十方面,本发明实施例提供了一种计算机程序产品,包括:计算机程序,当所述计算机程序被电子设备的处理器执行时,使所述处理器执行上述第六方面所示的图像处理方法中的步骤。

本实施例提供的技术方案,通过获取与待优化的网络模型相对应的模型维度参数、用于对所述网络模型进行优化操作的迭代次数以及至少两个优化阶段,基于所述迭代次数确定所述至少两个优化阶段各自对应的阶段迭代次数;并基于所述模型维度参数确定所述至少两个优化阶段各自对应的阶段优化参数,而后利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作,获得目标网络模型,由于至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于所述模型维度参数;因此可以实现在不同的优化阶段实现对不同维度的网络模型进行优化操作,这样不仅保证了对网络模型进行优化的质量和效果,还能够有效地降低了对网络模型进行优化所需要的计算资源,进一步提高了该方法的实用性,有利于市场的推广与应用。

附图说明

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

图1为本发明实施例提供的一种网络模型的动态优化方法的场景示意图;

图2为本发明实施例提供的一种网络模型的动态优化方法的流程示意图;

图3为本发明实施例提供的利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对所述网络模型进行阶段优化操作的流程示意图;

图4为本发明实施例提供的另一种网络模型的动态优化方法的流程示意图;

图5为本发明实施例提供的又一种网络模型的动态优化方法的流程示意图;

图6为本发明实施例提供的一种映射关系的示意图;

图7为本发明应用实施例提供的一种网络模型的动态优化方法的原理示意图;

图8为本发明应用实施例提供的一种网络模型的动态优化效果的示意图一;

图9为本发明应用实施例提供的一种网络模型的动态优化效果的示意图二;

图10为本发明实施例提供的一种图像处理方法的流程示意图;

图11为本发明实施例提供的一种网络模型的动态优化装置的结构示意图;

图12为与图11所示实施例提供的一种网络模型的动态优化装置对应的电子设备的结构示意图;

图13为本发明实施例提供的一种图像处理装置的结构示意图;

图14为与图13所示实施例提供的图像处理装置对应的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护但是不排除包含至少一种的情况。应当理解,本文中使用的术语“和/或的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

术语定义:

ViT:Vision Transformers,是一种视觉提取特征的网络结构。

注意力头(Attention Head):ViT结果中每层注意力机制的结构参数。

多层感知器(Multi-Layer Perceptron,简称MLP):一般由多个全链接层组成。

为了便于理解本实施例所提供的技术方案的具体实现方式和实现效果,下面对相关技术进行说明:

随着科学技术的飞速发展,网络模型的应用越来越广泛。对于计算机视觉相关的网络模型而言,大规模的数据训练能够带来较好的模型效果,但是,针对大量数据的训练操作而言,需要的资源消耗巨大,例如,在对某一网络模型进行大规模的训练过程中,需要大约10亿规模大数据进行200-300轮的迭代操作,这样大概需要花费15-30天的时间进行训练,在多次实验尝试中会浪费大量的计算资源。

为了解决上述技术问题,相关技术提供了一种通过对学习率进行调整来降低模型训练所需的计算资源的技术方案,具体的,在模型训练过程中,可以基于学习率learningrate策略对模型的学习率进行调整,缩短训练迭代轮数,从而达到降低训练消耗的目的。

但是,上述模型优化方式具有很多限制,具体的,对于不同的网络结构以及不同的数据集合而言,往往不具备通用的学习策略,这样容易导致在实施过程中难以得到大规模的应用。另外,由于缩短了模型优化的迭代轮数,从而使得网络模型的鲁棒性会降低。

在又一些实例中,相关技术还提供了一种通过搜索优化策略来缩短模型训练过程消耗的技术方案,具体的,对于不同的网络模型而言,可以基于优化策略搜索到与网络模型的结构相适配的目标优化方式,而后基于目标优化方式对网络模型进行优化处理。但是,由于策略搜索操作本身就需要一定的计算资源,而计算资源的大小取决于预先设定的搜索空间,一般情况下,为了保证策略搜索的准确率,预先设定的搜索空间往往会比较大,因此,搜索操作所需要的计算量和计算资源将会比较大。

为了解决上述技术问题,本实施例提供了一种网络模型的动态优化方法、图像处理方法及设备,其中,网络模型的动态优化方法的执行主体可以为网络模型的动态优化装置,具体实现时,该网络模型的动态优化装置可以实现为云端的服务器,此时,该网络模型的动态优化方法可以在云端来执行,在云端可以部署有若干计算节点(云服务器),每个计算节点中都具有计算、存储等处理资源。在云端,可以组织由多个计算节点来提供某种服务,当然,一个计算节点也可以提供一种或多种服务。云端提供该服务的方式可以是对外提供服务接口,用户调用该服务接口以使用相应的服务。服务接口包括软件开发工具包(Software Development Kit,简称SDK)、应用程序接口(Application ProgrammingInterface,简称API)等形式。

针对本发明实施例提供的方案,云端可以提供有网络模型的动态优化服务的服务接口,用户通过客户端/请求端调用该网络模型的动态优化接口,以向云端触发调用该网络模型的动态优化服务接口的请求。云端确定响应该请求的计算节点,利用该计算节点中的处理资源执行网络模型的动态优化的具体处理操作。

具体的,参考附图1所示,客户端/请求端可以是任何具有一定数据传输能力的计算设备,客户端/请求端可以是手机、个人电脑PC、平板电脑、设定应用程序等等。此外,客户端的基本结构可以包括:至少一个处理器。处理器的数量取决于客户端的配置和类型。客户端也可以包括存储器,该存储器可以为易失性的,例如RAM,也可以为非易失性的,例如只读存储器(Read-Only Memory,简称ROM)、闪存等,或者也可以同时包括两种类型。存储器内通常存储有操作系统(Operating System,简称OS)、一个或多个应用程序,也可以存储有程序数据等。除了处理单元和存储器之外,客户端还包括一些基本配置,例如网卡芯片、IO总线、显示组件以及一些外围设备等。可选地,一些外围设备可以包括,例如键盘、鼠标、输入笔、打印机等。其它外围设备在本领域中是众所周知的,在此不做赘述。

网络模型的动态优化装置是指可以在网络虚拟环境中提供网络模型的动态优化服务的设备,通常是指利用网络进行信息规划以及网络模型的动态优化操作的装置。在物理实现上,网络模型的动态优化装置可以是任何能够提供计算服务,响应于网络模型的动态优化请求,并可以基于网络模型的动态优化请求进行网络模型的动态优化服务的设备,例如:可以是集群服务器、常规服务器、云服务器、云主机、虚拟中心等。网络模型的动态优化装置的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。

在上述本实施例中,客户端/请求端可以与网络模型的动态优化装置进行网络连接,该网络连接可以是无线或有线网络连接。若客户端/请求端与网络模型的动态优化装置是通信连接,该移动网络的网络制式可以为2G(GSM)、2.5G(GPRS)、3G(WCDMA、TD-SCDMA、CDMA2000、UTMS)、4G(LTE)、4G+(LTE+)、WiMax、5G、6G等中的任意一种。

在本申请实施例中,客户端/请求端可以获取待优化的网络模型,网络模型可以包括以下任意之一:用于对图像进行分析处理(特征提取、分类处理等)的网络模型、用于对视频进行分析处理(视频分类、视频行为识别、视频特征提取等)的网络模型、用于对文本进行分析处理的网络模型等等。具体的,本实施例对于请求端获取待优化的网络模型的具体实现方式不做限定,在一些实例中,待优化的网络模型可以存储在请求端的预设区域中,通过访问预设区域即可获取到待优化的网络模型。或者,待优化的网络模型可以存储在第三设备中,第三设备与请求端通信连接,通过第三设备主动或者被动地获取到待优化的网络模型。在获取到待优化的网络模型之后,可以将待待优化的网络模型发送至网络模型的动态优化装置,以使网络模型的动态优化装置可以对网络模型进行优化处理操作,具体的,可以实现对网络模型进行分阶段的优化处理,从而可以降低网络模型优化操作所需要的计算资源和内存消耗。

网络模型的动态优化装置,用于获取待优化的网络模型,为了能够实现对不同的网络模型进行灵活的优化操作,并满足用户对不同网络模型所对应的不同优化需求,在获取到待优化的网络模型之后,可以获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,其中,模型维度参数可以包括以下至少之一:注意力头的数量、多层感知器的放大系数、视觉块的数量;上述的迭代次数为用于对网络模型进行训练的总次数,该迭代次数可以包括200次、300次、100次或者400次等等,至少两个优化阶段可以包括:两个优化阶段、三个优化阶段、四个优化阶段等等。

在获取到迭代次数之后,则可以对迭代次数进行分析处理,以确定至少两个优化阶段各自对应的阶段迭代次数,可以理解的,任意一个优化阶段次数小于迭代次数,且所有优化阶段各自对应的阶段迭代次数的总和等于迭代次数。相类似的,在获取到模型维度参数之后,可以对模型维度参数进行分析处理,以确定至少两个优化阶段各自对应的阶段优化参数,需要注意的是,任意一个阶段优化参数小于或等于模型维度参数。

在获取到至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数之后,可以利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,从而获得目标网络模型。由于模型维度参数用于标识对网络模型进行优化的维度,因此,不同阶段的阶段优化参数不同,且至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,这样可以对进行优化操作的网络模型的维度进行调整,以达到降低网络模型的优化训练操作所需要的计算资源,这样不仅保证了对网络模型进行优化的质量和效果,还有效地降低了对网络模型进行优化的计算资源,进一步提高了该方法的实用性,有利于市场的推广与应用。

下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合或者拆分。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。

图2为本发明实施例提供的一种网络模型的动态优化方法的流程示意图;参考附图2所示,本实施例提供了一种网络模型的动态优化方法,该方法的执行主体可以为网络模型的动态优化装置,该网络模型的动态优化装置可以实现为软件、或者软件和硬件的组合,具体的,在网络模型的动态优化装置实现为硬件时,其具体可以是具有数据处理操作的各种电子设备,包括但不限于平板电脑、个人电脑PC、服务器等等。当网络模型的动态优化装置实现为软件时,其可以安装在上述所例举的电子设备中。基于上述的网络模型的动态优化装置,本实施例中的网络模型的动态优化方法可以包括以下步骤:

步骤S201:获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,模型维度参数用于标识对网络模型进行优化的维度,其中,网络模型为机器学习模型。

步骤S202:基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数。

步骤S203:基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数。

步骤S204:利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,获得目标网络模型。

下面对上述各个步骤的具体实现过程和实现效果进行详细说明:

步骤S201:获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,模型维度参数用于标识对网络模型进行优化的维度,其中,网络模型为机器学习模型。

其中,待优化的网络模型可以是指需要进行优化处理操作的网络模型,上述的网络模型可以为机器学习模型或者神经网络模型,并且,该机器学习模型或者神经网络模型可以配置在任何具有数据处理能力的电子设备上,以实现网络模型的动态优化操作,可以理解的是,机器学习模型或者神经网络模型可以是本领域所知悉的技术术语。

另外,不同的应用场景可以对应有不同的网络模型,网络模型可以包括以下至少之一:用于实现视频行为识别的模型、用于实现特征提取操作的模型、用于识别分类操作的模型等等。为了能够实现模型优化操作,并满足不同的模型训练需求、获得不同的模型训练效果,则可以获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段。

对于模型维度参数而言,模型维度参数能够标识网络模型进行优化的维度,具体实现时,模型维度参数可以包括以下至少之一:注意力头的数量、多层感知器的放大系数、视觉块的数量,上述不同的模型维度参数可以用于标识网络模型进行优化的不同维度,可以理解的是,模型维度参数越大,用于对网络模型进行优化的维度越大。

对于迭代次数而言,其能够标识用于对网络模型进行优化操作的总迭代次数,具体实现时,迭代次数可以为100轮、200轮、300轮或者500轮等等。同时,为了能够保证网络模型优化操作的质量和效率,对网络模型进行优化训练的操作可以包括至少两个优化阶段,具体实现时,网络模型的优化操作可以包括两个阶段、三个阶段、四个阶段或者五个阶段等等。

另外,模型维度参数、迭代次数以及至少两个优化阶段可以通过以下方式来获取:实现方式一、通过用户的输入操作获取到上述的模型维度参数、迭代次数以及至少两个优化阶段,此时,获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段可以包括:响应于所获取到的待优化的网络模型,显示参数配置页面,获取用户在参数配置页面中输入的执行操作,基于执行操作获取到模型维度参数、迭代次数以及至少两个优化阶段。

实现方式二、模型维度参数、迭代次数以及至少两个优化阶段存储在第三设备中,此时,获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段可以包括:获取与网络模型的动态优化装置通信连接的第三设备,通过第三设备主动或者被动地获取到模型维度参数、迭代次数以及至少两个优化阶段。

实现方式三、对于模型维度参数而言,由于模型维度参数能够标识网络模型进行优化的维度,对于模型维度参数而言,可以通过对待优化的网络模型进行分析处理所获得,此时,获取与待优化的网络模型相对应的模型维度参数可以包括:获取网络模型的网络结构;基于网络结构,确定模型维度参数。

在获取到待优化的网络模型之后,可以对网络模型进行分析处理,以获取网络模型的网络结构,具体的,网络结构可以通过预设算法对网络模型进行分析处理所获得,或者,网络结构可以通过机器学习模型对网络模型进行分析处理所获得的,上述的机器学习模型被训练为用于对网络模型进行结构识别操作。

在获取到网络结构之后,可以对网络结构进行分析处理,以确定模型维度参数,在一些实例中,基于网络结构,确定模型维度参数可以包括:获取网络结构与模型维度参数之间的映射关系,基于映射关系和网络结构来确定网络模型相对应的模型维度参数。在另一些实例中,基于网络结构,确定模型维度参数可以包括:基于网络结构,确定网络模型的模型最大维度;将模型最大维度确定为模型维度参数。

具体的,由于模型维度参数用于标识网络模型进行优化的维度,并且,对网络模型进行优化训练操作的阶段优化参数均设置于模型维度参数的限定范围内,因此,为了能够保证网络模型优化操作的质量和效果,在获取到网络结构之后,可以对网络结构进行分析处理,以确定网络模型的模型最大维度,而后可以将模型最大维度确定为模型维度参数,从而有效地保证了对模型维度参数进行确定的准确可靠性。

步骤S202:基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数。

由于所获得的迭代次数为用于对网络模型进行优化操作的总迭代次数,而网络模型的优化操作包括至少两个优化阶段,为了能够准确地实现对网络模型进行分阶段的优化操作,在获取到迭代次数之后,可以对迭代次数进行分析处理,以确定至少两个优化阶段各自对应的阶段迭代次数,其中,所有优化阶段的阶段迭代次数的总和可以等于上述所获得的迭代次数,并且,各个优化阶段各自对应的阶段迭代次数均小于迭代。

在一些实例中,阶段迭代次数可以通过具体的阶段优化的数量对迭代次数进行划分所获得,此时,基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数可以包括:统计至少两个优化阶段所对应的阶段数量;基于阶段数量对迭代次数进行均分处理,获得与各个优化阶段相对应的阶段迭代次数,其中,任意两个优化阶段所对应的阶段迭代次数相同;或者,基于阶段数量对迭代次数进行随机划分处理,获得与各个优化阶段相对应的阶段迭代次数,其中,任意两个优化阶段所对应的阶段迭代次数相同或不同,从而稳定地获取到可以满足对网络模型进行优化操作的阶段迭代次数。

举例1,在阶段次数包括300轮、至少两个优化阶段的阶段数量为3,即至少两个优化阶段包括第一阶段、第二阶段和第三阶段时,而后则可以基于阶段数量对迭代次数进行均分处理,从而可以获得各个优化阶段相对应的迭代次数,具体的,第一阶段对应于第一阶段迭代次数(0-100轮),第二阶段对应于第二阶段迭代次数(101-200轮),第三阶段对应于第三阶段迭代次数(201-300轮),上述三个阶段所对应的阶段迭代次数相同,即在各个优化阶段均对网络模型进行了100轮的优化处理操作。

举例2,在阶段次数包括300轮、至少两个优化阶段的阶段数量为3,即至少两个优化阶段包括第一阶段、第二阶段和第三阶段时,而后则可以基于阶段数量对迭代次数进行随机处理,从而可以获得各个优化阶段相对应的迭代次数,具体的,第一阶段对应于第一阶段迭代次数(0-50轮),第二阶段对应于第二阶段迭代次数(50-150轮),第三阶段对应于第三阶段迭代次数(150-300轮),上述三个阶段所对应的阶段迭代次数各不相同,分别在不同的优化阶段对网络模型进行了不同轮数的优化处理操作。

步骤S203:基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数。

对于模型维度参数而言,由于模型维度参数可以标识对网络模型进行优化的维度,为了能够降低对网络模型进行优化操作所需要的计算资源,在对网络模型进行阶段优化处理时,则可以对模型维度参数进行分析处理,以确定至少两个优化阶段各自对应的阶段优化参数。在一些实例中,阶段优化参数可以通过模型维度参数所限定的范围内进行随机选择所确定,此时,基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数可以包括:获取模型维度参数所限定的参数范围;在参数范围内随机选择或者随机确定与至少两个优化阶段各自对应的阶段优化参数,所获得的阶段优化参数小于或等于模型维度参数,且至少两个优化阶段所对应的多个阶段优化参数呈增大趋势。

在另一些实例中,阶段优化参数通过多个备选优化参数所获得,其中,多个备选优化参数可以通过对模型维度参数进行分析处理所获得,具体的,基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数可以包括:将模型维度参数确定为最后一个优化阶段所对应的阶段优化参数;基于模型维度参数,确定多个备选优化参数,备选优化参数小于模型维度参数;在多个备选优化参数中,确定其他优化阶段各自对应的阶段优化参数。

需要注意的是,由于模型维度参数具有不同的参数实现形式,不同的参数对应有不同的限制要求,具体的,在备选优化参数包括注意力头的数量时,后一优化阶段所对应的注意力头的数量是前一优化阶段所对应的注意力头的数量的整数倍。例如,在第一优化阶段所确定的注意力头的数量为1时,则第二优化阶段所确定的注意力头的数量可以为2,第三优化阶段所确定的注意力头的数量可以为4、6或者8等等。在第一优化阶段所确定的注意力头的数量为2时,则第二优化阶段所确定的注意力头的数量可以为4,第三优化阶段所确定的注意力头的数量可以为8、12或者16等等。

相类似的,在备选优化参数包括多层感知器的放大系数时,各个优化阶段所对应的多层感知器的放大系数是2的幂次方。例如,在第一优化阶段所确定的放大系数为1时,那么,第二优化阶段所确定的放大系数可以为2,第三优化阶段所确定的放大系数可以为4。或者,在第一优化阶段所确定的放大系数为2时,那么,第二优化阶段所确定的放大系数可以为4,第三优化阶段所确定的放大系数可以为8等等。

在备选优化参数包括视觉块的数量时,各个优化阶段所对应的视觉块的数量是预设整数的平方数。例如,在第一优化阶段所确定的视觉块的数量为121时,那么,第二优化阶段所确定的视觉块的数量可以为144,第三优化阶段所确定的视觉块的数量可以为196。或者,在第一优化阶段所确定的放大系数为144时,那么,第二优化阶段所确定的放大系数可以为196,第三优化阶段所确定的放大系数可以为289等等。

另外,对于网络模型的优化操作而言,为了能够保证网络模型的优化处理质量和效果,在对网络模型进行最后一次优化阶段时,则可以对网络模型进行全维度的优化操作,因此,在获取到模型维度参数之后,则可以将模型维度参数确定为最后一个优化阶段所对应的阶段优化参数。而对于至少两个优化阶段以及至少两个优化阶段所对应的阶段优化参数而言,由于至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,因此,为了能够准确地获取到至少两个优化阶段所对应的多个阶段优化参数,则可以对模型维度参数进行分析处理,以确定多个备选优化参数,所获得的备选优化参数均小于模型维度参数,而后则可以在多个备选优化参数中确定其他优化阶段各自对应的优化参数,具体的,其他优化阶段各自对应的阶段优化参数可以在多个备选优化参数中随机确定,或者,其他优化阶段各自对应的阶段优化参数可以根据用户在多个备选优化参数中所输入的选择操作进行确定的,只要能够保证所获得的至少两个优化阶段所对应的多个阶段优化参数呈增大趋势即可。

举例来说,在模型维度参数包括注意力头的数量、多层感知器的放大系数、视觉块的数量时,以注意力头的数量为6、多层感知器的放大系数为4、视觉块的数量为196、至少两个阶段可以包括第一阶段、第二阶段和第三阶段为例,通过上述的模型维度参数,可以确定在对网络模型进行第三阶段的优化操作时,可以在预设迭代轮数中确定注意力头的数量(Multi-Head Attention的Head)=6,多层感知器MLP的放大系数为4,视觉块(VisualToken)的数量为196。

而后可以对模型维度参数进行分析处理,以确定多个备选优化参数,并在多个备选优化参数中,确定其他优化阶段各自对应的阶段优化参数,例如,在对网络模型进行第一阶段的优化操作时,可以在预设迭代轮数中确定Multi-Head Attention的Head=2,MLP的放大系数为1,Visual Token的数量为100;相类似的,在对网络模型进行第二阶段的优化操作时,可以在预设迭代论述中确定Multi-Head Attention的Head=4,MLP的放大系数为2,Visual Token的数量为144,从而有效地保证了对阶段优化参数进行确定的准确可靠性。

步骤S204:利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,获得目标网络模型。

在获取到至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数之后,可以基于阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,在一些实例中,在至少两个优化阶段可以包括第一阶段和位于第一阶段之后的第二阶段时,则可以基于第一阶段所对应的阶段优化参数和阶段迭代次数对网络模型进行第一阶段优化操作,从而可以获得优化中网络模型;而后可以基于第二阶段所对应的阶段优化参数和阶段迭代次数对优化中网络模型进行第二阶段优化操作,从而可以获得进行优化操作后的目标网络模型。

本实施例提供的网络模型的动态优化方法,通过获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数;并基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数,而后利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,获得目标网络模型,由于至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数;因此可以实现在不同的优化阶段实现对不同维度的网络模型进行优化操作,这样不仅保证了对网络模型进行优化的质量和效果,还有效地降低了对网络模型进行优化的计算资源,进一步提高了该方法的实用性,有利于市场的推广与应用。

图3为本发明实施例提供的利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作的流程示意图;在上述实施例的基础上,参考附图3所示,在对网络模型进行阶段优化处理的过程中,为了能够保证对网络模型进行优化处理的质量和效果,还可以包括控制网络模型进行生长的过程,以至少两个优化阶段包括第一优化阶段和位于第一优化阶段之后的第二优化阶段,阶段优化参数包括与第一优化阶段相对应的第一参数以及与第二优化阶段相对应的第二参数,阶段迭代次数包括与第一优化阶段相对应的第一迭代次数以及与第二优化阶段相对应的第二迭代次数为例,本实施例中的利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行优化操作,获得目标网络模型可以包括:

步骤S301:基于第一参数和第一迭代次数对网络模型进行第一阶段优化处理,获得第一阶段模型。

步骤S302:控制第一阶段模型进行生长,以将第一参数调整为第二参数。

由于第一优化阶段所对应的第一参数与第二优化阶段所对应的第二参数不同,而第一参数和第二参数能够限定用于对网络模型进行优化处理的维度,因此,在获取到第一阶段模型之后,为了能够准确地进行第二阶段优化处理操作,需要对网络模型的结构维度进行调整,则可以控制第一阶段模型进行生长,以将第一参数调整为第二参数,具体的,第二参数可以通过对第一参数进行直接跳变所获得,或者,第二参数可以通过对第一参数进行渐进式调整所获得。

需要注意的是,阶段优化参数包括多层感知器的放大系数;由于多层感知器的放大系数可以直接影响需要进行优化操作的网络模型的结构,一般情况下,网络模型的结构会随着放大系数的增大而增大,为了能够保证网络模型的优化质量和效果,本实施例还包括对增大后的网络模型进行网络系数配置的过程,具体的,在控制第一阶段模型进行生长之后,本实施例中的方法还可以包括:获取与第一阶段模型进行生长后的新增网络结构;确定第一阶段模型中与多层感知器相对应的原始网络系数;将原始网络系数确定为新增网络结构所对应的网络系数。

举例来说,在第一参数包括第一放大系数,第二参数包括第二放大系数时,则在获取到第一阶段模型之后,可以控制第一阶段模型进行生长,以将第一阶段模型所对应的放大系数由第一放大系数调整为第二放大系数,并对第一阶段模型的网络参数进行拓展,获取与第一阶段模型进行生长后的新增网络结构,为了能够实现对新增网络结构的网络系数进行配置操作,则可以确定第一阶段模型中与多层感知器相对应的原始网络系数,而后可以将原始网络系数确定为新增网络结构所对应的网络系数,这样有效地实现了对新增网络结构的网络系数进行配置操作。

步骤S303:基于第二参数和第二迭代次数对网络模型进行第二阶段优化处理,获得第二阶段模型。

步骤S304:基于第二阶段模型,确定优化后的目标网络模型。

在获取到第二阶段模型之后,则可以对第二阶段模型进行分析处理,以确定优化后的目标网络模型。其中,由于至少两个优化阶段中所包括的第二阶段可能是对网络模型进行优化操作后的中间阶段,也可能是对网络模型进行优化操作后的最终阶段,由于第二阶段可以是指对网络模型进行优化操作的不同阶段,对于第二阶段模型而言,可以采用不同的方式来确定优化后的目标网络模型。

具体的,基于第二阶段模型,确定优化后的目标网络模型可以包括:在第二优化阶段为最后一个优化阶段时,则将第二阶段模型确定为目标网络模型;在第二优化阶段并非最后一个优化阶段时,则继续对第二阶段模型进行优化,以获得目标网络模型。

本实施例中,基于第一参数和第一迭代次数对网络模型进行第一阶段优化处理,获得第一阶段模型,控制第一阶段模型进行生长,以将第一参数调整为第二参数,而后基于第二参数和第二迭代次数对网络模型进行第二阶段优化处理,获得第二阶段模型,并基于第二阶段模型确定优化后的目标网络模型,从而有效地实现了对网络模型进行阶段优化操作的质量和效果,进一步提高了该方法的实用性。

图4为本发明实施例提供的另一种网络模型的动态优化方法的流程示意图;在上述实施例的基础上,参考附图4所示,在获得目标网络模型之后,本实施例中的方法还可以包括对网络模型的模型优化效果进行评价的技术方案,具体的,该方法还包括:

步骤S401:获取目标网络模型的模型优化效果。

步骤S402:在模型优化效果不满足预设需求时,则生成用于对阶段优化参数进行增大的提示信息。

步骤S403:对提示信息进行显示。

在对网络模型进行优化处理,获得目标网络模型之后,用户可以需求对目标网络模型进行分析处理,以获取目标网络模型的模型优化效果,该模型优化效果用于体现目标网络模型的数据处理时效和数据处理的准确率。在一些实例中,模型优化效果可以通过目标网络模型对测试数据进行分析处理所获得,具体的,可以先获取测试数据以及测试数据相对应的标准数据结果,将测试数据输入至目标网络模型中进行处理,获得预测结果,统计模型进行数据处理操作所需要的时间信息,基于时间信息、预测结果和标准数据结果确定目标网络模型的模型优化效果;可以理解的是,若时间信息越短,则说明模型优化效果越好;若预测结果与标准数据结果越接近,则说明模型优化效果越好。

在获取到模型优化效果之后,可以将模型优化效果与预设需求进行分析比较,在模型优化效果满足预设需求时,则说明目标网络模型的数据处理效率、质量以及准确率满足用户要求,进而可以直接利用所获得的目标网络模型进行相对应的数据处理操作;在模型优化效果不满足预设需求时,在说明目标网络模型的数据处理效率、质量或者准确率不满足用户要求,此时,为了能够提高目标网络模型的质量和效果,则可以生成用于对阶段优化参数进行增大的提示信息,该提示信息可以包括以下至少之一:用于对注意力的数量进行增大的第一提示信息、用于对多层感知器的放大系数进行增大的第二提示信息、用于对视觉块的数量进行增大的第三提示信息等等。在获取到提示信息之后,可以对提示信息进行显示,以使得用户可以直观地获取到所显示的提示信息,并基于提示信息进行相对应的参数调整操作,以提高目标网络模型的优化质量和效果。

本实施例中,通过获取目标网络模型的模型优化效果,在模型优化效果不满足预设需求时,则生成用于对阶段优化参数进行增大的提示信息,并对提示信息进行显示,从而有效地实现了在不满足用户需求时,则可以使得用户基于提示信息对阶段优化参数进行增大,以基于增大后的阶段优化参数对目标网络模型进行优化操作,进一步保证了目标网络模型的优化质量和效果。

图5为本发明实施例提供的又一种网络模型的动态优化方法的流程示意图;在上述实施例的基础上,参考附图5所示,在获得目标网络模型之后,本实施例还可以包括对目标网络模型进行优化处理的参数和效果进行统计的方案,从而可以获得统计信息,以便将统计信息提供给用户作为进行参数的选择操作的参考信息,具体的,本实施例中的方法可以包括:

步骤S501:获取用于对目标网络模型进行优化操作所需要的时间信息、以及目标网络模型的模型准确率。

步骤S502:生成阶段优化参数集合、优化阶段的数量与时间信息和模型准确率之间的映射关系。

步骤S503:对映射关系进行显示。

在获取到目标网络模型之后,可以获取用于对目标网络模型进行优化操作所需要的时间信息以及目标网络模型的模型准确率,具体的,时间信息可以通过定时器进行统计所获得,目标网络模型的模型准确率可以通过预先训练好的机器学习模型或者网络模型对目标网络模型进行分析处理所获得,或者,目标网络模型可以对测试数据进行分析处理,以获得目标网络模型的模型准确率。

在获取到目标网络模型之后,基于阶段优化参数集合、优化阶段的数量与时间信息和模型准确率进行处理,则可以生成阶段优化参数集合、优化阶段的数量与时间信息和模型准确率之间的映射关系,需要注意的是,用户可以对目标网络模型进行多次优化操作,不同的优化操作可以对应有不同的阶段优化参数集合以及优化阶段的数量,上述的阶段优化参数集合可以包括与多个优化阶段以及与多个优化阶段各自对应的阶段优化参数。在对目标网络模型进行不同的优化操作之后,可以统计用于对目标网络模型进行优化操作所需要的时间信息、以及目标网络模型的模型准确率,而后可以生成阶段优化参数集合、优化阶段的数量与时间信息和模型准确率之间的映射关系,所获得的映射关系可以呈现为柱状图、线条图或者映射表等等,而后可以对映射关系进行显示,以使得用户可以通过所显示的映射关系进行直观地查看。

在又一些实例中,在对映射关系进行显示之后,本实施例中的方法还可以包括:获取用户对映射关系所输入的参数选择操作;基于参数选择操作,确定用于对网络模型进行优化处理的目标阶段优化参数集合以及优化阶段的数量。

其中,由于映射关系中可以包括多个映射关系点,如图6所示,映射关系中可以包括映射关系点A1和映射关系点A2,在对映射关系进行显示之后,用户可以对映射关系中的任意一个映射关系点进行参数选择操作,上述的选择操作可以为点选操作、滑动操作等等,在获取到参数选择操作之后,可以基于参数选择操作来确定用于对网络模型进行优化处理的目标阶段优化参数集合以及优化阶段的数量,例如,在选择映射关系点A1之后,则可以确定用于对网络模型进行优化处理的目标阶段优化参数集合以及优化阶段的数量,具体为第一阶段的阶段优化参数可以包括1(注意力头的数量)、2(多层感知器的放大系数)、100(视觉块的数量),第二阶段的阶段优化参数可以包括2、4、144。在选择映射关系点A2之后,则可以确定用于对网络模型进行优化处理的目标阶段优化参数结合以及优化阶段的数量,具体为第一阶段的阶段优化参数可以包括2、4、144,第二阶段的阶段优化参数可以包括4、8、169。

在获取到目标优化参数集合以及优化阶段的数量之后,则可以基于目标优化参数集合以及优化阶段的数量对网络模型进行优化操作,这样可以直接获取到满足用户需求的模型优化效果。

本实施例中,通过获取用于对目标网络模型进行优化操作所需要的时间信息、以及目标网络模型的模型准确率,生成阶段优化参数集合、优化阶段的数量与时间信息和模型准确率之间的映射关系,而后对映射关系进行显示,使得用户可以直接查看到所获得的映射关系,并基于映射关系选择用于对网络模型进行优化操作的目标优化参数集合以及优化阶段的数量,这样可以获得满足用户需求的网络模型的质量和效果,进一步提高了该方法的实用性。

具体应用时,对于网络训练框架而言,通过对ViT网络模型进行深度分析可知,在对Vit网络模型进行训练的过程中,Attention Head、MLP、Visual Token中都存在大量计算冗余,基于上述信息可知,通过对上述各个模型维度参数进行优化可以提升ViT在训练过程中的效率,进而针对静态网络训练的优化问题,本应用实施例提出了一种网络模型的动态优化方法,该方法能够在达到相同优化效果的前提下降低20%的模型计算消耗。

具体的,参考附图7所示,以网络模型的优化阶段包括三个阶段、迭代轮数为300轮、以模型维度参数包括注意力头的数量(Multi-Head Attention的Head)、多层感知器(MLP)的放大系数、视觉块(Visual Token)的数量,且注意力头的数量最大为6、多层感知器(MLP)的放大系数最大为4、视觉块的数量最大为196为例,本实施例中的网络模型的动态优化方法可以包括以下步骤:

步骤1:获取用户的参数配置操作,基于参数配置操作确定网络模型的优化阶段数量、各个优化阶段所对应的迭代轮数以及模型维度参数。

配置方式一:显示配置页面,通过配置页面可以网络模型的最大优化阶段数量、最大迭代轮数以及最大的模型维度参数进行配置操作;基于最大的优化阶段数量自动生成与各个阶段相对应的阶段迭代轮数以及阶段模型维度参数,其中,任意两个阶段所对应的阶段迭代轮数可以相同或者不同,任意两个阶段所对应的阶段模型维度参数可以相同或者不同。所有的阶段迭代轮数的和值等于最大迭代轮数,所有的阶段模型维度参数小于或等于最大的模型维度参数。

需要注意的是,对于任意的阶段模型维度参数而言,所有优化阶段所对应的阶段模型维度参数之间呈增大趋势,并且,阶段模型维度参数的数值越小,网络模型的优化维度越小,进而使得网络模型的优化操作所需要的计算量越小,且网络模型的优化效果越差,反之,阶段网络模型参数的数值越大,网络模型的优化维度越大,进而使得网络模型的优化操作所需要的计算量越大,且网络模型的优化效果越好,本领域技术人员可以基于上述规则灵活地对阶段模型维度参数进行配置。

另外,为了能够实现对网络模型进行稳定地优化操作,在对不同的模型维度参数进行配置操作时,还可以遵守一些配置规律,例如:在模型维度参数为注意力头的数量时,在对各个优化阶段的注意力头的数量进行配置时,需要保证后一优化阶段所对应的注意力头的数量是前一优化阶段所对应的注意力头的数量的整数倍。在模型维度参数为多层感知器的放大系数时,在对各个优化阶段的多层感知器的放大系数进行配置时,需要使得各个优化阶段所对应的多层感知器的放大系数是2的幂次方。在模型维度参数为视觉块的数量(用于限定所处理图像的大小)时,在对各个优化阶段的视觉块的数量进行配置时,需要使得各个优化阶段所对应的视觉块的数量是预设整数的平方数。

配置方式二:显示配置页面,通过配置页面对网络模型的最大优化阶段数量、以及与各个阶段相对应的阶段迭代轮数以及阶段模型维度参数进行配置,其中,任意两个阶段所对应的阶段迭代轮数可以相同或者不同,任意两个阶段所对应的阶段模型维度参数可以相同或者不同。所有的阶段迭代轮数的和值等于最大迭代轮数,所有的阶段模型维度参数小于或等于最大的模型维度参数。

步骤2:在第一优化阶段,基于第一优化阶段所对应的阶段迭代轮数以及阶段模型维度参数对网络模型进行优化操作,获得第一阶段模型。

举例来说,在第一优化阶段,可以需要对网络模型进行100轮的迭代操作,在0-100轮迭代优化的过程中,设定Multi-Head Attention的Head=2,MLP的放大系数为1,VisualToken的数量为100,而后则可以基于上述的模型维度参数控制网络模型进行优化处理,获得第一阶段模型。其中,在对网络模型进行优化处理的过程,可以计算所消耗的浮点运算次数GFLOPs,由于对网络模型进行优化处理的模型维度参数小于预设的最大值,因此,对网络模型进行优化处理的维度小于能够对网络模型进行优化处理的最大维度,进而相比于对网络模型进行全维度的优化操作而言,计算消耗GFLOPs降低了85%。

步骤3:控制第一阶段模型中的多层感知器MLP进行生长,将多层感知器的放大系数由第一优化阶段的放大系数变成第二优化阶段的放大系数,相对应的,对网络结构进行扩展,扩展后网络结构的网络参数直接复制0-100轮MLP对应的第一阶段模型的网络系数。

举例来说,在第一优化阶段的放大系数为1,第二优化阶段的放大系数为2时,则可以将MLP的放大系数由1调整为2,此时,网络模型的网络结构也会随之增加一倍,增加后的网络结构的网络系数可以直接复用历史的第一阶段模型的网络系数。

步骤4:在第二优化阶段,基于第二优化阶段所对应的阶段迭代轮数以及阶段模型维度参数对生长后的网络模型进行优化操作,获得第二阶段模型。

举例来说,在第二优化阶段,可以对网络模型进行100轮的迭代操作,在100-200轮迭代优化的过程中,设定Multi-Head Attention的Head=4,MLP的放大系数为2,VisualToken的数量为144,而后则可以基于上述的模型维度参数控制生长后的网络模型进行优化处理,获得第二阶段模型。其中,在对生长后的网络模型进行优化处理的过程,可以计算所消耗的浮点运算次数GFLOPs,由于对网络模型进行优化处理的模型维度参数小于预设的最大值,因此,对生长后的网络模型进行优化处理的维度小于能够对网络模型进行优化处理的最大维度,进而相比于对网络模型进行全维度的优化操作而言,计算消耗GFLOPs降低了69%。

步骤5:控制第二阶段模型中的多层感知器MLP进行生长,将多层感知器的放大系数由第二优化阶段的放大系数变成第三优化阶段的放大系数,相对应的,对网络结构进行扩展,扩展后网络结构的网络参数直接复制100-200轮MLP对应的第二阶段模型的网络系数。

举例来说,在第二优化阶段的放大系数为2,第三优化阶段的放大系数为4时,则可以将MLP的放大系数由2调整为4,此时,网络模型的网络结构也会随之增加一倍,增加后的网络结构的网络系数可以直接复用历史的第二阶段模型的网络系数。

步骤6:在第三优化阶段,基于第三优化阶段所对应的阶段迭代轮数以及阶段模型维度参数对生长后的网络模型进行优化操作,获得目标网络模型。

其中,由于第三优化阶段为用于对网络模型进行优化操作的最后一个阶段,因此,第三优化阶段所对应的阶段模型维度参数等于用于对网络模型进行优化处理的最大模型维度参数。

举例来说,在第三优化阶段,可以对网络模型进行100轮的迭代操作,在200-300轮迭代优化的过程中,设定Multi-Head Attention的Head=6,MLP的放大系数为4,VisualToken的数量为196,而后则可以基于上述的模型维度参数控制生长后的网络模型进行优化处理,获得目标网络模型。其中,在对生长后的网络模型进行优化处理的过程,可以计算所消耗的浮点运算次数GFLOPs,由于对网络模型进行优化处理的模型维度参数等于预设的最大值,因此,对生长后的网络模型进行优化处理的维度等于能够对网络模型进行优化处理的最大维度,进而相比于对网络模型进行全维度的优化操作而言,计算消耗GFLOPs降低了0%。

需要注意的是,网络模型的优化操作并不仅限于包括上述所例举的步骤,本领域技术人员还可以根据需求综合迭代进行上述步骤2至步骤6,在优化效果不下降的前提下,上述步骤综合计算消耗GFLOPs降低了约20%。

具体的,参考下表所示,本应用实施例采用了不同的网络模型和不同的数据样本进行了测评比较,测评比较结果详见下表所示,通过下表可知,本应用实施例所提供的动态优化方法,可以在模型的准确率指标(ACC)上带来明显提升,平均带来计算消耗GFLOPs降低20%的收益。

另外,参考附图8-图9所示,通过将本应用实施例中动态优化方法的模型效果与其他优化方法的模型效果相比,同时在训练时间消耗上,对于Deit-Base模型而言,能够减少37%,对于Deit-Small模型而言,能够减少6%;在总体综合分析上,不同平均GFLOPs对应的ACC也明显具备优势,本应用实施例所提供的动态优化方法的综合能力把其他的方法更强,计算量和准确率的维度是没有对比的。

本应用实施例提供的技术方案,实现了一种通用的模型优化训练方法,对比于现有的静态训练方法,能够提升20%的训练效率,在预设的网络训练平台进行推广可以带来400W/年的成本节约;具体的,该方法通过动态地改变模型优化操作时所对应的模型空间和模型维度,能够有效地减少模型优化操作是所需要的计算资源,并能够保证模型优化的质量和效果,其中,模型空间和模型维度可以通过以下三个维度的系数来体现并进行调整:Multi-Head Attention、MLP ratio、Visual Tokens,使得网络在训练过程中可以对网络模型的维度和空间进行动态生长,最终生长至与静态网络相同参数量的模型,综合整个网络模型的优化过程,可以降低约20%的训练消耗,且对模型网络结构友好,从而有效地提高了该方法的实用性,有利于市场的推广与应用。

图10为本发明实施例提供的一种图像处理方法的流程示意图;参考附图10所示,本实施例提供了一种图像处理方法,该方法的执行主体可以为图像处理装置,该图像处理装置可以实现为软件、或者软件和硬件的组合,具体的,在图像处理装置实现为硬件时,其具体可以是具有数据处理操作的各种电子设备,包括但不限于平板电脑、个人电脑PC、服务器等等。当图像处理装置实现为软件时,其可以安装在上述所例举的电子设备中。具体实现时,图像处理装置可以实现为扩展现实设备,即该图像处理方法可以应用于扩展现实设备,其中,扩展现实设备是指通过扩展现实(Extended Reality,简称XR)技术所实现的设备,其中,XR技术是指通过计算机技术和可穿戴设备产生的一个真实与虚拟组合的、可人机交互的环境。XR可以包括增强现实(Augmented Reality,简称AR)、虚拟现实(Virtual Reality,简称VR)、混合现实(Mixed Reality,简称MR)、影像现实(Cinematic Reality,简称CR)等多种形式,换句话说,XR其实是一个总称,具体包括AR、VR、MR、CR。简单来说,XR可分为多个层次,并能够通过有限传感器输入的虚拟世界到完全沉浸式的虚拟世界。基于上述的图像处理装置,本实施例中的图像处理方法可以包括以下步骤:

步骤S1001:获取待处理图像。

步骤S1002:确定用于对待处理图像进行处理的目标网络模型,目标网络模型是通过至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作所获得的,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数,所述目标网络模型为机器学习模型。

其中,不同的应用场景中所对应的目标网络模型可以对应有不同的功能和处理效果,例如:在图像增强的场景中,目标网络模型可以用于对待处理图像进行增强处理;在图形模糊的场景中,目标网络模型可以用于对待处理图像进行模糊处理;在图像分类的场景中,目标网络模型可以识别出图像的分类信息,并在图像中添加分类信息;在行为识别的场景中,目标网络模型可以用于识别图像中对象的行为信息等等。

步骤S1003:利用目标网络模型对待处理图像进行处理,获得目标图像。

步骤S1004:将目标图像渲染到扩展现实设备的显示屏。

在获取到目标图像之后,为了能够使得用户通过扩展现实设备直观地获知到该目标图像所对应的图像处理效果,可以将目标图像渲染到扩展现实设备的显示屏,进而可以在显示界面中显示目标图像。

本实施例中确定目标网络模型的具体实现过程、实现原理和实现效果与上述实施例中步骤S201-步骤S204的具体实现过程和实现效果相类似,具体可参考上述陈述内容,在此不再赘述。

图11为本发明实施例提供的一种网络模型的动态优化装置的结构示意图;参考附图11所示,本实施例提供了一种网络模型的动态优化装置,该网络模型的动态优化装置用于执行上述图2所示的网络模型的动态优化方法,具体的,该网络模型的动态优化装置可以包括:

第一获取模块11,用于获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,模型维度参数用于标识对网络模型进行优化的维度,其中,网络模型为机器学习模型;

第一确定模块12,用于基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数;

第一确定模块12,用于基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数;

第一处理模块13,用于利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,获得目标网络模型。

在一些实例中,在第一获取模块11获取与待优化的网络模型相对应的模型维度参数时,该第一获取模块11用于:获取网络模型的网络结构;基于网络结构,确定模型维度参数。

在一些实例中,在第一获取模块11基于网络结构,确定模型维度参数时,该第一获取模块11用于:基于网络结构,确定网络模型的模型最大维度;将模型最大维度确定为模型维度参数。

在一些实例中,模型维度参数包括以下至少之一:注意力头的数量、多层感知器的放大系数、视觉块的数量。

在一些实例中,在第一确定模块12基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数时,该第一确定模块12用于:统计至少两个优化阶段所对应的阶段数量;基于阶段数量对迭代次数进行平均处理,获得与各个优化阶段相对应的阶段迭代次数,其中,任意两个优化阶段所对应的阶段迭代次数相同;或者,基于阶段数量对迭代次数进行随机划分处理,获得与各个优化阶段相对应的阶段迭代次数,其中,任意两个优化阶段所对应的阶段迭代次数相同或不同。

在一些实例中,在第一确定模块12基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数时,该第一确定模块12用于:将模型维度参数确定为最后一个优化阶段所对应的阶段优化参数;基于模型维度参数,确定多个备选优化参数,备选优化参数小于模型维度参数;在多个备选优化参数中,确定其他优化阶段各自对应的阶段优化参数。

在一些实例中,在备选优化参数包括注意力头的数量时,后一优化阶段所对应的注意力头的数量是前一优化阶段所对应的注意力头的数量的整数倍。

在一些实例中,在备选优化参数包括多层感知器的放大系数时,各个优化阶段所对应的多层感知器的放大系数是2的幂次方。

在一些实例中,在备选优化参数包括视觉块的数量时,各个优化阶段所对应的视觉块的数量是预设整数的平方数。

在一些实例中,至少两个优化阶段包括第一优化阶段和位于第一优化阶段后的第二优化阶段,阶段优化参数包括与第一优化阶段相对应的第一参数以及与第二优化阶段相对应的第二参数,阶段迭代次数包括与第一优化阶段相对应的第一迭代次数以及与第二优化阶段相对应的第二迭代次数;

在第一处理模块13利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行优化操作,获得目标网络模型时,该第一处理模块13用于:基于第一参数和第一迭代次数对网络模型进行第一阶段优化处理,获得第一阶段模型;控制第一阶段模型进行生长,以将第一参数调整为第二参数;基于第二参数和第二迭代次数对网络模型进行第二阶段优化处理,获得第二阶段模型;基于第二阶段模型,确定优化后的目标网络模型。

在一些实例中,在第一处理模块13基于第二阶段模型,确定优化后的目标网络模型时,该第一处理模块13用于执行:在第二优化阶段为最后一个优化阶段时,则将第二阶段模型确定为目标网络模型;在第二优化阶段并非最后一个优化阶段时,则继续对第二阶段模型进行优化,以获得目标网络模型。

在一些实例中,阶段优化参数包括多层感知器的放大系数;在控制第一阶段模型进行生长之后,本实施例中的第一获取模块11和第一确定模块12还可以用于执行以下步骤:

第一获取模块11,用于获取与第一阶段模型进行生长后的新增网络结构;

第一确定模块12,用于确定第一阶段模型中与多层感知器相对应的原始网络系数;

第一确定模块12,还用于将原始网络系数确定为新增网络结构所对应的网络系数。

在一些实例中,在获得目标网络模型之后,本实施例中的第一获取模块11和第一处理模块13还用于执行以下步骤:

第一获取模块11,用于获取目标网络模型的模型优化效果;

第一处理模块13,用于在模型优化效果不满足预设需求时,则生成用于对阶段优化参数进行增大的提示信息;

第一处理模块13,还用于对提示信息进行显示。

在一些实例中,在获得目标网络模型之后,本实施例中的第一获取模块11和第一处理模块13还用于执行以下步骤:

第一获取模块11,用于获取用于对目标网络模型进行优化操作所需要的时间信息、以及目标网络模型的模型准确率;

第一处理模块13,用于生成阶段优化参数集合、优化阶段的数量与时间信息和模型准确率之间的映射关系;

第一处理模块13,还用于对映射关系进行显示。

在一些实例中,在对映射关系进行显示之后,本实施例中的第一获取模块11和第一处理模块13还用于执行以下步骤:

第一获取模块11,用于获取用户对映射关系所输入的参数选择操作;

第一处理模块13,用于基于参数选择操作,确定用于对网络模型进行优化处理的目标阶段优化参数集合以及优化阶段的数量。

图11所示装置可以执行图1-图9所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图9所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图9所示实施例中的描述,在此不再赘述。

在一个可能的设计中,图11所示网络模型的动态优化装置的结构可实现为一电子设备,该电子设备可以是平板电脑、个人电脑PC、服务器等各种设备。如图12所示,该电子设备可以包括:第一处理器21和第一存储器22。其中,第一存储器22用于存储相对应电子设备执行上述图1-图9所示实施例中网络模型的动态优化方法的程序,第一处理器21被配置为用于执行第一存储器22中存储的程序。

程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第一处理器21执行时能够实现如下步骤:获取与待优化的网络模型相对应的模型维度参数、用于对网络模型进行优化操作的迭代次数以及至少两个优化阶段,模型维度参数用于标识对网络模型进行优化的维度,其中,网络模型为机器学习模型;基于迭代次数,确定至少两个优化阶段各自对应的阶段迭代次数;基于模型维度参数,确定至少两个优化阶段各自对应的阶段优化参数,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数;利用至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作,获得目标网络模型。

进一步的,第一处理器21还用于执行前述图1-图9所示实施例中的全部或部分步骤。其中,电子设备的结构中还可以包括第一通信接口23,用于电子设备与其他设备或通信网络通信。

另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图1-图9所示实施例中网络模型的动态优化方法的程序。

此外,本发明实施例提供了一种计算机程序产品,包括:计算机程序,当计算机程序被电子设备的处理器执行时,使处理器执行上述图1-图9所示的网络模型的动态优化方法中的步骤。

图13为本发明实施例提供的一种图像处理装置的结构示意图;参考附图13所示,本实施例提供了一种图像处理装置,该图像处理装置能够执行上述图10所示的图像处理方法,该图像处理装置可以应用于扩展现实设备,具体的,图像处理装置包括:

第二获取模块31,用于获取待处理图像;

第二确定模块32,用于确定用于对待处理图像进行处理的目标网络模型,目标网络模型是通过至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作所获得的,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数,所述目标网络模型为机器学习模型;

第二处理模块33,用于利用目标网络模型对待处理图像进行处理,获得目标图像;

第二渲染模块34,用于将目标图像渲染到扩展现实设备的显示屏。

本实施例中的装置还可以执行上述图1-图9所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图9所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图9所示实施例中的描述,在此不再赘述。

在一个可能的设计中,图13所示图像处理装置的结构可实现为一电子设备,该电子设备可以是平板电脑、个人电脑PC、服务器等各种设备。如图14所示,该电子设备可以包括:第二处理器41和第二存储器42。其中,第二存储器42用于存储相对应电子设备执行上述图10所示实施例中图像处理方法的程序,第二处理器41被配置为用于执行第二存储器42中存储的程序。

程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第二处理器41执行时能够实现如下步骤:获取待处理图像;确定用于对待处理图像进行处理的目标网络模型,目标网络模型是通过至少两个优化阶段各自对应的阶段优化参数和阶段迭代次数对网络模型进行阶段优化操作所获得的,其中,至少两个优化阶段所对应的多个阶段优化参数呈增大趋势,且任意一个阶段优化参数小于或等于模型维度参数,所述目标网络模型为机器学习模型;利用目标网络模型对待处理图像进行处理,获得目标图像;将目标图像渲染到扩展现实设备的显示屏。

进一步的,第二处理器41还用于执行前述图10所示实施例中的全部或部分步骤。其中,电子设备的结构中还可以包括第二通信接口44,用于电子设备与其他设备或通信网络通信。

另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图10所示实施例中图像处理方法的程序。

此外,本发明实施例提供了一种计算机程序产品,包括:计算机程序,当计算机程序被电子设备的处理器执行时,使处理器执行上述图10所示的图像处理方法中的步骤。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 图像处理设备和图像处理方法
  • 基于图像识别的图像处理方法、装置、设备及存储介质
  • 图像处理方法、图像处理装置和电子设备
  • 图像处理方法、装置、图像识别设备及储存介质
  • 网络模型的优化方法、图像处理方法及电子设备
  • 动态图像处理方法、动态图像处理装置、终端应用及电子设备
技术分类

06120115614522