图像分类方法、装置、设备及计算机可读存储介质与流程

文档序号:26752395发布日期:2021-09-25 02:54阅读:73来源:国知局
图像分类方法、装置、设备及计算机可读存储介质与流程

1.本公开涉及计算机技术领域,尤其涉及一种图像分类方法、装置、设备及计算机可读存储介质。


背景技术:

2.人工智能(ai,artificial intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
3.在计算机视觉等领域,通常需要对图像进行分类处理。相关技术的图像处理方法通常会提取图像的特征图,根据特征图分析图像场景中的物体信息,进而得到图像的分类处理结果。然而,相关技术的处理方式的分类准确度较低。


技术实现要素:

4.本公开实施例提供一种图像分类方法、装置、设备及计算机可读存储介质,能够提升图像分类的分类准确度。
5.本公开实施例的技术方案是这样实现的:
6.本公开实施例提供一种图像分类方法,包括:对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征;获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征;基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值;基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果。
7.在一些可能的实现方式中,所述第一特征向量包括多个方面中每一所述方面对应的第一子特征向量;所述权重向量包括每一所述方面对应的子权重;所述类别原型向量包括每一所述方面对应的子类别向量;所述基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值,包括:针对每一所述预设类别,根据所述预设类别中每一所述方面对应的第一子特征向量,和每一所述方面对应的子类别向量,确定每一所述方面对应的第一子距离;根据每一所述方面对应的子权重和每一所述方面对应的第一子距离,确定所述预设类别对应的第一距离量化值。
8.在一些可能的实现方式中,所述对待分类图像进行特征提取,得到第一特征向量,包括:对所述待分类图像进行特征提取,得到初始特征向量;从特征通道的维度对所述初始特征向量进行分割,得到每一所述方面对应的第一子特征向量。
9.在一些可能的实现方式中,所述基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果,包括:在每一所述预设类别对应的第一距离量化值
中,确定最小的第一距离量化值;将所述最小的第一距离量化值对应的预设类别,确定为所述待分类图像的分类结果。
10.本公开实施例通过获取将第一特征向量划分为多个方面中每一方面下的第一子特征向量,并结合每一预设类别在每一所述方面下的子权重,确定该待分类图像与每一预设类别之间的特征差异,进而得到最终的分类结果。其中,由于每一个第一子特征向量用于表征对应的方面下的视觉特征,且预设类别在不同方面中分配的权重用于表征该预设类别对于不同方面的关注程度,使得每一预设类别的第一距离量化值可以更加准确的表征该待分类图像不属于该预设类别的概率,可以进一步的提升图像分类的准确度。
11.在一些可能的实现方式中,所述方法通过图像分类网络实现,所述图像分类网络的训练样本包括:每一所述预设类别对应的训练样本集,所述训练样本集包括多个样本图片,所述图像分类网络的训练方法包括:针对每一所述样本图片,通过初始分类网络获取所述样本图片的第二特征向量,以及每一所述预设类别对应的权重向量和类别原型向量;基于第二距离量化值的最小值所对应的类别,确定所述样本图片的预测分类结果,其中,所述第二距离量化值基于所述第二特征向量,每一所述预设类别对应的权重向量和类别原型向量确定;根据所述样本图片的预测分类结果和所述样本图片的分类标签,确定所述初始分类网络的损失值;根据所述损失值对所述预设分类网络进行优化,得到所述图像分类网络。
12.本公开实施例通过每一预设类别对应的多个样本图片对初始分类网络进行训练,利用每一样本图片的预测分类结果和预设类别确定的初始分类网络的损失值调整初始分类网络中的网络参数,以得到训练后的图像分类网络,通过本公开实施例训练得到的图像分类网络,相比于传统技术中的图像分类方案,由于结合描述预设类别的语义特征,对提取的特征向量进行分类,提升了图像分类的准确度。
13.在一些可能的实现方式中,所述通过初始分类网络获取每一所述预设类别对应的类别原型向量,包括:针对每一所述预设类别,通过所述初始分类网络获取所述预设类别对应的多个样本图片对应的多个第二特征向量;基于所述多个第二特征向量,确定所述预设类别对应的类别原型向量。
14.在一些可能的实现方式中,所述通过初始分类网络获取每一所述预设类别对应的权重向量,包括:针对每一所述预设类别,基于所述预设类别对应的多个样本图片和所述预设类别对应的语义特征向量,得到所述预设类别对应的权重向量。
15.在一些可能的实现方式中,所述基于所述预设类别对应的多个样本图片和所述预设类别对应的语义特征向量,得到所述预设类别对应的权重向量,包括:基于所述预设类别对应的多个样本图片,确定所述预设类别对应的类别原型向量;基于预设的融合权重,对所述预设类别对应的类别原型向量和所述预设类别对应的语义特征向量进行融合,得到所述预设类别对应的融合特征向量;基于所述融合特征向量,确定所述预设类别对应的权重向量。
16.本公开实施例通过融合预设类别的类别原型向量和对应的语义特征向量,并基于融合后的融合特征向量确定权重向量,可以使得到的权重向量可以更加准确的表征各个方面对于当前预设类别的重要程度,提升了后续确定待分类图像与该预设类别之间的距离量化值的准确度。
17.在一些可能的实现方式中,所述基于所述预设类别对应的多个样本图片和所述预
设类别对应的语义特征向量,得到所述预设类别对应的权重向量,包括:通过所述初始分类网络对所述预设类别对应的多个样本图片进行特征提取,得到所述多个样本图片对应的多个初始特征向量;基于预设的融合权重,对每一所述样本图片对应的所述初始特征向量和所述预设类别对应的语义特征向量进行融合,得到每一所述样本图片对应的融合特征向量;分别基于每一所述样本图片对应的融合特征向量,确定每一所述样本图片对应的中间权重向量;基于每一所述样本图片对应的中间权重向量,确定所述预设类别对应的权重向量。
18.本公开实施例通过分别计算每一样本图片对应的初始特征向量和对应的语义特征向量,并基于融合后的融合特征向量确定每一样本图片对应的中间权重向量,可以使得到的权重向量可以更加准确的表征各个方面对于当前预设类别的重要程度;同时,基于每一所述样本图片对应的中间权重向量,确定所述预设类别对应的权重向量,可以得到具有鲁棒性的权重向量,可以提升后续确定待分类图像与该预设类别之间的距离量化值的准确度。
19.在一些可能的实现方式中,所述方法还包括:通过至少一种语义提取模型对所述预设类别的类别标识进行特征提取,得到每一所述语义提取模型对应的初始语义特征;基于每一所述语义提取模型对应的语义权重对每一所述语义提取模型对应的初始语义特征进行融合,得到所述预设类别对应的语义特征向量。
20.本公开通过获取每一语义提取模型针对同一类别标识提取的不同的初始语义特征,可以从不同的语义提取模型中获取该类别标识在不同关注点(不同模型)下的语义特征,进而可以得到更加全面的预设类别对应的语义特征向量;同时,由于针对不同的语义提取模型设置不同的语义权重,可以进一步提升语义特征向量的准确性。
21.在一些可能的实现方式中,所述至少一种语义提取模型包括第一语义提取模型,所述通过至少一种语义提取模型对所述预设类别的类别标识进行特征提取,得到每一所述语义提取模型对应的初始语义特征,包括:基于所述第一语义提取模型,获取所述类别标识对应的词向量集合;所述词向量集合包括多个场景词向量;不同的场景词向量用于表征所述类别标识在不同场景下的上下文特征;基于所述类别标识对应的多个场景词向量,确定所述第一语义提取模型对应的初始语义特征。
22.在一些可能的实现方式中,所述基于所述第一语义提取模型,获取每一所述类别标识对应的词向量集合,包括:获取所述类别标识对应的多个场景文本;每一所述场景文本包括所述类别标识;对每一所述场景文本进行掩码处理,以得到每一场景文本对应的包含目标字符的待提取文本;所述掩码处理用于将所述场景文本替换为所述目标字符;将每一所述待提取文本输入至所述第一语义提取模型,得到所述类别标识在每一所述待提取文本中的字符向量;所述第一语义提取模型用于提取所述待提取文本中所述目标字符的字符向量;所述字符向量用于表征所述目标字符在所述待提取文本中的上下文特征;将所述类别标识在每一所述待提取文本中的字符向量确定为所述场景词向量,以得到所述类别标识对应的词向量集合。
23.本公开通过获取每一类别标识对应的多个场景词向量,确定每一类别标识对应的词向量,可以使得每一类别标识对应的词向量可以应用于不同场景下的图像分类过程,不仅可以提升本公开实施例中图像分类方法的应用范围,还可以提升图像分类的准确度。
24.在一些可能的实现方式中,所述方法包括:接收新增类别的训练请求;所述训练请求携带所述新增类别的类别标识和训练样本集;响应于所述训练请求,基于所述新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量;所述新增类别对应的权重向量和类别原型向量用于确定所述待分类图像在所述新增类别对应的第一距离量化值。
25.在一些可能的实现方式中,所述基于所述新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量,包括:基于所述新增类别的训练样本集对应的多个样本图片,通过所述图像分类网络确定所述新增类别对应的类别原型向量;基于所述新增类别对应的类别原型向量,和所述新增类别对应的语义特征向量确定所述新增类别对应的权重向量;所述语义特征向量基于所述新增类别的类别标识确定。
26.本公开实施例响应于新增类别的训练请求,利用新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量,进而可以在后续的图像分类任务中,利用该新增类别对应的权重向量和类别原型向量确定所述待分类图像在所述新增类别对应的第一距离量化值,以完成该新增类别对应的图像分类任务,提升了该图像分类网络的应用范围。
27.本公开实施例提供一种图像分类装置,所述装置包括:
28.提取模块,用于对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征;
29.获取模块,用于获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征;
30.确定模块,用于基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值;
31.分类模块,用于基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果。
32.在一些可能的实现方式中,所述装置还包括:
33.训练模块,用于针对每一所述样本图片,通过初始分类网络获取所述样本图片的第二特征向量,以及每一所述预设类别对应的权重向量和类别原型向量;基于第二距离量化值的最小值所对应的类别,确定所述样本图片的预测分类结果,其中,所述第二距离量化值基于所述第二特征向量,每一所述预设类别对应的权重向量和类别原型向量确定;根据所述样本图片的预测分类结果和所述样本图片的分类标签,确定所述初始分类网络的损失值;根据所述损失值对所述预设分类网络进行优化,得到所述图像分类网络。
34.本公开实施例提供一种图像分类设备,包括:
35.存储器,用于存储可执行指令;
36.处理器,用于执行所述存储器中存储的可执行指令时,实现本公开实施例提供的图像分类方法。
37.本公开实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本公开实施例提供的图像分类方法。
38.本公开实施例具有以下有益效果:
39.本公开实施例通过提取待分类图像的第一特征向量,并与每一预设类别对应的权重向量和类别原型向量确定第一距离量化值,根据每一预设类别对应的第一距离量化值确定该待分类图像的分类结果。由于该权重向量表征了预设类别描述文本的语义特征,该类别原型向量用于表征预设类别的类别原型特征,因此,可以通过该第一距离量化值确定该待分类图像与各预设类别的语义特征之间的距离,进而将满足预设条件的第一距离量化值所对应的类别确定为该待分类图像的分类结果。由此,通过结合描述预设类别的语义特征,对提取的第一特征向量进行分类,提升了待分类图像的分类准确度。
附图说明
40.图1是本公开实施例提供的图像分类系统的一个可选的架构示意图;
41.图2是本公开实施例提供的图像分类设备的结构示意图;
42.图3是本公开实施例提供的图像分类方法的一个可选的流程示意图;
43.图4是本公开实施例提供的图像分类方法的一个可选的流程示意图;
44.图5是本公开实施例提供的图像分类方法的一个可选的流程示意图;
45.图6是本公开实施例提供的图像分类方法的一个可选的流程示意图;
46.图7是本公开实施例提供的图像分类方法的一个可选的流程示意图;
47.图8是本公开实施例提供的图像分类方法的一个可选的流程示意图;
48.图9是本公开实施例提供的图像分类方法的一个可选的流程示意图;
49.图10是本公开实施例提供的图像分类方法的一个可选的流程示意图。
具体实施方式
50.为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
51.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
52.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使在本实施例中描述的本公开实施例能够以除了在在本实施例中图示或描述的以外的顺序实施。
53.除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开实施例的目的,不是旨在限制本公开。
54.参见图1,图1是本公开实施例提供的图像分类系统100的一个可选的架构示意图,为实现支撑一个图像分类应用,终端400通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。图1还示出了服务器200可以为服务器集群,该服务器集群包括服务器200

1至200

3,同样地,服务器200

1至200

3可以是实体机器,也可以是利
用虚拟化技术(如容器技术及虚拟机技术等)构建的虚拟机器,本公开实施例对此不做限定,当然,在本实施例中也可使用单个服务器来进行服务的提供。其中,终端400中还可以设置用于实现图像分类任务的应用程序410,终端400可以通过该应用程序410接收用户发出的针对待分类图像的分类任务,并基于终端400和/或服务器200中设置的图像分类应用,完成对该待分类图像的分类任务,得到对应的分类结果,并将该分类结果通过该应用程序410展示给用户。
55.参见图2,图2是本公开实施例提供的图像分类设备500的结构示意图,图2所示的图像分类设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。图像分类设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。
56.处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
57.用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
58.存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本公开实施例描述的存储器550旨在包括任意适合类型的存储器。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
59.在一些可能的实现方式中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
60.操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
61.网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
62.显示模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
63.输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
64.在一些可能的实现方式中,本公开实施例提供的图像分类装置可以采用软硬件结合的方式实现,作为示例,本公开实施例提供的图像分类装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本公开实施例提供的图像分类方法。
65.在一些可能的实现方式中,本公开实施例提供的图像分类装置可以采用软件方式实现,图2示出了存储在存储器550中的图像分类装置555,其可以是程序和插件等形式的软件,包括以下软件模块:提取模块5551、获取模块5552、确定模块5553和分类模块5554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
66.将在下文中说明各个模块的功能。
67.在另一些实施例中,本公开实施例提供的装置可以采用硬件方式实现,作为示例,本公开实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本公开实施例提供的图像分类方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field

programmable gate array)或其他电子元件。
68.将结合本公开实施例提供的服务器的示例性应用和实施,在本公开实施例中,将以服务器为执行主体说明本公开实施例提供的图像分类方法。
69.参见图3,图3是本公开实施例提供的图像分类方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。
70.在s301中,对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征。
71.其中,所述待分类图像为需要进行分类的原始图片,该原始图片可以携带具有多任务分类需求的任意对象。在一些实现方式中,该对象可以是具有多任务分类需求的场景对象,比如,沙漠、城市、森林等场景对象;在一些实现方式中,该对象还可以是需要确定各类属性的动物,比如狗、猫或是动物园中处于观察状态的各类动物等;在一些实现方式中,该对象也可以是机械设备,比如机器人或是具有各种属性确定需求的机械手或机械体等。后续各公开实施例均以对象为场景对象为例进行说明,该对象为其他类型对象的情况可以根据后续各公开实施例进行灵活扩展。
72.在一些可能的实现方式中,对目标对象进行特征提取的方式可以根据实际情况灵活选择,任何可以对图像进行特征提取的方式,均可以作为步骤s301的实现方式,在本公开实施例中不做限定。
73.在一些可能的实现方式中,可以通过预先设置的特征提取网络实现对该待分类图像的特征提取步骤,得到该待分类图像的第一特征向量。其中,该特征提取网络已经是训练好的特征提取网络;第一特征向量可以为多个维度下的向量。例如,在该第一特征向量为一个维度下的向量的情况下,该第一特征向量可以表示为“1
×1×
c”、“c
×1×
1”和“1
×
c
×
1”中的任意一种;在该第一特征向量为两个维度下的向量的情况下,该第一特征向量可以表示为“1
×
c1
×
c2”、“c1
×1×
c2”和“c1
×
c2
×
1”中的任意一种;以此类推,在该第一特征向量为n个维度下的向量的情况下,该第一特征向量可以表示为“c1
×
c2
×…×
cn”。
74.在s302中,获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征。
75.在一些可能的实现方式中,在对该待分类图像进行分类的过程中,需要在该至少
一个预设类别中确定一个预设类别作为该待分类图像的分类结果。因此,该至少一个预设类别是系统中预先设定好的。
76.在一些可能的实现方式中,对于每一预设类别,可以获取每一预设类别对应的权重向量,该权重向量的尺寸与该第一特征向量的尺寸相关。在一些可能的实现方式中,该权重向量的其中一个维度与该第一特征向量的其中一个维度相关,相关的维度为第一维度。
77.其中,在第一特征向量为包括第一维度的向量的情况下,该权重向量也包括该第一维度。例如,在该第一特征向量一个维度下的向量“1
×1×
c”的情况下,该第一特征向量包括第一维度“c”,相应地,权重向量为包括该第一维度c的向量(可以为“1
×1×
c”);在该第一特征向量n个维度下的向量“c1
×
c2
×…×
cn”的情况下,该第一特征向量包括第一维度“c1”,相应地,权重向量为包括该第一维度c的向量(可以为“1
×1×
c”)。
78.在一些可能的实现方式中,预设类别对应的权重向量用于表征预设类别描述文本的语义特征。每一预设类别对应的权重向量也是预先设置好的。
79.其中,可以通过以下方式下获取预设类别对应的权重向量:获取用于描述该预设类别的多个语义文本,将多个语义文本输入至预训练语言模型,得到所述预训练语言模型输出的每一语义文本对应的语义特征向量,基于每一语义文本对应的语义特征向量确定该预设类别对应的权重向量。其中,描述该预设类别的语义文本可以为对该预设类别的对象的描述文本,例如,在预设类别为“沙漠”的情况下,该预设类别描述文本可以为“沙漠真大啊”、“沙漠是一片黄色的海洋”或“沙漠的颜色真单一”等。
80.在s303中,基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值。
81.在一些可能的实现方式中,对于每一预设类别,可以获取该预设类别对应的类别原型向量与该第一特征向量之间的距离,并基于该距离与权重向量确定该预设类别对应的第一距离量化值。
82.例如,若该第一特征向量为包括第一维度c1的n维向量“c1
×
(c2
×…×
cn)”,每一预设类别对应类别原型向量为包括第一维度c1的n维向量“c1
×
(c2
×…×
cn)”;该权重向量为包括第一维度c1的m维向量“c1
×
(c2
×…×
cm)”。在该第一特征向量、类别原型向量与权重向量均为一维向量的情况下,可以先确定第一特征向量与类别原型向量之间的距离,再结合确定该预设类别对应的第一距离量化值。
83.在s304中,基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果。
84.在一些可能的实现方式中,对于每一个预设类别,该第一距离量化值用于表征该待分类图像不属于该预设类别的概率。也就是说,第一距离量化值越高,该待分类图像输入该预设类别的概率越低,第一距离量化值越低,该待分类图像输入该预设类别的概率越高。根据每一预设类别对应的第一距离量化值的大小关系,可以确定待分类图像的分类结果。
85.在一些可能的实现方式中,可以通过以下方式实现上述s304:在每一预设类别对应的第一距离量化值中,确定最小的第一距离量化值;将最小的第一距离量化值对应的预设类别确定为待分类图像的分类结果。
86.通过本公开实施例对于图3的上述示例性实施可知,本公开实施例通过提取待分类图像的第一特征向量,并与每一预设类别对应的权重向量和类别原型向量确定第一距离
量化值,根据每一预设类别对应的第一距离量化值确定该待分类图像的分类结果。由于该权重向量表征了预设类别描述文本的语义特征,该类别原型向量用于表征预设类别的类别原型特征,因此,可以通过该第一距离量化值确定该待分类图像与各预设类别的语义特征之间的距离,进而将满足预设条件的第一距离量化值所对应的类别确定为该待分类图像的分类结果。由此,通过结合描述预设类别的语义特征,对提取的第一特征向量进行分类,提升了待分类图像的分类准确度。
87.在本公开提供的另一个实施例中,参见图4,图4是本公开实施例提供的图像分类方法的一个可选的流程示意图,基于图3,图3中的步骤s301可以更新为步骤s401,s302可以更新为步骤s402;将结合图4示出的步骤进行说明。
88.在s401中,对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征,所述第一特征向量包括多个方面中每一所述方面对应的第一子特征向量。
89.其中,第一特征向量包括多个方面中每一方面对应的第一子特征向量。第一特征向量可以包括n个方面的第一子特征向量,每一第一子特征向量的尺寸相同。即,若第一个子向量的尺寸为长度为l的一维向量,第n个子向量的尺寸也为l的一维向量;若第一个子向量的尺寸为“l1
×
l2”的二维向量,第n个子向量的尺寸也为“l1
×
l2”的二维向量。相应地,每一预设类别对应的类别原型向量与该第一特征向量的尺寸相同。
90.需要说明的是,本公开实施例中的“方面”可以为图像中的特征方面,该特征方面可以包括用于表征目标颜色特征的“方面”;还可以包括用于表征目标大小特征的“方面”;还可以包括用于表征目标轮廓特征的“方面”等。具体的方面类型和方面数量可以根据具体场景的不同进行适应性变更。在一些实施例中,本公开实施例中的“方面”可以理解为图像中的特征属性,例如颜色属性、大小属性和轮廓属性等。
91.在一些可能的实现方式中,可以将该待分类图像分别输入至不同的特征提取网络,得到每一特征提取网络输出的一个方面的子向量。例如,将该待分类图像分别输入至3个不同的特征提取网络,包括用于提取表征目标颜色特征的“方面”的子向量;包括用于提取表征目标大小特征的“方面”的子向量;包括用于提取表征目标轮廓特征的“方面”的子向量。
92.在一些可能的实现方式中,还可以通过以下s4011和s4012实现上述s401。其中,
93.在s4011中,对所述待分类图像进行特征提取,得到初始特征向量。
94.在s4012中,从特征通道的维度对所述初始特征向量进行分割,得到每一所述方面对应的第一子特征向量。
95.其中,在对将初始特征向量进行分割的过程中,可以先获取方面数量,根据该方面数量从特征通道的维度对所述初始特征向量进行分割,该特征通道所在的维度可以表示为第一维度,s4012可以根据该方面数量对在初始特征向量中的第一维度对初始特征向量进行分割,得到每一方面对应的第一子特征向量。
96.需要说明的是,每一个第一子特征向量用于表征对应的方面下的视觉特征;例如,对于存在的3个方面,包括用于表征目标颜色特征的第一方面,用于表征目标大小特征的第二方面和用于表征目标轮廓特征的第三方面,第一方面的第一子特征向量用于表征待分类图像的目标颜色特征,第二方面的第一子特征向量用于表征待分类图像的目标大小特征,
第三方面的第一子特征向量用于表征待分类图像的目标轮廓特征。
97.例如,在方面数量为n的情况下,且初始特征向量中的特征通道的通道数量(第一维度的尺寸)为r的情况下,可以基于初始特征向量中的特征通道(第一维度),将初始特征向量分割为尺寸为r/n
×
(该第一维度下的其他维度特征)。在该初始特征向量为一维向量(h1、h2、

、h
r
)的情况下,可以将该初始特征向量分割为(h1、h2、

、h
r/n
)、(h
r/n+1
、h r/n+2


、h
2r/n
)、

(h
(n

1)r/n+1
、h
(n

1)r/n+2


、h
r
);在该初始特征向量为三维向量(h1×
(e1×
w1)、h2×
(e2×
w2)、

、h
r
×
(e
r
×
w
r
))的情况下,可以将该初始特征向量分割为(h1×
(e1×
w1)、h2×
(e2×
w2)、

、h
r/n
×
(e
r/n
×
w
r/n
))、(h
r/n+1
×
(e
r/n+1
×
w
r/n+1
)、h
r/n+2
×
(e
r/n+2
×
w
r/n+2
)、

、h
2r/n
×
(e
2r/n
×
w
2r/n
))、

(h
(n

1)r/n+1
×
(e
(n

1)r/n+1
×
w
(n

1)r/n+1
)、h2×
(e
(n

1)r/n+2
×
w
(n

1)r/n+2
)、

、h
r
×
(e
r
×
w
r
))。
98.基于上述实施方式中从特征通道的维度对所述初始特征向量进行分割的方案,相比于相关技术中不对初始特征向量进行分割的方案,可以实现从不同方面获取图像特征的效果;同时,相比于相关技术中,采用基于初始特征向量中一个特征元素跟另一个特征元素之间的相关性将相关性较大的部分特征元素作为一个方面的特征的聚类方法,不仅可以提高得到不同方面的子特征向量的获取效率,而且可以避免由于聚类错误使得特征元素被不合理割裂,进而导致子特征向量无法准确表征当前方面下特征信息的问题。
99.在s402中,获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征;所述权重向量包括每一所述方面对应的子权重;所述类别原型向量包括每一所述方面对应的子类别向量。
100.其中,该权重向量包括每一方面对应的子权重。权重向量可以包括n个方面的子权重,每一子权重的尺寸相同。即,若第一个权重的尺寸为常数,第n个权重的尺寸也为常数;若第一个权重的尺寸为“l1
×
l2”的二维权重矩阵,第n个权重的尺寸也为“l1
×
l2”的二维权重矩阵。
101.需要说明的是,该预设类别在不同方面中分配的权重用于表征该预设类别对于不同方面的关注程度。例如,在预设类别为“沙漠”的情况下,对于存在的3个方面,包括用于表征目标颜色特征的第一方面,用于表征目标大小特征的第二方面和用于表征目标轮廓特征的第三方面,上述3个方面对应的子权重分别为“0.3”、“0.56”和“0.14”,可以说明,“沙漠”类别对于“目标大小特征”关注度较高,对于“目标颜色特征”关注度中等,对于“目标轮廓特征”关注度较低。
102.在一些可能的实现方式中,s403可以通过以下s4031和s4032实现。其中,
103.在s4031中,针对每一所述预设类别,根据所述预设类别中每一所述方面对应的第一子特征向量和每一所述方面对应的子类别向量,确定每一所述方面对应的第一子距离。
104.在s4042中,根据每一所述方面对应的子权重和每一所述方面对应的第一子距离,确定所述预设类别对应的第一距离量化值。
105.例如,在第一特征向量为包括(h1、h2、

、h
r/n
)、(h
r/n+1
、h
r/n+2


、h
2r/n
)、

(h
(n

1)r/n+1
、h
(n

1)r/n+2


、h
r
)的一维向量,任一预设类别对应的类别原型向量同样为包括(y1、y2、

、y
r/n
)、(y
r/n+1
、y
r/n+2


、y
2r/n
)、

(y
(n

1)r/n+1
、y
(n

1)r/n+2


、y
r
)的一维向量,则分别计算该第一特征向量和该类别原型向量在每一方面对应的第一子距离,可以得到第n方
面的第一子距离为d
n
=d{(h
(n

1)r/n+1
、h
(n

1)r/n+2


、h
nr/n
),(y
(n

1)r/n+1
、y
(n

1)r/n+2


、y
nr/n
)},即得到包括(d1、d2、

、d
n
)的n个方面的第一子距离;在该权重向量为包括(t1、t2、

t
n
)的一维向量的情况下,可以得到该预设类别对应的第一距离量化值d=(d1*t1+d2*t2+

+d
n
*t
n
)。
106.在一些可能的实现方式中,可以通过以下方式实现s304:在每一预设类别对应的第一距离量化值中,确定最小的第一距离量化值;将最小的第一距离量化值对应的预设类别确定为待分类图像的分类结果。
107.通过本公开实施例对于图4的上述示例性实施可知,本公开实施例通过获取将第一特征向量划分为多个方面中每一方面下的第一子特征向量,并结合每一预设类别在每一所述方面下的子权重,确定该待分类图像与每一预设类别之间的特征差异,进而得到最终的分类结果。其中,由于每一个第一子特征向量用于表征对应的方面下的视觉特征,且预设类别在不同方面中分配的权重用于表征该预设类别对于不同方面的关注程度,使得每一预设类别的第一距离量化值可以更加准确的表征该待分类图像不属于该预设类别的概率,可以进一步的提升图像分类的准确度。
108.在本公开提供的另一个实施例中,参见图5,图5是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,在图3或图4所示步骤之前,可以通过s501至s505得到训练后的分类网络。
109.在s501中,针对每一所述样本图片,通过初始分类网络获取所述样本图片的第二特征向量,以及每一所述预设类别对应的权重向量和类别原型向量。
110.在一些可能的实现方式中,上述图像分类方法可以通过图像分类网络实现,其中,可以基于初始分类网络和训练样本得到该图像分类网络,在利用该训练样本对该初始分类网络进行训练的过程中,该训练样本包括每一预设类别对应的训练样本集,且每一训练样本集包括属于对应预设类别的多个样本图片,即每一样本图片均携带该预设类别标签。
111.在一些可能的实现方式中,针对每一样本图片,该初始分类网络可以用于提取该样本图片对应的第二特征向量;同时,针对每一预设类别对应的训练样本集,该初始分类网络还可以获取每一预设类别对应的权重向量和类别原型向量。其中,上述s501可以包括以下实施方式的至少之一:
112.在s5011中,针对每一所述预设类别,通过所述初始分类网络获取所述预设类别对应的多个样本图片对应的多个第二特征向量;基于所述多个第二特征向量,确定所述预设类别对应的类别原型向量。
113.在一些可能的实现方式中,在提取任意一个预设类别的类别原型向量的过程中,可以从该预设类别对应的多个样本图片中获取部分或全部的样本图片,提取获取到的每一样本图片的第二特征向量,对得到的多个第二特征向量进行平均,得到该预设类别对应的类别原型向量。
114.在s5012中,针对每一所述预设类别,基于所述预设类别对应的多个样本图片和所述预设类别对应的语义特征向量,得到所述预设类别对应的权重向量。
115.在一些可能的实现方式中,可以对所述预设类别中多个样本图片对应的类别原型向量和所述预设类别对应的语义特征向量进行融合,并基于融合后的特征向量得到所述预设类别对应的权重向量。
116.在s502中,基于第二距离量化值的最小值所对应的类别,确定所述样本图片的预
测分类结果,其中,所述第二距离量化值基于所述第二特征向量,每一所述预设类别对应的权重向量和类别原型向量确定。
117.在一些可能的实现方式中,针对每一样本图片,可以基于该样本图片的第二特征向量和每一预设类别对应的类别原型向量确定该样本图片在每一预设类别的距离,并根据该样本图片在每一预设类别的距离和每一预设类别对应的权重向量,确定该样本图片在每一预设类别的第二距离量化值,将第二距离量化值的最小值所对应的类别,作为所述样本图片的预测分类结果。
118.在s503中,根据所述样本图片的预测分类结果和所述样本图片的分类标签,确定所述初始分类网络的损失值。
119.在s504中,根据所述损失值对所述预设分类网络进行优化,得到所述图像分类网络。
120.在一些可能的实现方式中,可以根据初始分类网络的预测分类结果和预设类别,计算得到初始分类网络的损失值,并利用损失值调整初始分类网络中的网络参数。在一个具体的实施场景中,可以采用交叉熵损失(crossentropy loss)或者softmax逻辑损失(logistic softmax loss)等来计算损失值,在此不做限定。
121.在一些可能的实现方式中,训练后的图像分类网络用于对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征;获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征;基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值;基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果。
122.通过本公开实施例对于图5的上述示例性实施可知,本公开实施例通过每一预设类别对应的多个样本图片对初始分类网络进行训练,利用每一样本图片的预测分类结果和预设类别确定的初始分类网络的损失值调整初始分类网络中的网络参数,以得到训练后的图像分类网络,通过本公开实施例训练得到的图像分类网络,相比于传统技术中的图像分类方案,由于结合描述预设类别的语义特征,对提取的特征向量进行分类,提升了图像分类的准确度。
123.在本公开提供的另一个实施例中,参见图6,图6是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,基于图5,图5中的步骤s5012可以通过s601至s603实现。
124.在s601中,基于所述预设类别对应的多个样本图片,确定所述预设类别对应的类别原型向量。
125.在一些可能的实现方式中,s601中确定所述预设类别对应的类别原型向量的方式与上述实施例中s501中确定所述预设类别对应的类别原型向量的方式相同。
126.在s602中,基于预设的融合权重,对所述预设类别对应的类别原型向量和所述预设类别对应的语义特征向量进行融合,得到所述预设类别对应的融合特征向量。
127.在一些可能的实现方式中,该融合权重用于确定视觉特征和语义特征之间的相对重要程度。示例性的,该融合权重可以包括类别原型向量对应的第一权重参数和语义特征
向量对应的第二权重参数,在该第一权重参数大于所述第二权重参数的情况下,表示视觉特征的重要程度大于语义特征的重要程度;在该第一权重参数小于所述第二权重参数的情况下,表示视觉特征的重要程度小于语义特征的重要程度;在该第一权重参数等于所述第二权重参数的情况下,即上述融合过程为向量的平均过程,表示视觉特征的重要程度与语义特征的重要程度相同。
128.在s603中,基于所述融合特征向量,确定所述预设类别对应的权重向量。
129.在一些可能的实现方式中,可以通过softmax层将上述融合特征向量转换为当前预设类别对应的权重向量。
130.通过本公开实施例对于图6的上述示例性实施可知,本公开实施例通过融合预设类别的类别原型向量和对应的语义特征向量,并基于融合后的融合特征向量确定权重向量,可以使得到的权重向量可以更加准确的表征各个方面对于当前预设类别的重要程度,提升了后续确定待分类图像与该预设类别之间的距离量化值的准确度。
131.在本公开提供的另一个实施例中,参见图7,图7是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,基于图5,图5中的步骤s5012还可以通过s701至s704实现。
132.在s701中,通过所述初始分类网络对所述预设类别对应的多个样本图片进行特征提取,得到所述多个样本图片对应的多个初始特征向量。
133.在s702中,基于预设的融合权重,对每一所述样本图片对应的所述初始特征向量和所述预设类别对应的语义特征向量进行融合,得到每一所述样本图片对应的融合特征向量。
134.在一些可能的实现方式中,针对每一样本图片,基于预设的融合权重对将该样本图片对应的初始特征向量和该预设类别对应的特征向量进行融合得到每一所述样本图片对应的融合特征向量;该融合权重用于确定视觉特征和语义特征之间的相对重要程度。需要说明的是,s702中的融合权重可以与s602中的融合权重相同,也可以不同。
135.在s703中,分别基于每一所述样本图片对应的融合特征向量,确定每一所述样本图片对应的中间权重向量。
136.在一些可能的实现方式中,针对每一样本图片对应的融合特征向量,可以通过softmax层将每一融合特征向量转换为当前预设类别对应的中间权重向量。
137.在s704中,基于每一所述样本图片对应的中间权重向量,确定所述预设类别对应的权重向量。
138.在一些可能的实现方式中,可以直接对每一样本图片对应的中间权重向量进行平均,得到该预设类别对应的权重向量;在另一些实施例中,还可以对得到的每一样本图片对应的中间权重向量进行过滤,去除与整体权重向量差异较大的至少一个中间权重向量,将经过过滤处理的至少一个中间权重向量的平均向量作为所述预设类别对应的权重向量。其中,整体权重向量可以为所有样本图片对应的中间权重向量的平均向量,通过判断将中间权重向量与整体权重向量之间的距离,确定上述差异,并将差异较大的至少一个中间权重向量作为待过滤的中间权重向量。
139.通过本公开实施例对于图7的上述示例性实施可知,本公开实施例通过分别计算每一样本图片对应的初始特征向量和对应的语义特征向量,并基于融合后的融合特征向量
确定每一样本图片对应的中间权重向量,可以使得到的权重向量可以更加准确的表征各个方面对于当前预设类别的重要程度;同时,基于每一所述样本图片对应的中间权重向量,确定所述预设类别对应的权重向量,可以得到具有鲁棒性的权重向量,可以提升后续确定待分类图像与该预设类别之间的距离量化值的准确度。
140.在本公开提供的另一个实施例中,参见图8,图8是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,基于图5,在图5中的步骤s503之前,还可以包括s801至s802。
141.在s801中,通过至少一种语义提取模型对所述预设类别的类别标识进行特征提取,得到每一所述语义提取模型对应的初始语义特征。
142.在一些可能的实现方式中,上述至少一种语义提取模型可以包括以下语义提取模型中的至少之一:word2vec、glove、fasttext以及bert。其中,在对该预设类别的类别标识进行特征提取的过程中,可以分别采用任意一种语义提取模型对该类别标识的进行特征提取,将对应的word embedding作为该语义提取模型对应的初始语义特征。
143.其中,可以先获取每一预设类别的类别标识,该类别标识可以为预设类别的类别名称,类别别称,类别标号等用于区别该预设类别与其他预设类别的标识。
144.在s802中,基于每一所述语义提取模型对应的语义权重对每一所述语义提取模型对应的初始语义特征进行融合,得到所述预设类别对应的语义特征向量。
145.在一些可能的实现方式中,由于不同的语义提取模型采用的网络结构和特征传递机制并不相同,也就是说,每一语义提取模型对于相同的类别标识可以得到不同的初始语义特征,因此,需要根据实际场景的需求,对每一语义提取模型对应的初始语义特征进行加权融合。其中,可以获取预设的每一所述语义提取模型对应的语义权重,基于上述语义权重,对每一所述语义提取模型对应的初始语义特征进行融合,得到所述预设类别对应的语义特征向量。
146.通过本公开实施例对于图8的上述示例性实施可知,本公开通过获取每一语义提取模型针对同一类别标识提取的不同的初始语义特征,可以从不同的语义提取模型中获取该类别标识在不同关注点(不同模型)下的语义特征,进而可以得到更加全面的预设类别对应的语义特征向量;同时,由于针对不同的语义提取模型设置不同的语义权重,可以进一步提升语义特征向量的准确性。
147.在一些可能的实现方式中,该至少一种语义提取模型包括第一语义提取模型,该第一语义模型可以为bert模型,参见图9,图9是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,基于图8,图8中的步骤s802可以包括s901至s902。
148.在s901中,基于所述第一语义提取模型,获取所述类别标识对应的词向量集合;所述词向量集合包括多个场景词向量;不同的场景词向量用于表征所述类别标识在不同场景下的上下文特征。
149.在一些可能的实现方式中,可以通过s9011至s9014实现上述基于所述第一语义提取模型,获取所述类别标识对应的词向量集合:
150.在s9011中,获取所述类别标识对应的多个场景文本;每一所述场景文本包括所述类别标识。
151.在一些可能的实现方式中,该类别标识对应的场景文本可以为包括该类别标识的
文本数据。其中,该场景文本的形式可以为“xxxxx+类别标识+xxxx”,“x”为任意文本。例如,在预设类别为“沙漠”的情况下,该类别标识对应的场景文本可以为“沙漠真大啊”、“沙漠是一片黄色的海洋”或“沙漠的颜色真单一”等。
152.在s9012中,对每一场景文本进行掩码处理,以得到每一场景文本对应的包含目标字符的待提取文本;掩码处理用于将类别标识替换为目标字符。
153.在一些可能的实现方式中,若场景文本由第一字符至第n字符组成,其中,类别标识在该场景文本中为第m字符到第m+m字符,其中,m大于等于1,m+m小于或等于n,m为该类别标识所对应的字符数。该掩码处理包括:利用一个目标字符替换该场景文本中的类别标识,即替换该场景文本中的第m字符到第m+m字符。
154.其中,在进行掩码处理的过程中,只对该类别标识进行替换,即,若场景文本由第一字符至第n字符组成,在将类别标识替换为目标字符后,该目标字符在该场景文本中为第m字符,经过掩码处理后的场景文本由第一字符至第n

m+1字符组成。例如,在预设类别为“沙漠”的情况下,该类别标识对应的场景文本可以为“沙漠真大啊”,在完成掩码处理后,可以得到场景文本为“z真大啊”,其中,z为目标字符。
155.其中,在进行掩码处理的过程中,还可以同时对该类别标识及场景文本中的其他词汇进行替换,即,若场景文本由第一字符至第n字符组成,在将类别标识替换为目标字符的同时,将场景文本中的其他词汇替换为其他字符。例如,在预设类别为“沙漠”的情况下,该类别标识对应的场景文本可以为“沙漠是一片黄色的海洋”,在完成掩码处理后,可以得到场景文本为“z1是一片z2的z3”,其中,z1为目标字符,z2为“黄色”的替换字符,z3为“海洋”的替换字符。在对其他词汇进行替换之前,可以采用实体分割算法,词汇分割算法对该场景文本进行词汇提取,该词汇可以是实体文本,也可以是词汇文本。通过替换,可以降低模型训练时的计算量,同时,也可以使得目标字符的字符向量更加准确的反映上下文特征。
156.在s9013中,将每一所述待提取文本输入至所述第一语义提取模型,得到所述类别标识在每一所述待提取文本中的字符向量;所述第一语义提取模型用于提取所述待提取文本中所述目标字符的字符向量;所述字符向量用于表征所述目标字符在所述待提取文本中的上下文特征。
157.在一些可能的实现方式中,第一语义提取模型输出的是待提取文本中每一字符对应的字符向量,在本公开实施例中,只需要该目标字符对应的字符向量,即将该目标字符对应的字符向量作为类别标识在每一待提取文本中的字符向量。
158.在s9014中,将所述类别标识在每一所述待提取文本中的字符向量确定为所述场景词向量,以得到所述类别标识对应的词向量集合。
159.通过本公开实施例对于图8的上述示例性实施可知,本公开通过对类别标识对应的多个场景文本进行掩码处理,并结合第一语义提取模型提取该类别标识在各场景文本中的上下文特征,为上述实施例中的图像分类提供了数据基础,提升了图像分类的准确度。
160.在s902中,基于所述类别标识对应的多个场景词向量,确定所述第一语义提取模型对应的初始语义特征。
161.在一些可能的实现方式中,针对一个类别标识,可以根据每一场景词向量的加权权重,对多个场景词向量进行加权求和,得到该类别标识对应的词向量。其中,每一场景词向量的加权权重可以相同,即对该类别标识对应的多个场景词向量进行平均,以得到该别
标识对应的词向量;每一场景词向量的加权权重还可以基于该词向量所在场景的重要程度来确定,重要程度越高,场景词向量的加权权重越高;每一场景词向量的加权权重还可以基于该词向量所在的场景文本的出现频率来确定;场景文本的出现频率越高,场景词向量的加权权重越高。
162.通过本公开实施例对于图9的上述示例性实施可知,本公开通过获取每一类别标识对应的多个场景词向量,确定每一类别标识对应的词向量,可以使得每一类别标识对应的词向量可以应用于不同场景下的图像分类过程,不仅可以提升本公开实施例中图像分类方法的应用范围,还可以提升图像分类的准确度。
163.在本公开提供的另一个实施例中,参见图10,图10是本公开实施例提供的图像分类方法的一个可选的模型训练流程示意图,基于图5,图5中的模型训练流程还可以包括s1001至s1002。
164.在s1001中,接收新增类别的训练请求;所述训练请求携带所述新增类别的类别标识和训练样本集;
165.在一些可能的实现方式中,在得到所述图像分类网络之后,由于该图像分类网络只能对当前的预设类别对应的图片进行分类,为了提升该图像分类网络的应用范围,需要对该已训练完成的图像分类网络进行再次训练,以得到可以处理新增类别图像的分类任务的图像分类网络。举例来说,若经过图5的训练过程,该图像分类网络只能对类别a、类别b和类别c三个预设类别的图像进行分类,即,针对一个待分类图像,该图像分类网络只能确定该待分类图像是类别a、类别b和类别c三个预设类别中的一个,即使该待分类图像属于类别d,该图像分类网络也只能将该待分类图像确定为类别a、类别b和类别c三个预设类别中的任意一个。
166.基于上述需求,可以接收新增类别的训练请求,该训练请求用于将所述新增类别添加至所述图像分类网络中的预设类别。同时,该训练请求携带所述新增类别的类别标识和训练样本集,以完成对所述图像分类网络的训练。
167.在s1002中,响应于所述训练请求,基于所述新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量;所述新增类别对应的权重向量和类别原型向量用于确定所述待分类图像在所述新增类别对应的第一距离量化值。
168.在一些可能的实现方式中,可以通过s10021至s10022实现上述通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量:
169.s10021、基于所述新增类别的训练样本集对应的多个样本图片,通过所述图像分类网络确定所述新增类别对应的类别原型向量。
170.其中,确定所述新增类别对应的类别原型向量的方法与上述实施例中的s5011中确定所述预设类别对应的类别原型向量相同。
171.s10022、基于所述新增类别对应的类别原型向量,和所述新增类别对应的语义特征向量确定所述新增类别对应的权重向量;所述语义特征向量基于所述新增类别的类别标识确定。
172.其中,基于所述新增类别对应的类别原型向量,和所述新增类别对应的语义特征向量确定所述新增类别对应的权重向量的方法与上述实施例中的s5012中基于所述预设类
别对应的多个样本图片和所述预设类别对应的语义特征向量,得到所述预设类别对应的权重向量相同。
173.本公开实施例对于图10的上述示例性实施可知,本公开实施例响应于新增类别的训练请求,利用新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向量和类别原型向量,进而可以在后续的图像分类任务中,利用该新增类别对应的权重向量和类别原型向量确定所述待分类图像在所述新增类别对应的第一距离量化值,以完成该新增类别对应的图像分类任务,提升了该图像分类网络的应用范围。
174.下面,将说明本公开实施例在一个实际的应用场景中的示例性应用。
175.小样本图像分类旨在基于少量的训练图像就可以分类出新类别未见过的图像。当前基于度量学习的方法在小样本学习任务上取得了很大的突破。但是在可训练图像的数量很少的情况下,模型很难决定哪些视觉特征在所考虑的分类类别中是最具代表性的。因此,在小样本的情景下,只依赖于数量不多的训练图像,很难使得模型具体很强的鲁棒性。
176.发明人经过研究发现,若考虑使用词向量作为额外的辅助信息,可以帮助模型在少量训练图像样本的情况下进行准确的分类。相关技术中都将图像视觉特征视作整体,没有深度挖掘图像特征本身内部的可区别信息。
177.本公开实施例将整体视觉特征进一步细粒度的划分成若干方面集合(如形状方面,颜色方面等),深度挖掘图像特征本身内部的可区别信息,进而提出了一种全新的利用词向量的小样本图像分类方法。实施例中视觉特征的维度“1
×1×
c”只是实例性的说明,并不限定本公开中可以得到的视觉特征的维度,该视觉特征的维度还可以是“1
×
c
×
1”、“c
×1×
1”、“n
×
c
×
n”、“c
×
n
×
n”和“n
×
n
×
c”等。
178.步骤一,将所有的图片输入到一个深度卷积网络中,每张图片都能得到一个1
×1×
c的视觉特征。
179.步骤二,将每一个视觉特征沿特征通道维度平均分割成m个方面特征。
180.其中,每张图片经过深度神经网络(如resnet

18)都可以得到一个1
×1×
c的视觉特征。提前定义每张图片有m个方面,沿特征通道维度将视觉特征平均分割m部分,从而会得到m个维度为1
×1×
(c/m)的方面特征。
181.步骤三,根据每个类的类名称,通过bert语言模型获取到相应类的词向量。
182.其中,对于每个类别的词向量产生,本公开实施例使用bert语言模型。bert语言模型的输入是以序列形式的句子。根据类别的名字,本公开实施例从网络中的百科资料或本地存储的类别描述数据库中找到大量(例如,1000个)包含此名字的句子,对于每个句子的序列,将类名称用[mask]token替换,输入到bert模型中。将bert的输出的[mask]的向量作为这个名称的词向量,最终将1000个[mask]的向量的平均值作为该类名称的词向量。
[0183]
训练过程遵循episode机制,每个episode遵循n

way k

shot设置,n代表有n个类,k代表每个类别有k张训练图片。每张训练图片都能得到m个维度为1
×1×
(c/m)的方面特征。对于每个类别取k个训练样本的平均值特征作为该类别的原型。也就是每个类别都有m个维度为1
×1×
(c/m)的原型方面特征。
[0184]
步骤四,根据每个类的词向量生成每个类的重要分数,重要分数包括m个方面中每个方面的分数。
[0185]
其中,应用一个全联接网络,输入为类别的bert词向量,输出为m维度的向量,并通
过一个softmax层,得到每个方面的重要分数。
[0186]
步骤五,根据每个类的重要分数给m个方面特征分配权重,最终通过欧几里得距离进行图像分类。
[0187]
其中,对于一张测试图片,也可以得到相应的m个维度为1
×1×
(c/m)的方面特征,将他们分别跟n个类的原型方面特征根据步骤四得到的重要分数进行加权求的欧几里得距离,选择距离最小的类别作为该测试图片的类别。
[0188]
可以看出,本公开实施例相比同样使用了词向量的小样本学习方法,使用了bert词向量,具有更丰富的语义信息。利用bert词向量生成每个方面的重要分数,取得了更好的分类效果。
[0189]
下面继续说明本公开实施例提供的图像分类装置555的实施为软件模块的示例性结构,在一些可能的实现方式中,如图2所示,存储在存储器550的图像分类装置555中的软件模块可以包括:
[0190]
提取模块5551,用于对待分类图像进行特征提取,得到第一特征向量;所述第一特征向量用于表征所述待分类图像的视觉特征;
[0191]
获取模块5552,用于获取至少一个预设类别中每一所述预设类别对应的权重向量和类别原型向量;所述权重向量用于至少表征所述预设类别描述文本的语义特征;所述类别原型向量用于表征所述预设类别的类别原型特征;
[0192]
确定模块5553,用于基于根据所述第一特征向量,和每一所述预设类别对应的权重向量和类别原型向量,确定每一所述预设类别对应的第一距离量化值;
[0193]
分类模块5554,用于基于满足预设条件的第一距离量化值所对应的类别,确定所述待分类图像的分类结果。
[0194]
在一些可能的实现方式中,所述第一特征向量包括多个方面中每一所述方面对应的第一子特征向量;所述权重向量包括每一所述方面对应的子权重;所述类别原型向量包括每一所述方面对应的子类别向量;所述确定模块5553,还用于针对每一所述预设类别,根据所述预设类别中每一所述方面对应的第一子特征向量,和每一所述方面对应的子类别向量,确定每一所述方面对应的第一子距离;根据每一所述方面对应的子权重和每一所述方面对应的第一子距离,确定所述预设类别对应的第一距离量化值。
[0195]
在一些可能的实现方式中,所述提取模块5551,还用于对所述待分类图像进行特征提取,得到初始特征向量;从特征通道的维度对所述初始特征向量进行分割,得到每一所述方面对应的第一子特征向量。
[0196]
在一些可能的实现方式中,所述分类模块5554,还用于在每一所述预设类别对应的第一距离量化值中,确定最小的第一距离量化值;将所述最小的第一距离量化值对应的预设类别,确定为所述待分类图像的分类结果。
[0197]
在一些可能的实现方式中,图像分类装置555还可以包括训练模块,上述实施例可以通过图像分类网络实现,所述图像分类网络的训练样本包括:每一所述预设类别对应的训练样本集,所述训练样本集包括多个样本图片,所述训练模块用于针对每一所述样本图片,通过初始分类网络获取所述样本图片的第二特征向量,以及每一所述预设类别对应的权重向量和类别原型向量;基于第二距离量化值的最小值所对应的类别,确定所述样本图片的预测分类结果,其中,所述第二距离量化值基于所述第二特征向量,每一所述预设类别
对应的权重向量和类别原型向量确定;根据所述样本图片的预测分类结果和所述样本图片的分类标签,确定所述初始分类网络的损失值;根据所述损失值对所述预设分类网络进行优化,得到所述图像分类网络。
[0198]
在一些可能的实现方式中,所述训练模块还用于针对每一所述预设类别,通过所述初始分类网络获取所述预设类别对应的多个样本图片对应的多个第二特征向量;基于所述多个第二特征向量,确定所述预设类别对应的类别原型向量。
[0199]
在一些可能的实现方式中,所述训练模块还用于针对每一所述预设类别,基于所述预设类别对应的多个样本图片和所述预设类别对应的语义特征向量,得到所述预设类别对应的权重向量。
[0200]
在一些可能的实现方式中,所述训练模块还用于基于所述预设类别对应的多个样本图片,确定所述预设类别对应的类别原型向量;基于预设的融合权重,对所述预设类别对应的类别原型向量和所述预设类别对应的语义特征向量进行融合,得到所述预设类别对应的融合特征向量;基于所述融合特征向量,确定所述预设类别对应的权重向量。
[0201]
在一些可能的实现方式中,所述训练模块还用于通过所述初始分类网络对所述预设类别对应的多个样本图片进行特征提取,得到所述多个样本图片对应的多个初始特征向量;基于预设的融合权重,对每一所述样本图片对应的所述初始特征向量和所述预设类别对应的语义特征向量进行融合,得到每一所述样本图片对应的融合特征向量;分别基于每一所述样本图片对应的融合特征向量,确定每一所述样本图片对应的中间权重向量;基于每一所述样本图片对应的中间权重向量,确定所述预设类别对应的权重向量。
[0202]
在一些可能的实现方式中,所述训练模块还用于通过至少一种语义提取模型对所述预设类别的类别标识进行特征提取,得到每一所述语义提取模型对应的初始语义特征;基于每一所述语义提取模型对应的语义权重对每一所述语义提取模型对应的初始语义特征进行融合,得到所述预设类别对应的语义特征向量。
[0203]
在一些可能的实现方式中,所述至少一种语义提取模型包括第一语义提取模型,所述训练模块还用于基于所述第一语义提取模型,获取所述类别标识对应的词向量集合;所述词向量集合包括多个场景词向量;不同的场景词向量用于表征所述类别标识在不同场景下的上下文特征;基于所述类别标识对应的多个场景词向量,确定所述第一语义提取模型对应的初始语义特征。
[0204]
在一些可能的实现方式中,所述训练模块还用于获取所述类别标识对应的多个场景文本;每一所述场景文本包括所述类别标识;对每一所述场景文本进行掩码处理,以得到每一场景文本对应的包含目标字符的待提取文本;所述掩码处理用于将所述场景文本替换为所述目标字符;将每一所述待提取文本输入至所述第一语义提取模型,得到所述类别标识在每一所述待提取文本中的字符向量;所述第一语义提取模型用于提取所述待提取文本中所述目标字符的字符向量;所述字符向量用于表征所述目标字符在所述待提取文本中的上下文特征;将所述类别标识在每一所述待提取文本中的字符向量确定为所述场景词向量,以得到所述类别标识对应的词向量集合。
[0205]
在一些可能的实现方式中,所述训练模块还用于接收新增类别的训练请求;所述训练请求携带所述新增类别的类别标识和训练样本集;响应于所述训练请求,基于所述新增类别的类别标识和训练样本集,通过所述图像分类网络确定所述新增类别对应的权重向
量和类别原型向量;所述新增类别对应的权重向量和类别原型向量用于确定所述待分类图像在所述新增类别对应的第一距离量化值。
[0206]
在一些可能的实现方式中,所述训练模块还用于基于所述新增类别的训练样本集对应的多个样本图片,通过所述图像分类网络确定所述新增类别对应的类别原型向量;基于所述新增类别对应的类别原型向量,和所述新增类别对应的语义特征向量确定所述新增类别对应的权重向量;所述语义特征向量基于所述新增类别的类别标识确定。
[0207]
本公开实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本公开实施例上述的图像分类方法。
[0208]
本公开实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本公开实施例提供的图像分类方法,例如,如图3至图10示出的方法。
[0209]
在一些可能的实现方式中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd

rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0210]
在一些可能的实现方式中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0211]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0212]
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0213]
以上所述,仅为本公开的实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本公开的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1