图像分类方法、装置、设备及存储介质与流程

文档序号:26052167发布日期:2021-07-27 15:28阅读:126来源:国知局
图像分类方法、装置、设备及存储介质与流程

本申请实施例涉及人工智能领域,特别涉及一种图像分类方法、装置、设备及存储介质。



背景技术:

图像分类是指根据图像的语义信息对不同类别图像进行区分的过程。

相关技术中,采用visiontransformer(vit)模型对输入图像进行分类,在对该模型训练过程中,输入大量经过标注的样本图像,进而基于模型预测的分类结果与标签间差异训练该模型,实现vit模型对图像的精确分类。

然而,在训练过程中,若经过标注的样本图像较少,则vit模型训练效果较差,影响图像分类准确性。



技术实现要素:

本申请实施例提供了一种图像分类方法、装置、设备及存储介质,可以减少图像分类模型训练过程中对经过标注的样本图像的需求,且有助于提高图像分类模型预测结果的准确性。所述技术方案包括如下内容。

一方面,本申请实施例提供了一种图像分类方法,所述方法包括如下内容:

对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合,所述初始图像特征集合中包含各个图像块对应的初始图像特征,所述第一样本图像是未经过标注的样本图像;

对所述初始图像特征集合中的所述初始图像特征进行重排组合,得到第一图像特征集合和第二图像特征集合,所述第一图像特征集合中的第一图像特征与所述第二图像特征集合中的第二图像特征对应不同重排组合方式;

基于所述第一图像特征集合和所述第二图像特征集合预训练图像分类模型,所述图像分类模型用于对图像中的内容进行分类;

基于第二样本图像对预训练后的所述图像分类模型进行微调,所述第二样本图像是经过标注的样本图像。

另一方面,本申请实施例提供了一种图像分类装置,所述装置包括如下模块:

图像分割模块,用于对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合,所述初始图像特征集合中包含各个图像块对应的初始图像特征,所述第一样本图像是未经过标注的样本图像;

第一重排组合模块,用于对所述初始图像特征集合中的所述初始图像特征进行重排组合,得到第一图像特征集合和第二图像特征集合,所述第一图像特征集合中的第一图像特征与所述第二图像特征集合中的第二图像特征对应不同重排组合方式;

第一预训练模块,用于基于所述第一图像特征集合和所述第二图像特征集合预训练图像分类模型,所述图像分类模型用于对图像中的内容进行分类;

微调模块,用于基于第二样本图像对预训练后的所述图像分类模型进行微调,所述第二样本图像是经过标注的样本图像。

另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的图像分类方法。

另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的图像分类方法。

另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的图像分类方法。

本申请实施例中,通过对样本图像进行图像分割以及特征提取,得到初始图像特征集合,再对初始图像特征集合中的初始图像特征进行不同方式的重排组合,得到第一图像特征集合与第二图像特征集合,进而可基于不同重排组合方式下的图像特征集合对图像分类模型进行预训练,无需借助已标注的样本图像进行预训练,减少对已标注样本图像的需求量,且在预训练后通过已标注的样本图像对预训练后的图像分类模型进行微调,确保最终得到的图像分类模型的分类性能,有助于提高图像分类的准确性。

附图说明

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

图1示出了本申请实施例提供的图像分类模型训练的原理示意图;

图2示出了本申请一个示例性实施例提供的实施环境的示意图;

图3示出了本申请一个示例性实施例提供的图像分类方法的流程图;

图4示出了本申请另一个示例性实施例提供的图像分类方法的流程图;

图5示出了本申请一个示例性实施例提供的vit模型的结构示意图;

图6是一个示例性实施例示出的重排组合过程的实施示意图;

图7示出了本申请一个示例性实施例提供的图像分类模型预训练的实施示意图;

图8示出了本申请另一个示例性实施例提供的图像分类方法的流程图;

图9示出了本申请另一个示例性实施例提供的图像分类模型预训练的实施示意图;

图10是本申请一个示例性实施例提供的图像分类装置的结构框图;

图11示出了本申请一个示例性实施例提供的计算机设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

计算机视觉技术(computervision,cv)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像分割、图像语义理解、图像检索、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。本申请实施例涉及的图像分类方法,即计算机视觉技术在图像识别领域的应用,可减少图像分类模型训练过程中对已标注的样本图像的需求,且有助于提升训练后图像分类模型预测结果的准确性。

如图1所示,其示出了本申请实施例中对图像分类模型训练的原理示意图。其中,包含有第一重排组合模块102与第二重排组合模块103,将第一样本图像101分别输入至第一重排组合模块102以及第二重排组合模块103中,得到第一图像特征集合104以及第二图像特征集合105,进而基于第一图像特征集合104以及第二图像特征集合105预训练图像分类模型106,预训练完成后,将第二样本图像107输入至预训练后的图像分类模型106,进行微调,得到最终图像分类模型进行图像分类。

图2示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境中包括计算机设备210和服务器220。其中,计算机设备210与服务器220之间通过通信网络进行数据通信,可选地,通信网络可以是有线网络也可以是无线网络,且该通信网络可以是局域网、城域网以及广域网中的至少一种。

计算机设备210是具有图像分类需求的电子设备,该电子设备可以是智能手机、平板电脑或个人计算机等等,本实施例并此不作限定。在一些实施例中,计算机设备210中运行有具有图像分类功能的应用程序。该应用程序可为社交类应用程序、图像检索类应用程序以及图片存储类应用程序。当需要对目标图像集合(如医学图像、动物图像、人物图像等)进行分类时,或识别单个目标图像的类别时,可将目标图像集合或目标图像输入应用程序,从而将目标图像集合或目标图像上传至服务器220,由服务器220进行图像类别的识别,并反馈分类结果。

服务器220可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(contentdeliverynetwork,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。

在一些实施例中,服务器220用于为计算机设备210中安装的应用程序提供图像分类服务。可选的,服务器220中设置有图像分类模型,该图像分类模型是通过未经标注的第一样本图像预训练且经已标注的第二样本图像微调后的图像分类模型,用于对计算机设备210发送的图像进行分类。

当然,在其他可能的实施方式中,图像分类模型也可以部署在计算机设备210侧,由计算机设备210在本地实现图像分类,无需借助服务器220,相应的,图像分类模型在计算机设备210侧完成训练,本实施例对此不作限定。为了方便表述,下述各个实施例以图像分类方法由计算机设备执行为例进行说明。

可选的,部署有神经网络模型(图像分类模型)的服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(peertopeer,p2p)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。其中,节点包括硬件层、中间层、操作系统层和应用层。在模型训练过程中,可以将图像分类模型的训练样本保存在区块链上。

请参考图3,其示出了本申请一个示例性实施例提供的图像分类方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。

步骤301,对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合,初始图像特征集合中包含各个图像块对应的初始图像特征,第一样本图像是未经过标注的样本图像。

本申请实施例中,图像分类模型可应用于任何识别图像内容所属类别的场景,因此,第一样本图像可为任意类别的图像,如带医学图像、动物图像、风景图像等。且第一样本图像是未经过标注的样本图像的图像集合。

在一种可能的实施方式中,在获取第一样本图像后,首先对该图像进行图像分割。可选的,可将第一样本图像分割为相同大小的图像块,且不同图像块中携带不同的图像信息。

分割完成后,对分割得到的各个图像块进行特征提取,可选的,对各个图像块进行线性映射,得到各个图像块对应的初始图像特征,组合初始图像特征集合。

步骤302,对初始图像特征集合中的初始图像特征进行重排组合,得到第一图像特征集合和第二图像特征集合,第一图像特征集合中的第一图像特征与第二图像特征集合中的第二图像特征对应不同重排组合方式。

在一种可能的实施方式中,得到初始图像特征集合后,对初始图像特征集合中的各个初始图像特征进行不同重排组合,得到第一图像特征集合以及第二图像特征集合。

可选的,第一图像特征集合中所包含的各个第一图像特征与第二图像特征集合中所包含的各个第二图像特征中各个图像特征指示的图像信息不同,即通过不同重排组合方式,得到关于第一样本图像中图像特征的不同组合方式。

且重排组合后,得到的第一图像特征的数目与初始图像特征集合中的初始图像特征的数目相同,相应的,第二图像特征的数目与初始图像特征的数目相同。

步骤303,基于第一图像特征集合和第二图像特征集合预训练图像分类模型,图像分类模型用于对图像中的内容进行分类。

预训练是指一种通过使用大型数据集对图像分类模型进行训练,使图像分类模型学习到数据集中的通用特征的过程。预训练的目的是为后续图像分类模型在特定数据集上训练提供优质的模型参数。

由于第一图像特征集合中的第一图像特征与第二图像特征集合中的第二图像特征是不同位置的图像特征,因此,将各个第一图像特征以及各个第二图像特征分别输入图像分类模型后,根据得到分类结果可实现对图像分类模型的自监督训练,进而无需使用经过标注的样本图像,即带标签的样本图像。

图像分类模型用于对图像中内容进行分类,可选的,图像分类模型可识别单个图像的类别,也可对图像集合中各个图像进行类别区别,完成图像集合的分类。

步骤304,基于第二样本图像对预训练后的图像分类模型进行微调,第二样本图像是经过标注的样本图像。

微调是通过少量数据集对模型进行调整的过程,且微调阶段采用监督式的学习方式,因此,采用经过标注的第二样本图像对预训练后的图像分类模型进行微调。

且由于用于微调的数据集的数据量小于用于预训练的数据集的数据量,因此,第二样本图像的数量少于第一样本图像的数量,可减少对经过标注的样本图像的需求。

综上所述,本申请实施例中,通过对样本图像进行图像分割以及特征提取,得到初始图像特征集合,再对初始图像特征集合中的初始图像特征进行不同方式的重排组合,得到第一图像特征集合与第二图像特征集合,进而可基于不同重排组合方式下的图像特征集合对图像分类模型进行预训练,无需借助已标注的样本图像进行预训练,减少对已标注样本图像的需求量,且在预训练后通过已标注的样本图像对预训练后的图像分类模型进行微调,确保最终得到的图像分类模型的分类性能,即有助于提高图像分类的准确性。

为实现无监督的预训练过程,本申请实施例中,采用在线学习分支以及目标学习分支分别对不同重排组合得到的图像特征集合进行图像分类,进而基于两个分支的分类结果实现对图像分类模型的预训练过程,下面,将以示例性实施例进行说明。

请参考图4,其示出了本申请另一个示例性实施例提供的图像分类方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。

步骤401,对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合,初始图像特征集合中包含各个图像块对应的初始图像特征,第一样本图像是未经过标注的样本图像。

可选的,本申请实施例中的图像分类模型可为vit模型,vit模型是一种将cv与自然语言处理(naturallanguageprocessing,nlp)领域结合起来得到的图像分类模型。

采用vit模型对第一样本图像进行分类时,首先将第一样本图像分割为固定大小的图像块,再通过线性变换将各个图像块变换为初始图像特征,即将每个图像块编码为一个token,且token带有顺序信息。

如图5所示,首先将第一样本图像分割为图像块501,再对各个图像块进行线性变换得到各个图像块对应的token502,得到初始图像特征集合。

步骤402,调整初始图像特征集合中初始图像特征的特征顺序,得到第一初始图像特征集合和第二初始图像特征集合,第一初始图像特征集合和第二初始图像特征集合中初始图像特征的顺序不同。

在对初始图像特征进行重排组合时,首先调整初始图像特征的顺序,即打乱各个初始图像特征的位置信息。可选的,随机打乱时可调整每个初始图像特征的顺序,将其调整至与初始顺序不同,也可选取部分初始图像特征,仅调整部分初始图像特征的特征顺序。

在一种可能的实施方式中,由于第一图像特征集合与第二图像特征集合是通过对初始图像特征进行不同重排组合方式得到的图像特征集合,因此,在对初始图像特征进行随机打乱时,采用不同打乱方式,得到第一初始图像特征集合与第二初始图像特征集合,使其中的初始图像特征的顺序不同。

示意性的,如图6所示,初始图像特征集合t∈{t1,…,t9}中包含9个初始图像特征,即9个token,其带有对应的顺序信息,首先将各个token进行随机打乱,得到第一初始图像特征集合tp1={t3,t5,t8,t1,t6,t2,t9,t4,t7}。

且对各个token采用另一种随机打乱方式,得到第二初始图像特征集合,如tp2={t2,t7,t3,t1,t4,t9,t8,t5,t6}。

步骤403,基于第一初始图像特征集合重排得到第一特征矩阵,并基于第二初始图像特征集合重排得到第二特征矩阵。

在对初始图像特征进行打乱后,可基于打乱后的初始图像特征集合进行重排。在一种可能的实施方式中,可首先构建关于打乱后初始图像特征集合的特征矩阵,包括构建第一初始图像特征集合的第一特征矩阵以及第二初始图像特征集合的第二特征矩阵。其中,构建第一特征矩阵与第二特征矩阵可包括如下步骤。

步骤403a、基于第一样本图像的图像分割方式,确定矩阵尺寸。

可选的,构建矩阵时,可根据第一样本图像的图像分割方式确定构建矩阵的尺寸大小,避免构建矩阵的尺寸与分割得到的图像块数量不匹配。如若对第一样本图像分割得到9个图像块,则可构建3×3矩阵;若对第一样本图像分割得到16个图像块,则可构建4×4矩阵或2×8矩阵。

示意性的,如图5所示,对第一样本图像分割后,得到9个图像块,因此,在进行矩阵构建时,可确定矩阵尺寸为3×3大小,与分割得到的图像块数量相匹配。

步骤403b、基于矩阵尺寸,对第一初始图像特征集合中的初始图像特征进行重排,得到第一特征矩阵。

确定矩阵尺寸后,根据矩阵尺寸大小构建第一特征矩阵,即将第一初始图像特征集合中的初始图像特征进行重排。

可选的,可根据第一初始图像特征中初始图像特征的顺序依次选择,按行排列,或按列排列,完成第一特征矩阵的构建。

结合上述示例,矩阵尺寸为3×3大小,则将第一初始图像特征集合tp1={t3,t5,t8,t1,t6,t2,t9,t4,t7},依次选择按行排列,构建为3×3矩阵,即从t3开始依次选择3个token作为矩阵第一行,顺序选择完成矩阵构建,如图6所示,第一特征矩阵为:

步骤403c、基于矩阵尺寸,对第二初始图像特征集合中的初始图像特征进行重排,得到第二特征矩阵。

相应的,同样根据矩阵尺寸构建第二特征矩阵,即将第二初始图像特征集合中的初始图像特征进行重排。可选的,构建第二特征矩阵的方式可与第一特征矩阵方式相同,也可不同,本实施例对此不做限定。如第一特征矩阵采用按行排列方式,第二特征矩阵采用按列排列方式;或,第一特征矩阵采用按列排列方式,第二特征矩阵采用按行排列方式;或,第一特征矩阵与第二特征矩阵均采用按行排列方式等。

结合上述示例,将第二初始图像特征集合tp2={t2,t7,t3,t1,t4,t9,t8,t5,t6}按列构建3×3矩阵,得到第二特征矩阵如下:

需要说明的是,本步骤与上述步骤403b,即构建第一特征矩阵的步骤可同步执行也可异步执行,本实施例仅对第一特征矩阵以及第二特征矩阵的构建方式进行说明,但对执行时序不做限定。

步骤404,对第一特征矩阵中的初始图像特征进行特征组合,并基于特征组合结果生成第一图像特征集合。

重排结束后,即对第一特征矩阵中的初始图像特征进行特征组合,并根据组合结果生成第一图像特征集合,其中,第一图像特征集合中各个第一图像特征所对应的图像块中图像信息发生改变,即与各个初始图像特征对应图像块中的图像信息不同。

在一种可能的实施方式中,特征组合并基于组合结果生成第一图像特征集合可包括如下步骤。

步骤404a、通过滑窗选取第一特征矩阵中相邻的n个初始图像特征。

可选的,通过滑窗采样的方式,选取n个初始图像特征进行特征组合,其中,滑窗大小需小于矩阵尺寸。如,对于3×3矩阵可采用2×2滑窗,对于4×4矩阵可采用2×2滑窗或3×3滑窗。

示意性的,可采用2×2的滑窗对3×3的第一特征矩阵进行采样,如图6所示,通过滑窗601可选取4个初始图像特征。

步骤404b、对n个初始图像特征进行特征组合,得到第一组合图像特征。

可选的,对滑窗内的n个初始图像特征进行特征组合,得到组合后的第一组合图像特征。

在一种可能的实施方式中,特征组合方式可包括特征拼接、特征融合等,即对n个初始图像特征进行特征拼接,得到第一组合图像特征,或,对n个初始图像特征进行特征融合即特征相加,得到第一组合图像特征。

示意性的,如图6所示,对4个初始图像特征t3,t5,t1,t6进行特征拼接,得到第一组合图像特征602。

步骤404c、对m组第一组合图像特征进行线性映射,得到第一图像特征集合,m组第一组合图像特征通过移动滑窗得到。

可选的,通过滑动滑窗遍历第一特征矩阵,即可得到m组第一组合图像特征。其中,滑窗的滑动步长以及滑动方向可随机设置。如,可设置滑动步长为1,并根据行的方向滑动。

得到m组第一组合图像特征后,即对m组第一组合图像特征进行线性映射,得到第一图像特征集合。可选的,可将m组第一组合图像特征输出至一个多层感知机(multilayerperceptron,mlp)中,进行线性映射,得到第一图像特征集合,映射得到的第一图像特征集合中第一图像特征数目与初始图像特征数目相同。

如图6所示,设置滑动步长为1,并首先向行方向滑动,即可得到4组初始图像特征的组合,每组中包含4个初始图像特征,并分别对每组中包含的4个初始图像特征进行特征组合,得到4组第一组合图像特征即tl={t1',t2',t3',t4'},其中t1'即为t3,t5,t1,t6拼接得到的第一组合图像特征,t2'即为t5,t8,t6,t2拼接得到的第一组合图像特征,t3'即为t1,t6,t9,t4拼接得到的第一组合图像特征,t4'即为t6,t2,t4,t7拼接得到的第一组合图像特征。将tl={t1',t2',t3',t4'}进行线性映射,得到第一图像特征集合

步骤405,对第二特征矩阵中的初始图像特征进行特征组合,并基于特征组合结果生成第二图像特征集合。

相应的,重排结束后,对第二特征矩阵中的初始图像特征进行特征组合,并根据组合结果生成第二图像特征集合,其中,第二图像特征集合中各个第二图像特征所对应的图像块中图像信息发生改变,即与各个初始图像特征对应图像块中的图像信息不同。且与第一图像特征所对应的图像块的图像信息不同。

在一种可能的实施方式中,特征组合并基于组合结果生成第二图像特征集合可包括如下步骤。

步骤405a、通过滑窗选取第二特征矩阵中相邻的n个初始图像特征。

可选的,构建第二特征矩阵时,同样通过滑窗采样的方式,选取n个初始图像特征进行特征组合,其中,滑窗大小需小于矩阵尺寸。

且对第二特征矩阵采样的滑窗大小可与对第一特征矩阵采样的滑窗大小相同,也可不同。

步骤405b、对n个初始图像特征进行特征组合,得到第二组合图像特征。

可选的,对滑窗内的n个初始图像特征进行特征组合,得到组合后的第二组合图像特征。

在一种可能的实施方式中,特征组合方式可包括特征拼接、特征融合等,即对n个初始图像特征进行特征拼接,得到第二组合图像特征,或,对n个初始图像特征进行特征融合即特征相加,得到第二组合图像特征。

步骤405c、对m组第二组合图像特征进行线性映射,得到第二图像特征集合,m组第二组合图像特征通过移动滑窗得到。

同样的,通过滑动滑窗遍历第二特征矩阵,即可得到m组第二组合图像特征。其中,滑窗的滑动步长以及滑动方向可随机设置。如,可设置滑动步长为1,并根据列的方向滑动。

得到m组第二组合图像特征后,即对m组第二组合图像特征进行线性映射,得到第二图像特征集合。可选的,可将m组第二组合图像特征输出至一个mlp中,进行线性映射,得到第二图像特征集合。映射得到的第二图像特征集合中第二图像特征数目与初始图像特征数目相同。

步骤406,将第一图像特征集合输入图像分类模型的在线学习分支,得到第一分类结果。

可选的,得到第一图像特征集合以及第二图像特征集合后,即可利用第一图像特征集合以及第二图像特征集合对图像分类模型进行预训练。

可选的,图像分类模型包括在线学习分支以及目标学习分支,其中,在线学习分支与目标学习分支中的图像分类模型的结构相同,其均为vit模型对应的结构,但其对应的模型参数的更新方式不同。

在一种可能的实施方式中,将第一图像特征集合输入至图像分类模型的在线学习分支中,在线学习分支用于根据第一图像特征集合所指示的图像特征识别第一样本图像的图像类别,即得到第一分类结果。其vit模型如图5所示,将第一图像特征集合输入至transformer编码器中,对第一图像特征集合进行图像特征提取,并将提取结果输入至分类器mlphead中进行图像分类,得到第一分类结果。

示意性的,如图7所示,将第一样本图像701输入第一重排组合模块702中,得到第一图像特征集合,并将第一图像特征集合输入vit模型,得到第一分类结果z,该分支即为在线学习分支。

步骤407,将第二图像特征集合输入图像分类模型的目标学习分支,得到第二分类结果。

可选的,将第二图像特征集合输入至目标学习分支中,目标学习分支用于根据第二图像特征集合所指示的图像特征识别第二样本图像的图像类别,即得到第二分类结果。与得到第一分类结果的方式相同,将第二图像特征集合输入至编码器中,对第二图像特征集合进行图像特征的提取,将提取结果同样输入至分类器mlphead中进行图像分类,得到第二分类结果。

示意性的,如图7所示,将第一样本图像701输入至第二重排组合模块703中,得到第二图像特征集合,并将第二图像特征集合输入vit模型,得到第二分类结果z',该分支即为目标学习分支。其中,重排组合模块703与重排组合模块702分别对应不同重排组合方式。

步骤408,基于第一分类结果与第二分类结果训练在线学习分支。

由于第一图像特征集合中的第一图像特征与第二图像特征集合中的第二图像特征各不相同,因此,为使图像分类模型可对相同第一样本图像特征在不同组合方式下进行准确的图像分类,本实施例中,基于第一分类结果与第二分类结果首先训练在线学习分支。该方式可包括如下步骤。

步骤408a、确定第一分类结果与第二分类结果的相似度损失。

为使图像分类模型能对不同组合排列方式下的图像特征识别一致,将确定第一分类结果与第二分类结果间的相似度损失,进而基于该相似度损失训练vit模型,使其能根据不同组合排列方式下的图像特征得到相同分类结果,进而提高vit模型进行图像分类的准确性。即无需使用已标注的样本图像也可实现对vit模型的模型参数的更新,实现vit模型无监督学习。

可选的,相似度损失即表示第一分类结果与第二分类结果间的一致程度,可采用l1损失函数,也可采用l2损失函数等,确定第一分类结果与第二分类结果间的相似度损失。如,相似度损失可为:

其中,l表示相似度损失,z表示第一分类结果,z'表示第二分类结果。

步骤408b、基于相似度损失,通过反向传播更新在线学习分支的模型参数。

本实施例中,在线学习分支中模型参数的更新方式与目标学习分支中模型参数的更新方式不同,其中,在线学习分支采用反向传播方式更新,而目标学习分支中模型参数根据在线学习分支中模型参数更新,进而通过迭代训练,优化在线学习分支以及目标学习分支中的图像分类模型的模型参数,即优化vit模型的模型参数。

在一种可能的实施方式中,确定相似度损失后,可基于相似度损失反向传播更新在线学习分支的模型参数,直至模型参数满足训练条件为止,即相似度损失达到收敛条件为止。

步骤409,基于训练后在线学习分支的模型参数,更新目标学习分支的模型参数。

可选的,每次更新在线学习分支的模型参数后,将随之更新目标学习分支的模型参数。最终,当在线学习分支中的模型参数满足训练条件后,将再次更新目标学习分支的模型参数,此时,在线学习分支以及目标学习分支均停止模型参数的更新。

可选的,可基于训练后在线学习分支的模型参数,对目标学习分支的模型参数进行指数滑动平均(exponentialmovingaverage,ema)更新,更新方式如下所示:

其中,ξ为目标学习分支中图像分类模型的模型参数,θ为在线学习分支中图像分类模型的模型参数,τ为平衡两个模型参数的权重参数。

步骤410,基于第二样本图像对图像分类模型中目标学习分支的模型参数进行微调。

为进一步提高图像分类模型识别图像类别的准确性,在基于未标注的样本图像对图像分类模型预训练后,将采用少量经过标注的第二样本图像对图像分类模型的模型参数进行微调。

可选的,可对目标学习分支的模型参数进行微调,微调过程可包括如下步骤。

步骤410a、将第二样本图像输入图像分类模型的目标学习分支,得到样本分类结果。

将各个已经标注的第二样本图像输入目标学习分支的vit模型中,得到各个第二样本图像对应的样本分类结果。

步骤410b、基于样本分类结果以及第二样本图像对应的样本分类标注,通过反向传播微调目标学习分支的模型参数。

确定样本分类结果后,可根据样本分类结果与预先已标注的样本分类标注,通过反向传播方式微调模型参数,得到最终图像分类模型。如,可基于样本分类结果与已标注的样本分类标注确定损失,基于损失反向微调模型参数,得到优化后的模型参数。

最后,基于使用优化后模型参数的vit模型进行图像分类。

本实施例中,通过对不同重排组合方式下的第一图像特征集合以及第二图像特征集合进行图像分类,基于得到的第一分类结果与第二分类结果对图像分类模型进行预训练,可提高图像分类模型对同一样本图像特征的不同组合方式进行分类预测时,输出分类结果的准确性。

在一种可能的应用场景中,若需进一步提升图像分类模型的鲁棒性与准确性,可通过多次重排组合提升重排组合后得到的图像特征集合中图像特征的复杂性,进而通过复杂的图像特征集合预训练图像分类模型,下面将以示例性实施例进行说明。

请参考图8,其示出了本申请另一个示例性实施例提供的图像分类方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。

步骤801,对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合。

步骤802,对初始图像特征集合中的初始图像特征进行重排组合,得到第一图像特征集合和第二图像特征集合。

步骤801至步骤802的实施方式可参考上述步骤401至步骤405,本实施例不再赘述。

步骤803,基于第一图像特征集合,迭代进行至少一次重排组合,得到第三图像特征集合。

可选的,为进一步提升图像分类模型的鲁棒性与准确性,在得到第一图像特征集合后,继续对第一图像特征集合中的第一图像特征进行重排组合,得到新的图像特征集合,并继续对新的图像特征集合中的图像特征进行重排组合,即迭代进行至少一次重排组合,迭代重排组合后,得到第三图像特征集合。

可选的,迭代次数可根据对图像分类模型的分类性能需求设置,迭代次数与图像分类模型的分类性能呈正相关关系。

其中,迭代进行重排组合的方式可参考上述对初始图像特征集合中初始图像特征进行重排组合的方式,即,包括对第一图像特征的打乱、重排、组合以及最终进行线性映射的过程。且迭代进行重排组合过程中,可采用相同的重排组合方式,也可采用不同的重排组合方式,本实施例对此不做限定。

步骤804,基于第二图像特征集合,迭代进行至少一次重排组合,得到第四图像特征集合。

对第一图像特征集合迭代进行至少一次重排组合时,也可对第二图像特征集合迭代进行至少一次重排组合,得到第四图像特征集合。同样的,重排组合方式包括对第二图像特征的打乱、重排、组合以及最终进行线性映射的过程。且,同样可采用相同的重排组合方式或不同的重排组合方式。

可选的,对第二图像特征集合进行迭代重排组合的迭代次数与可对第一图像特征集合进行迭代重排组合的迭代次数相同,也可不同。且在另一种可能的实施方式中,也可仅基于第一图像特征集合迭代进行至少一次重排组合或者仅基于第二图像特征集合迭代进行至少一次重排组合。

步骤805,基于第三图像特征集合和第四图像特征集合预训练图像分类模型。

可选的,基于第三图像特征集合和第四图像特征集合预训练图像分类模型的步骤可参考上述实施例中基于第一图像特征集合和第二图像特征集合预训练图像分类模型的步骤,本实施例不再赘述。

步骤806,基于第二样本图像对预训练后的图像分类模型进行微调,第二样本图像是经过标注的样本图像。

本步骤实施方式可参考上述步骤410,本实施例不再赘述。

本实施例中,在对初始图像特征进行重排组合得到第一图像特征集合以及第二图像特征集合后,继续基于第一图像特征集合与第二图像特征集合迭代进行重排组合,提升最终得到的第三图像特征集合中第三图像特征以及第四图像特征集合中第四图像特征的复杂性,进而基于第三图像特征集合与第四图像特征集合预训练图像分类模型,提高图像分类模型的鲁棒性。

上述实施例中,通过对第一图像特征集合以及第二图像特征集合迭代重排组合,进而提升图像分类模型的鲁棒性。在另一种可能的实施方式中,可继续添加图像分类模型的学习分支,从而基于多分支的分类结果预训练图像分类模型。可选的,可基于两两分类结果间的相似度损失反向传播更新在线学习分支的模型参数。

如图9所示,分别将第一样本图像901输入至第一重排组合模块902、第二重排组合模块903以及第三重排组合模块904中,得到不同重排组合方式下的图像特征集合,并分别将图像特征集合输入至vit模型中,进行图像分类,得到第一分类结果z,第二分类结果z'以及第三分类结果z'',进而可基于第一分类结果z以及第二分类结果z'确定第一相似度损失l1,基于第一分类结果z以及第三分类结果z''确定第二相似度损失l2,以及基于第二分类结果z'以及第三分类结果z''确定第三相似度损失l3,进而基于第一相似度损失l1、第二相似度损失l2以及第三相似度损失l3确定总损失,反向传播更新vit模型905的模型参数,而vit模型906以及vit模型907的模型参数基于vit模型905的模型参数更新。

通过对多种重排组合方式下得到的图像特征集合分别进行图像分类,并基于多个分类结果训练图像分类模型,有助于提高图像分类模型的鲁棒性。

图10是本申请一个示例性实施例提供的图像分类装置的结构框图,如图所示,该装置包括如下模块:

图像分割模块1001,用于对第一样本图像进行图像分割,并对分割得到的各个图像块进行特征提取,得到初始图像特征集合,所述初始图像特征集合中包含各个图像块对应的初始图像特征,所述第一样本图像是未经过标注的样本图像;

第一重排组合模块1002,用于对所述初始图像特征集合中的所述初始图像特征进行重排组合,得到第一图像特征集合和第二图像特征集合,所述第一图像特征集合中的第一图像特征与所述第二图像特征集合中的第二图像特征对应不同重排组合方式;

第一预训练模块1003,用于基于所述第一图像特征集合和所述第二图像特征集合预训练图像分类模型,所述图像分类模型用于对图像中的内容进行分类;

微调模块1004,用于基于第二样本图像对预训练后的所述图像分类模型进行微调,所述第二样本图像是经过标注的样本图像。

可选的,所述第一重排组合模块1002,包括:

顺序调整单元,用于调整所述初始图像特征集合中所述初始图像特征的特征顺序,得到第一初始图像特征集合和第二初始图像特征集合,所述第一初始图像特征集合和所述第二初始图像特征集合中所述初始图像特征的顺序不同;

重排单元,用于基于所述第一初始图像特征集合重排得到第一特征矩阵,并基于所述第二初始图像特征集合重排得到第二特征矩阵;

第一组合单元,用于对所述第一特征矩阵中的所述初始图像特征进行特征组合,并基于特征组合结果生成所述第一图像特征集合;

第二组合单元,用于对所述第二特征矩阵中的所述初始图像特征进行特征组合,并基于特征组合结果生成所述第二图像特征集合。

可选的,所述第一组合单元,还用于:

通过滑窗选取所述第一特征矩阵中相邻的n个初始图像特征;

对所述n个初始图像特征进行特征组合,得到第一组合图像特征;

对m组所述第一组合图像特征进行线性映射,得到所述第一图像特征集合,m组所述第一组合图像特征通过移动所述滑窗得到;

可选的,所述第二组合单元,还用于:

通过滑窗选取所述第二特征矩阵中相邻的n个初始图像特征;

对所述n个初始图像特征进行特征组合,得到第二组合图像特征;

对m组所述第二组合图像特征进行线性映射,得到所述第二图像特征集合,m组所述第二组合图像特征通过移动所述滑窗得到。

可选的,所述第一组合单元,还用于:

对所述n个初始图像特征进行特征拼接,得到所述第一组合图像特征,或,对所述n个初始图像特征进行特征融合,得到所述第一组合图像特征;

可选的,所述第二组合单元,还用于:

对所述n个初始图像特征进行特征拼接,得到所述第二组合图像特征,或,对所述n个初始图像特征进行特征融合,得到所述第二组合图像特征。

可选的,所述重排单元,还用于:

基于所述第一样本图像的图像分割方式,确定矩阵尺寸;

基于所述矩阵尺寸,对所述第一初始图像特征集合中的初始图像特征进行重排,得到所述第一特征矩阵;

基于所述矩阵尺寸,对所述第二初始图像特征集合中的初始图像特征进行重排,得到所述第二特征矩阵。

可选的,所述装置还包括:

第二重排组合模块,用于基于所述第一图像特征集合,迭代进行至少一次重排组合,得到第三图像特征集合;

第三重排组合模块,用于基于所述第二图像特征集合,迭代进行至少一次重排组合,得到第四图像特征集合;

第二预训练模块,用于基于所述第三图像特征集合和所述第四图像特征集合预训练图像分类模型。

可选的,所述第一预训练模块1003,包括:

第一分类单元,用于将所述第一图像特征集合输入所述图像分类模型的在线学习分支,得到第一分类结果;

第二分类单元,用于将所述第二图像特征集合输入所述图像分类模型的目标学习分支,得到第二分类结果;

训练单元,用于基于所述第一分类结果与所述第二分类结果训练所述在线学习分支;

参数更新单元,用于基于训练后所述在线学习分支的模型参数,更新所述目标学习分支的模型参数。

可选的,所述训练单元,还用于:

确定所述第一分类结果与所述第二分类结果的相似度损失;

基于所述相似度损失,通过反向传播更新所述在线学习分支的模型参数。

可选的,所述参数更新单元,还用于:

基于训练后所述在线学习分支的模型参数,对所述目标学习分支的模型参数进行ema更新。

可选的,所述微调模块1004,还用于:

基于所述第二样本图像对所述图像分类模型中所述目标学习分支的模型参数进行微调。

可选的,所述微调模块1004,还包括:

第三分类单元,用于将所述第二样本图像输入所述图像分类模型的所述目标学习分支,得到样本分类结果;

微调单元,用于基于所述样本分类结果以及所述第二样本图像对应的样本分类标注,通过反向传播微调所述目标学习分支的模型参数。

可选的,所述图像分类模型为vit模型。

综上所述,本申请实施例中,通过对样本图像进行图像分割以及特征提取,得到初始图像特征集合,再对初始图像特征集合中的初始图像特征进行不同方式的重排组合,得到第一图像特征集合与第二图像特征集合,进而可基于不同重排组合方式下的图像特征集合对图像分类模型进行预训练,无需借助已标注的样本图像进行预训练,减少对已标注样本图像的需求量,且在预训练后通过已标注的样本图像对预训练后的图像分类模型进行微调,确保最终得到的图像分类模型的分类性能,即有助于提高图像分类的准确性。

需要说明的是:上述实施例提供的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其实现过程详见方法实施例,这里不再赘述。

请参考图11,其示出了本申请一个示例性实施例提供的计算机设备的结构示意图。具体来讲:所述计算机设备1100包括中央处理单元(centralprocessingunit,cpu)1101、包括随机存取存储器1102和只读存储器1103的系统存储器1104,以及连接系统存储器1104和中央处理单元1101的系统总线1105。所述计算机设备1100还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(input/output,i/o系统)1106,和用于存储操作系统1113、应用程序1114和其他程序模块1115的大容量存储设备1107。

所述基本输入/输出系统1106包括有用于显示信息的显示器1108和用于用户输入信息的诸如鼠标、键盘之类的输入设备1109。其中所述显示器1108和输入设备1109都通过连接到系统总线1105的输入输出控制器1110连接到中央处理单元1101。所述基本输入/输出系统1106还可以包括输入输出控制器1110以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1110还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备1107通过连接到系统总线1105的大容量存储控制器(未示出)连接到中央处理单元1101。所述大容量存储设备1107及其相关联的计算机可读介质为计算机设备1100提供非易失性存储。也就是说,所述大容量存储设备1107可以包括诸如硬盘或者驱动器之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括随机存取记忆体(ram,randomaccessmemory)、只读存储器(rom,readonlymemory)、闪存或其他固态存储其技术,只读光盘(compactdiscread-onlymemory,cd-rom)、数字通用光盘(digitalversatiledisc,dvd)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1104和大容量存储设备1107可以统称为存储器。

存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1101执行,一个或多个程序包含用于实现上述方法的指令,中央处理单元1101执行该一个或多个程序实现上述各个方法实施例提供的方法。

根据本申请的各种实施例,所述计算机设备1100还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1100可以通过连接在所述系统总线1105上的网络接口单元1111接到网络1112,或者说,也可以使用网络接口单元1111来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中由计算机设备所执行的步骤。

本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述任一实施例所述的图像分类方法。

本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的图像分类方法。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述任一方法实施例所述的图像分类方法。

可选地,该计算机可读存储介质可以包括:rom、ram、固态硬盘(ssd,solidstatedrives)或光盘等。其中,ram可以包括电阻式随机存取记忆体(reram,resistancerandomaccessmemory)和动态随机存取存储器(dram,dynamicrandomaccessmemory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的可选的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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