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

训练方法、图像识别方法、装置、电子设备以及存储介质

文献发布时间:2023-06-19 13:29:16


训练方法、图像识别方法、装置、电子设备以及存储介质

技术领域

本公开涉及人工智能技术领域,尤其涉及计算机视觉和深度学习技术,具体可用于智慧城市和智能交通场景下。具体地,涉及一种训练方法、图像识别方法、装置、电子设备以及存储介质。

背景技术

图像分类是计算机视觉中的一个基础问题。图像分类可以包单标签分类和多标签分类。与单标签分类不同,多标签分类在于识别单个图像中出现的多个类别,即,将多个类别分配给单个图像。

发明内容

本公开提供了一种训练方法、图像识别方法、装置、电子设备以及存储介质。

根据本公开的一方面,提供了一种分类模型的训练方法,包括:确定与训练样本图像对应的预测图,其中,上述预测图表征与上述训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系;确定与训练样本图像对应的监督图,其中,上述监督图表征与上述训练样本图像相关的上述多个预设类别中每两个预设类别之间的真实关系;根据上述预测图,得到与上述训练样本图像对应的预测分类结果;以及,根据与上述训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

根据本公开的另一方面,提供了一种图像识别方法,包括:获取目标图像;以及,将上述目标图像输入分类模型,得到与上述目标图像对应的预测分类结果,其中,上述分类模型是利用根据如上所述的方法训练的。

根据本公开的另一方面,提供了一种分类模型的训练装置,包括:第一确定模块,用于确定与训练样本图像对应的预测图,其中,上述预测图表征与上述训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系;第二确定模块,用于确定与训练样本图像对应的监督图,其中,上述监督图表征与上述训练样本图像相关的上述多个预设类别中每两个预设类别之间的真实关系;第一获得模块,用于根据上述预测图,得到与上述训练样本图像对应的预测分类结果;以及,第二获得模块,用于根据与上述训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

根据本公开的另一方面,提供了一种图像识别装置,包括:获取模块,用于获取目标图像;以及,第三获得模块,用于将上述目标图像输入分类模型,得到与上述目标图像对应的预测分类结果,其中,上述分类模型是利用根据如上所述的装置训练的。

根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与上述至少一个处理器通信连接的存储器;其中,上述存储器存储有可被上述至少一个处理器执行的指令,上述指令被上述至少一个处理器执行,以使上述至少一个处理器能够执行如上所述的方法。

根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,上述计算机指令用于使上述计算机执行如上所述的方法。

根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,上述计算机程序在被处理器执行时实现如上所述的方法。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1示意性示出了根据本公开实施例的可以应用分类模型的训练方法、图像识别方法及装置的示例性系统架构;

图2示意性示出了根据本公开实施例的分类模型的训练方法的流程图;

图3示意性示出了根据本公开实施例的确定与训练样本图像对应的监督图的示意图;

图4示意性示出了根据本公开实施例的根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型的流程图;

图5示意性示出了根据本公开实施例的分类模型的训练过程的应用原理图;

图6示意性示出了根据本公开实施例的分类模型的训练过程的示例示意图;

图7示意性示出了根据本公开实施例的图像识别方法的流程图;

图8示意性示出了根据本公开实施例的分类模型的训练装置的框图;

图9示意性示出了根据本公开实施例的图像识别装置的框图;以及

图10示意性示出了根据本公开实施例的适于实现分类模型的训练方法和图像识别方法的电子设备的框图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

在多标签分类中,需要将图像中存在什么类别识别出来。该问题的难点在于如何根据类别标注信息来提高识别精度。可以利用基于图卷积神经网络(Graph ConvolutionalNetwork,GCN)模型构建的图对图像特征进行增强表征,以此来提高识别精度。图可以包括节点和边。边表征两个节点之间的关系。

基于图卷积神经网络模型构建的图的较难以保证自身可靠性,这是由于图中两个节点之间的关系是预先设定的,预先设定的可能与实际不相符,例如,是根据训练样本图像集中类别出现的次数设定的。因此,如果基于图卷积神经网络模型构建的图本身不可靠,则使得增强表征的图像特征不准确,进而会对分类结果造成负面作用。

为此,本公开实施例提出了一种利用监督图对预测图进行监督保证预测图的可靠性,利用可靠性较高的预测图来对图像特征进行增强表征,以提高识别精度的方案。监督图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的真实关系。预测图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系。例如,确定与训练样本图像对应的预测图。确定与训练样本图像对应的监督图,根据预测图,得到与训练样本图像对应的预测分类结果,并根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

监督图用于表征与训练样本图像相关的多个预设类别中每两个预设类别之间的真实关系。因此,监督图的可靠性较高。根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。例如,将监督图引入分类模型的训练,实现了对预测图的监督。因此,提高了预测图的可靠性。在此基础上,利用可靠性较高的预测图来对图像特征进行增强表征,提高了分类模型的识别精度。

图1示意性示出了根据本公开实施例的可以应用分类模型的训练方法、图像识别方法及装置的示例性系统架构。

需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。例如,在另一实施例中,可以应用分类模型的训练方法、图像识别方法及装置的示例性系统架构可以包括终端设备,但终端设备可以无需与服务器进行交互,即可实现本公开实施例提供的分类模型的训练方法、图像识别方法及装置。

如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如知识阅读类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等。

服务器105可以是提供各种服务的各种类型的服务器,例如对用户利用终端设备101、102、103所浏览的内容提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。

服务器105可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,解决了传统物理主机与VPS服务(Virtual Private Server,VPS)中,存在的管理难度大,业务扩展性弱的缺陷。服务器105也可以为分布式系统的服务器,或者是结合了区块链的服务器。

需要说明的是,本公开实施例所提供的分类模型的训练方法和图像识别方法一般可以由终端设备101、102、或103执行。相应地,本公开实施例所提供的分类模型的训练装置和图像识别装置也可以设置于终端设备101、102、或103中。

或者,本公开实施例所提供的分类模型的训练方法和图像识别方法一般也可以由服务器105执行。相应地,本公开实施例所提供的分类模型的训练装置和图像识别装置一般可以设置于服务器105中。本公开实施例所提供的分类模型的训练方法和图像识别方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的训练模型的训练装置和图像识别装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。

例如,服务器105可以确定与训练样本图像对应的预测图,确定与训练样本图像对应的监督图,根据预测图,得到与训练样本图像对应的预测分类结果,并根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。或者由能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

服务器105获取目标图像,并将目标图像输入分类模型,得到与目标图像对应的预测分类结果。或者由能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群取目标图像,并将目标图像输入分类模型,得到与目标图像对应的预测分类结果。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

需要说明的是,本领域技术人员可以理解,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法的操作不需要完全按照所示顺序来执行,或者某些操作可以同时执行。

图2示意性示出了根据本公开实施例的分类模型的训练方法的流程图。

如图2所示,该方法200包括操作S210~S240。

在操作S210,确定与训练样本图像对应的预测图。预测图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系。

在操作S220,确定与训练样本图像对应的监督图。监督图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的真实关系。

在操作S230,根据预测图,得到与训练样本图像对应的预测分类结果。

在操作S240,根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

根据本公开的实施例,预设类别可以指图像中对象的类别。与训练样本图像相关的多个预设类别可能是全部预设类别,也可能是全部预设类别中的部分预设类别。全部预设类别可以是预先设置的。也可以是根据与训练样本图像集包括的每个训练样本图像中出现的类别确定的。例如,可以针对训练样本图像集包括的多个训练样本图像中的每个训练样本图像,确定训练样本图像中出现的预设类别。根据多个训练样本图像中的每个训练样本图像出现的预设类别,得到全部预设类别。

根据本公开的实施例,两个预设类别可以包括两个相同的预设类别和两个不同的预设类别。两个预设类别之间的关系可以包括两个预设类别之间存在关系或两个预设类别之间不存在关系。针对某个图像,如果两个预设类别在该图像中出现,则可以认为在该图像中,这两个预设类别之间存在关系。如果两个预设类别未在该图像中出现,则可以认为在该图像中,这两个预设类别之间不存在关系。相应的,针对训练样本图像,如果两个预设类别在训练样本图像中出现,则可以认为在训练样本图像中,这两个预设类别之间存在关系。如果两个预设类别在训练样本图像中未出现,则可以认为在训练样本图像中,这两个预设类别之间不存在关系。

根据本公开的实施例,预测图可以用于对图像特征进行增强表征,以提高多标签分类的效果。与训练样本图像对应的预测图可以表征与训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系。例如,与训练样本图像对应的预测图可以包括与训练样本图像相关的多个预设类别和每两个预设类别之间的预测关系。预测关系的表征形式可以根据实际业务需求进行配置,在此不作限定。例如,预测关系的表征形式可以包括预测概率值或预测得分。

根据本公开的实施例,与训练样本图像对应的监督图可以用于对与训练样本图像对应的预测图进行监督。例如,可以通过显示地监督方式监督预测图中类别之间的预测关系来增强图像特征表征。与训练样本图像对应的监督图可以表征与训练图像相关的多个预设类别中每两个预设类别之间的真实(即Ground Trouth)关系,即,与训练样本图像对应的监督图可以包括与训练样本图像相关的多个预设类别和每两个预设类别之间的真实关系。真实关系的表征形式可以根据实际业务需求进行配置,在此不作限定。例如,真实关系可以用“1”或“0”表征。“1”可以表征两个预设类别存在关系。“0”可以表征两个预设类别不存在关系。

例如,多个预设类别包括猫、兔、狗、车辆和飞机。在训练样本图像中出现的预设类别包括猫、兔、狗和车辆。预测关系的表征形式是预测概率值。真实关系用“1”或“0”表征。“1”表征两个预设类别存在关系,“0”表征两个预设类别不存在关系。

猫、兔、狗和车辆是出现在训练样本图像中的预设类别,飞机是未出现在训练样本图像中的预设类别,因此,与训练样本图像相关的多个预设类别中猫和兔之间的真实关系、猫和狗之间的真实关系、猫和车辆之间的真实关系、兔和狗之间的真实关系、兔和车辆之间的真实关系以及狗和车辆之间的真实关系均是“1”。猫和飞机之间的真实关系、兔和飞机之间的真实关系以及车辆和飞机之间的真实关系均是“0”。

在一个示例中,与训练样本图像相关的多个预设类别中猫和兔之间的预测关系是0.95,猫和狗之间的预测关系是0.98,猫和车辆的预测关系是1,兔和狗之间的预测关系是0.9,兔和车辆之间的预测关系是0.98,狗和车辆之间的预测关系是1。猫和飞机之间的预测关系是0.2,兔和飞机之间的预测关系是0.1,车辆和飞机之间的预测关系是0.05。

根据本公开的实施例,与训练样本图像对应的预测分类结果可以指预测训练样本图像包括的预设类别。预设模型可以是基于图卷积神经网络的模型。

根据本公开的实施例,在获得确定与训练样本图像对应的预测图和监督图之后,可以根据与训练样本图像对应的预测图,得到与训练样本图对应的预测分类结果。再根据与训练样本图像对应的预测图和监督图以及与训练样本图像对应的预测分类结果和真实分类结果,调整预设模型的模型参数,直至满足预设条件。可以将在满足预设条件下得到的预设模型确定为分类模型。

需要说明的是,本领域技术人员可以理解,上述方法中操作S210和操作S220可以同时执行,也可以先执行操作S210再执行操作S220,还可以先执行操作S220再执行操作S210,本公开实施例对此不作限定。

根据本公开的实施例,监督图用于表征与训练样本图像相关的多个预设类别中每两个预设类别之间的真实关系。因此,监督图的可靠性较高。根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。例如,将监督图引入分类模型的训练,实现了对预测图的监督。因此,提高了预测图的可靠性。在此基础上,利用可靠性较高的预测图来对图像特征进行增强表征,提高了分类模型的识别精度。

根据本公开的实施例,操作S210可以包括如下操作。

对训练样本图像进行特征提取,得到与训练样本图像对应的特征图。确定与特征图对应的掩码图。将与训练样本图像对应的特征图和掩码图进行点乘,得到与训练样本图像相关的每个预设类别的初始类别表征。根据与训练样本图像相关的每个预设类别的初始类别表征,得到与训练样本图像对应的预测图。

根据本公开的实施例,每个预设类别的初始类别表征可以指每个预设类别的初始内容感知类别表征。预设模型可以包括卷积神经网络模块和语义提取模块。语义提取模块可以包括卷积层和池化层。池化层可以包括全局池化层。对训练样本图像进行特征提取,得到与训练样本图像对应的特征图可以包括:可以利用卷积神经网络模块处理训练样本图像,得到与训练样本图像对应的特征图。

根据本公开的实施例,在获得与训练样本图像对应的特征图之后,可以利用语义提取模块处理与训练样本图像对应的特征图和掩码图,得到与训练样本图像相关的每个预设类别的初始类别表征。例如,可以将与训练样本图像对应的特征图和掩码图进行点乘,得到点乘结果,再利用语义提取模块的池化层处理点乘结果,得到与训练样本图像相关的每个预设类别的初始类别表征。

根据本公开的实施例,在获得与训练样本图像相关的每个预设类别的初始类别表征之后,可以利用语义提取模块的卷积层处理与训练样本图像相关的每个预设类别的初始类别表征,得到与训练样本图像对应的预测图。

根据本公开的实施例,确定与特征图对应的掩码图可以包括如下操作。

对特征图进行卷积,得到与特征图对应的掩码图。

根据本公开的实施例,在获得与训练样本图像对应的特征图之后,可以利用语义提取模块的卷积层处理特征图,得到与特征图对应的掩码图。

根据本公开的实施例,操作S230可以包括如下操作。

根据预测图和与训练样本图像相关的每个预设类别的初始类别表征,得到每个预设类别的增强类别表征。对每个预设类别的增强类别表征进行分类,得到与每个预设类别对应的预测分类结果。根据与每个预设类别对应的预测分类结果,得到与训练样本图像对应的预测分类结果。

根据本公开的实施例,每个预设类别的增强类别表征可以指每个预设类别的增强内容感知类别表征。预设模型还可以包括动态图卷积神经网络模块和分类模块,分类模块可以包括多个二分类器。

根据本公开的实施例,根据预测图和与训练样本图像相关的每个预设类别的初始类别表征,得到每个预设类别的增强类别表征可以包括:可以利用动态图卷积神经网络模块处理与训练样本图像对应的预测图和与训练样本图像相关的多个预设类别中的每个预设类别的初始类别表征,得到与训练样本图像相关的多个预设类别中的每个预设类别的增强类别表征。例如,可以将预测图和与训练样本图像相关的多个预设类别中的每个预设类别的初始类别表征进行点乘,得到与训练样本图像相关的多个预设类别中的每个预设类别的增强类别表征。

根据本公开的实施例,在获得与训练样本图像相关的多个预设类别中的每个预设类别的增强类别表征之后,可以利用分类模块处理与训练样本图像相关的多个预设类别中的每个预设类别的增强类别表征,得到与每个预设类别对应的预测分类结果,即,将与训练样本图像相关的多个预设类别中的每个预设类别的增强类别特征输入与预设类别对应的二分类器,得到与每个预设类别对应的预测分类结果。可以根据与每个预设类别对应的预测分类结果,得到与训练样本图像对应的预测分类结果。

下面参考图3~图6,结合具体实施例对图2所分类模型的训练方法做进一步说明。

图3示意性示出了根据本公开实施例的确定与训练样本图像对应的监督图的示意图。

如图3所示,该方法300包括操作S321~S323。

在操作S321,确定与训练样本图像相关的多个预设类别。

在操作S322,针对每两个预设类别,将初始矩阵中与两个预设类别对应的元素修改为预设标识。

在操作S323,根据修改后的初始矩阵,确定与训练样本图像对应的监督图。

根据本公开的实施例,预设标识可以表征两个预设类别是存在关系的预设类别。初始矩阵可以用于表征多个预设类别中的每两个预设类别之间的初始关系。初始矩阵可以包括多个元素。每个元素可以用于表征两个预设类别之间的初始关系。两个预设类别可以包括两个相同的预设类别或两个不同的预设类别。初始矩阵中的每个元素可以设置为初始标识。初始矩阵包括的多个预设类别可以是根据与训练样本图像集包括的每个训练样本图像中出现的类别确定的。

根据本公开的实施例,针对训练样本图像,在训练样本图像中出现的预设类别可以是初始矩阵包括的多个预设类别中的部分或全部。在确定与训练样本图像相关的多个预设类别之后,可以针对每两个预设类别,将初始矩阵中与两个预设类别对应的元素由初始标识修改为预设标识,得到修改后的初始矩阵。如果修改后的初始矩阵中的元素是预设标识,则可以说明与元素对应的两个预设类别是存在关系的预设类别。

例如,初始标识可以用“0”表征。预设标识可以用“1”表征。全部预设类别包括猫、兔、狗和飞机。在训练样本图像中出现的预设类别包括猫、兔和狗。猫用x

矩阵

将A中的元素设置为初始标识。例如“0”,得到初始矩阵

在训练样本图像中出现的预设类别包括猫、兔和狗。因此,将(x

图4示意性示出了根据本公开实施例的根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型的流程图。

如图4所示,该方法400包括操作S441~S444。

在操作S441,基于第一损失函数,利用与训练样本图像对应的预测图和监督图,得到第一输出值。

在操作S442,基于第二损失函数,利用与训练样本图像对应的预测分类结果和真实分类结果,得到第二输出值。

在操作S443,根据第一输出值和第二输出值,调整预设模型的模型参数,直至第一输出值和第二输出值均收敛。

在操作S444,将在第一输出值和第二输出值均收敛情况下得到的预设模型确定为分类模型。

根据本公开的实施例,第一损失函数可以包括均方差(Mean Squared Error,MSE)损失函数。第二损失函数可以包括交叉熵损失函数。

根据本公开的实施例,可以将与训练样本图像对应的预测图和监督图输入第一损失函数,得到第一输出值。可以将与训练样本图像对应的预测分类结果和真实分类结果输入第二损失函数,得到第二输出值。根据第一输出值和第二输出值,得到输出值。根据输出值调整预设模型的模型参数,直至输出值收敛。

图5示意性示出了根据本公开实施例的分类模型的训练过程的应用原理图。

如图5所示,在训练过程500中,对训练样本图像501进行特征提取,得到与训练样本图像501对应的特征图502。确定与特征图502对应的掩码图503。将与训练样本图像502对应的特征图502和掩码图503进行点乘,得到与训练样本图像501相关的每个预设类别的初始类别表征504。根据与训练样本图像501相关的每个预设类别的初始类别表征504,得到与训练样本图像501对应的预测图505。

确定与训练样本图像501相关的多个预设类别,针对每两个预设类别,将初始矩阵506中与两个预设类别对应的元素修改为预设标识。根据修改后的初始矩阵,确定与训练样本图像对应的监督图507。

基于第一损失函数508,利用与训练样本图像501对应的预测图505和监督图507,得到第一输出值509。

根据预测图505和与训练样本图像501相关的每个预设类别的初始类别表征504,得到每个预设类别的增强类别表征510。对每个预设类别的增强类别表征511进行分类,得到与每个预设类别对应的预测分类结果。根据与每个预设类别对应的预测分类结果,得到与训练样本图像501对应的预测分类结果511。

基于第二损失函数513,利用与训练样本图像501对应的预测分类结果511和真实分类结果512,得到第二输出值514。

根据第一输出值509和第二输出值514,调整预设模型515的模型参数,直至第一输出值509和第二输出值514均收敛。将在第一输出值509和第二输出值514均收敛情况下得到的预设模型515确定为分类模型516。

图6示意性示出了根据本公开实施例的分类模型的训练过程的示例示意图。

全部预设类别的数目用N表征。N=25。

如图6所示,在训练过程600中,利用卷积神经网络模块602处理训练样本图像601,得到与训练样本图像601对应的特征图603。特征图603可以用W

对特征图603进行卷积,得到与特征图603对应的掩码图604。掩码图604可以用W

将与训练样本图像601对应的特征图603和掩码图604进行点乘,再进行全局池化,得到与训练样本图像601相关的每个预设类别的初始类别表征。例如,得到包括图6中示出的初始类别表征605A、初始类别表征606A、初始类别表征607A和初始类别表征608A。此外,还包括其他初始类别表征,其他初始类别表征包括除上述4个初始类别表征以外的21个初始类别表征。每个初始类别表征的维度用C表征。

对初始类别表征605A、初始类别表征606A、初始类别表征607A、初始类别表征608A以及其他初始类别表征进行卷积,得到与训练样本图像601对应的预测图609。

对预测图和与训练样本图像相关的每个预设类别的初始类别表征进行点乘,得到每个预设类别的增强类别表征,即,得到包括图6中示出的增强类别表征605B、增强类别表征606B、增强类别表征607B和增强类别表征608B。此外,还包括其他增强类别表征,其他增强类别表征包括除上述4个增强类别表征以外的21个增强类别表征。增强类别表征605B是与初始类别表征605A对应的增强类别表征。增强类别表征606B是与初始类别表征606A对应的增强类别表征。增强类别表征607B是与初始类别表征607A对应的增强类别表征。增强类别表征608B是与初始类别表征608A对应的增强类别表征。

利用分类模块611对每个增强类别表征进行处理,得到与训练样本图像601对应的预测分类结果612。

在训练过程中,利用监督图610对预测图609进行监督,即,可以基于第一损失函数,利用监督图610和预测图609,得到第一输出值。在此基础上结合第二输出值,根据第一输出值和第二输出值,调整预设模型的模型参数,直至第一输出值和第二输出值均收敛。将在第一输出值和第二输出值均收敛情况下得到的预设模型确定为分类模型。第二输出值是基于第二损失函数,利用预测分类结果612和真实分类结果得到的。

仅是示例性实施例,但不限于此,还可以包括本领域已知的其他分类模型的训练方法,只要能够实现分类模型的训练即可。

图7示意性示出了根据本公开实施例的图像识别方法的流程图。

如图7所示,该方法700包括操作S710~S720。

在操作S710,获取目标图像。

在操作S720,将目标图像输入分类模型,得到与目标图像对应的预测分类结果。

根据本公开的实施例,分类模型可以是利用根据本公开实施例所述的分类模型的训练方法训练的。

根据本公开的实施例,将目标图像输入分类模型,得到与目标图像相关的类别可以包括:对目标图像进行特征提取,得到与目标图像对应的特征图。对与目标图像对应的特征图进行卷积,得到与特征图对应的掩码图。将与目标图像对应的特征图和掩码图进行点乘,得到与目标图像相关的每个预设类别的初始类别表征。根据与目标图像相关的每个预设类别的初始类别表征,得到与目标图像对应的预测图。根据与目标图像对应的预测图和与目标图像相关的每个预设类别的初始类别表征,得到每个预设类别的增强类别表征。对每个预设类别的增强类别表征进行分类,得到与每个预设类别对应的预测分类结果。根据与每个预设类别对应的预测分类结果,得到与目标图像对应的预测分类结果。

需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。

图8示意性示出了根据本公开实施例的分类模型的训练装置的框图。

如图8所示,分类模型的训练装置800可以包括第一确定模块810、第二确定模块820、第一获得模块830和第二获得模块840。

第一确定模块810,用于确定与训练样本图像对应的预测图。预测图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的预测关系。

第二确定模块820,用于确定与训练样本图像对应的监督图。监督图表征与训练样本图像相关的多个预设类别中每两个预设类别之间的真实关系。

第一获得模块830,用于根据预测图,得到与训练样本图像对应的预测分类结果。

第二获得模块840,用于根据与训练样本图像对应的预测图、监督图、预测分类结果和真实分类结果训练预设模型,得到分类模型。

根据本公开的实施例,第二获得模块840可以包括第一获得子模块、第二获得子模块、调整子模块和第一确定模块。

第一获得子模块,用于基于第一损失函数,利用与训练样本图像对应的预测图和监督图,得到第一输出值。

第二获得子模块,用于基于第二损失函数,利用与训练样本图像对应的预测分类结果和真实分类结果,得到第二输出值。

调整子模块,用于根据第一输出值和第二输出值,调整预设模型的模型参数,直至第一输出值和第二输出值均收敛。

第一确定子模块,用于将在第一输出值和第二输出值均收敛情况下得到的预设模型确定为分类模型。

根据本公开的实施例,第二确定模块820可以包括第二确定子模块、修改子模块和第三确定子模块。

第二确定子模块,用于确定与训练样本图像相关的多个预设类别。

修改子模块,用于针对每两个预设类别,将初始矩阵中与两个预设类别对应的元素修改为预设标识。预设标识表征两个预设类别在训练样本图像中均存在。

第三确定子模块,用于根据修改后的初始矩阵,确定与训练样本图像对应的监督图。

根据本公开的实施例,第一确定模块810可以包括第三获得子模块、第三确定子模块、第四获得子模块和第五获得子模块。

第三获得子模块,用于对训练样本图像进行特征提取,得到与训练样本图像对应的特征图。

第三确定子模块,用于确定与特征图对应的掩码图。

第四获得子模块,用于将与训练样本图像对应的特征图和掩码图进行点乘,得到与训练样本图像相关的每个预设类别的初始类别表征。

第五获得子模块,用于根据与训练样本图像相关的每个预设类别的初始类别表征,得到与训练样本图像对应的预测图。

根据本公开的实施例,第三确定子模块,包括:

获得单元,用于对特征图进行卷积,得到与特征图对应的掩码图。

根据本公开的实施例,第一获得模块830可以包括第六获得子模块、第七获得子模块和第八获得子模块。

第六获得子模块,用于根据预测图和与训练样本图像相关的每个预设类别的初始类别表征,得到每个预设类别的增强类别表征。

第七获得子模块,用于对每个预设类别的增强类别表征进行分类,得到与每个预设类别对应的预测分类结果。

第八获得子模块,用于根据与每个预设类别对应的预测分类结果,得到与训练样本图像对应的预测分类结果。

图9示意性示出了根据本公开实施例的图像识别装置的框图。

如图9所示,图像识别装置900可以包括获取模块910和第三获得模块920。

获取模块910,用于获取目标图像。

第三获得模块920,用于将目标图像输入分类模型,得到与目标图像对应的预测分类结果。

根据本公开的实施例,分类模型是利用根据本公开实施例的分类模型的训练装置训练的。

根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。

根据本公开的实施例,一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上所述的方法。

根据本公开的实施例,一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行如上所述的方法。

根据本公开的实施例,一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如上所述的方法。

图10示意性示出了根据本公开实施例的适于实现分类模型的训练方法和图像识别方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图10所示,电子设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储电子设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。

电子设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许电子设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如分类模型的训练方法或图像识别方法。例如,在一些实施例中,分类模型的训练方法或图像识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到电子设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的分类模型的训练方法或图像识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行分类模型的训练方法或图像识别方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以是分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

相关技术
  • 训练方法、图像识别方法、装置、电子设备以及存储介质
  • 网络训练方法及装置、图像识别方法和电子设备
技术分类

06120113692402