视觉类别的发现方法及装置、电子设备、存储介质转让专利

申请号 : CN202110497720.3

文献号 : CN112990377B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 秦永强李素莹敖川纪双西

申请人 : 创新奇智(北京)科技有限公司

摘要 :

本申请提供一种视觉类别的发现方法及装置、电子设备、计算机可读存储介质,方法包括:基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;对目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,指定条件为聚类结果以第一有标签数据的类别标签确定;以指定聚类算法对多个无标签数据进行聚类,确定聚类簇数;以聚类簇数对已训练的第一分类模型进行调整;其中,第一分类模型包括特征提取器;以调整后的第一分类模型对无标签数据进行预测,获得无标签数据的伪标签编号。本申请方案,消除了不合理的聚类,实现了新品视觉类别的发现。

权利要求 :

1.一种视觉类别的发现方法,其特征在于,包括:基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;其中,所述无标签数据和所述有标签数据为图像数据;

对所述目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,所述指定条件为聚类结果以第一有标签数据的类别标签确定;

以所述指定聚类算法对所述多个无标签数据进行聚类,确定聚类簇数;

以所述聚类簇数对已训练的第一分类模型进行调整,使得所述第一分类模型中第一分类器头的全连接层指示的类别数等同于所述聚类簇数;其中,所述第一分类模型包括所述特征提取器;

以调整后的第一分类模型对所述无标签数据进行预测,获得所述无标签数据的伪标签编号。

2.根据权利要求1所述的方法,其特征在于,在所述提取多个无标签数据和多个有标签数据的数据特征之前,所述方法还包括:利用所述多个有标签数据对未训练的第二分类模型进行训练,获得已训练的第二分类模型;其中,所述未训练的第二分类模型包括经过初步训练的特征提取器和未训练的第二分类器头,所述已训练的第二分类模型包括已训练的第二分类器头和已训练的特征提取器。

3.根据权利要求1所述的方法,其特征在于,所述指定聚类算法包括多个子聚类算法;

所述以所述指定聚类算法对所述多个无标签数据进行聚类,包括:针对每一子聚类算法对所述目标数据集中无标签数据和第二有标签数据对应数据特征的聚类结果,依据评估算法对所述聚类结果进行评估;

选择评估效果最好的子聚类算法对所述多个无标签数据的数据特征进行聚类。

4.根据权利要求1所述的方法,其特征在于,在所述以所述聚类簇数对已训练的第一分类模型进行调整之前,所述方法还包括:根据多个无标签数据构建多个无标签数据对;其中,所述无标签数据对包括两个无标签数据;

通过经过初步训练的特征提取器提取所述无标签数据对中无标签数据的数据特征;

判断所述无标签数据对中两个无标签数据的数据特征是否匹配;

根据匹配结果为所述无标签数据对生成匹配标签;

依据携带所述匹配标签的无标签数据对,对未训练的第一分类模型进行训练,获得已训练的第一分类模型。

5.根据权利要求4所述的方法,其特征在于,所述数据特征为多维向量;

所述判断所述无标签数据对中两个无标签数据的数据特征是否匹配,包括:针对所述无标签数据对中两个无标签数据的数据特征,分别选择所述数据特征最大的指定数量维度的元素,构成所述数据特征的比较参数;

判断两个无标签数据对应的比较参数之间的相似度是否达到预设相似度阈值;

如果是,确定所述无标签数据对中两个无标签数据的数据特征匹配。

6.根据权利要求2或4所述的方法,其特征在于,所述特征提取器通过如下方式训练得到:

以有标签数据集的有标签数据和无标签数据集的无标签数据作为训练数据;

提取所述训练数据的基础特征,作为所述训练数据的基础特征标签;

根据添加所述基础特征标签的多个训练数据,对所述特征提取器进行训练,获得经过初步训练的特征提取器。

7.根据权利要求6所述的方法,其特征在于,所述提取所述训练数据的基础特征,作为所述训练数据的基础特征标签,包括:通过数据增强对所述训练数据进行随机旋转,获得所述训练数据的旋转方向信息,作为基础特征;

将所述旋转方向信息作为所述训练数据的基础特征标签。

8.一种视觉类别的发现装置,其特征在于,包括:提取模块,用于基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;其中,所述无标签数据和所述有标签数据为图像数据;

第一聚类模块,用于对所述目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,所述指定条件为聚类结果以第一有标签数据的类别标签确定;

第二聚类模块,用于以所述指定聚类算法对所述多个无标签数据进行聚类,确定聚类簇数;

调整模块,用于以所述聚类簇数对已训练的第一分类模型进行调整,使得所述第一分类模型中第一分类器头的全连接层指示的类别数等同于所述聚类簇数;其中,所述第一分类模型包括所述特征提取器;

预测模块,用于以调整后的第一分类模型对所述无标签数据进行预测,获得所述无标签数据的伪标签编号。

9.一种电子设备,其特征在于,所述电子设备包括:处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行权利要求1‑7任意一项所述的视觉类别的发现方法。

10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1‑7任意一项所述的视觉类别的发现方法。

说明书 :

视觉类别的发现方法及装置、电子设备、存储介质

技术领域

[0001] 本申请涉及图像处理技术领域,特别涉及一种视觉类别的发现方法及装置、电子设备、计算机可读存储介质。

背景技术

[0002] 机器学习在图像分类任务上已经取得较为成功的应用和实践,但通常需要大量标注数据作为机器学习模型的训练集。在实际应用场景中,图像中要识别的类别会处于动态
变化,短时间内要依靠人工对新类别进行标注几乎无法实现。比如,在零售产品识别场景
中,超市或零售店每周甚至每天都会有大量新品、新包装引入,对于图像分类任务而言,新
品或新包装均属于新的类别。

发明内容

[0003] 本申请实施例的目的在于提供一种视觉类别的发现方法及装置、电子设备、计算机可读存储介质,用于发现图像中的目标类别,并可确定新类别。
[0004] 一方面,本申请提供了一种视觉类别的发现方法,包括:
[0005] 基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;
[0006] 对所述目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,所述指定条件为聚类结果以第一有标签数据的类别标签确定;
[0007] 以所述指定聚类算法对所述多个无标签数据进行聚类,确定聚类簇数;
[0008] 以所述聚类簇数对已训练的第一分类模型进行调整;其中,所述第一分类模型包括所述特征提取器;
[0009] 以调整后的第一分类模型对所述无标签数据进行预测,获得所述无标签数据的伪标签编号。
[0010] 在一实施例中,在所述提取多个无标签数据和多个有标签数据的数据特征之前,所述方法还包括:
[0011] 利用所述多个有标签数据对未训练的第二分类模型进行训练,获得已训练的第二分类模型;其中,所述未训练的第二分类模型包括经过初步训练的特征提取器和未训练的
第二分类器头,所述已训练的第二分类模型包括已训练的第二分类器头和已训练的特征提
取器。
[0012] 在一实施例中,所述指定聚类算法包括多个子聚类算法;
[0013] 所述以所述指定聚类算法对所述多个无标签数据进行聚类,包括:
[0014] 针对每一子聚类算法对所述目标数据集中无标签数据和第二有标签数据对应数据特征的聚类结果,依据评估算法对所述聚类结果进行评估;
[0015] 选择评估效果最好的子聚类算法对所述多个无标签数据的数据特征进行聚类。
[0016] 在一实施例中,在所述以所述聚类簇数对已训练的第一分类模型进行调整之前,所述方法还包括:
[0017] 根据多个无标签数据构建多个无标签数据对;其中,所述无标签数据对包括两个无标签数据;
[0018] 通过经过初步训练的特征提取器提取所述无标签数据对中无标签数据的数据特征;
[0019] 判断所述无标签数据对中两个无标签数据的数据特征是否匹配;
[0020] 根据匹配结果为所述无标签数据对生成匹配标签;
[0021] 依据携带所述匹配标签的无标签数据对,对未训练的第一分类模型进行训练,获得已训练的第一分类模型。
[0022] 在一实施例中,所述数据特征为多维向量;
[0023] 所述判断所述无标签数据对中两个无标签数据的数据特征是否匹配,包括:
[0024] 针对所述无标签数据对中两个无标签数据的数据特征,分别选择所述数据特征最大的指定数量维度的元素,构成所述数据特征的比较参数;
[0025] 判断两个无标签数据对应的比较参数之间的相似度是否达到预设相似度阈值;
[0026] 如果是,确定所述无标签数据对中两个无标签数据的数据特征匹配。
[0027] 在一实施例中,所述特征提取器通过如下方式训练得到:
[0028] 以有标签数据集的有标签数据和所述无标签数据集的无标签数据作为训练数据;
[0029] 提取所述训练数据的基础特征,作为所述训练数据的基础特征标签;
[0030] 根据添加所述基础特征标签的多个训练数据,对所述特征提取器进行训练,获得经过初步训练的特征提取器。
[0031] 在一实施例中,所述提取所述训练数据的基础特征,作为所述训练数据的基础特征标签,包括:
[0032] 通过数据增强对所述训练数据进行随机旋转,获得所述训练数据的旋转方向信息,作为基础特征;
[0033] 将所述旋转方向信息作为所述训练数据的基础特征标签。
[0034] 另一方面,本申请还提供了一种视觉类别的发现装置,包括:
[0035] 提取模块,用于基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;
[0036] 第一聚类模块,用于对所述目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,所述指定条件为聚类结果以第一有标签数据的类别标签
确定;
[0037] 第二聚类模块,用于以所述指定聚类算法对所述多个无标签数据进行聚类,确定聚类簇数;
[0038] 调整模块,用于以所述聚类簇数对已训练的第一分类模型进行调整;其中,所述第一分类模型包括所述特征提取器;
[0039] 预测模块,用于以调整后的第一分类模型对所述无标签数据进行预测,获得所述无标签数据的伪标签编号。
[0040] 进一步的,本申请还提供了一种电子设备,所述电子设备包括:
[0041] 处理器;
[0042] 用于存储处理器可执行指令的存储器;
[0043] 其中,所述处理器被配置为执行上述视觉类别的发现方法。
[0044] 另外,本申请还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述视觉类别的发现方法。
[0045] 本申请方案中,经过已训练的特征提取器对有标签数据和无标签数据提取数据特征之后,以有标签数据的数据特征和无标签数据的数据特征构建目标数据集,并针对目标
数据集进行半监督聚类,从而可以获得指定聚类算法;通过指定聚类算法对无标签数据的
数据特征进行聚类后,可以以聚类簇数确定无标签数据中目标物体的类别总数,并可以此
调整已训练的第一分类模型,从而可以根据调整后的第一分类模型对无标签数据进行分
类;在有标签数据的基础上,可以得到关于视觉类别的先验知识作为聚类参考,从而消除了
不合理的聚类,实现了新品视觉类别的发现。

附图说明

[0046] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
[0047] 图1为本申请一实施例提供的视觉类别的发现方法的应用场景示意图;
[0048] 图2为本申请一实施例提供的电子设备的结构示意图;
[0049] 图3为本申请一实施例提供的视觉类别的发现方法的流程示意图;
[0050] 图4为本申请一实施例提供的第二分类模型训练方法的流程示意图;
[0051] 图5为本申请一实施例提供的判断数据特征是否匹配的流程示意图;
[0052] 图6为本申请一实施例提供的特征提取器训练方法的流程示意图;
[0053] 图7为本申请一实施例提供的视觉类别的发现装置的框图。

具体实施方式

[0054] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0055] 相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,
术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0056] 图1为本申请实施例提供的视觉类别的发现方法的应用场景示意图。如图1所示,该应用场景包括客户端20和服务端30;客户端20可以是网络摄像机、手机、平板电脑等用户
终端,用于向服务端30发送图像分类请求;服务端30可以是服务器、服务器集群或云计算中
心,可以响应于对图像分类请求中的图像执行分类任务。
[0057] 如图2所示,本实施例提供一种电子设备1,包括:至少一个处理器11和存储器12,图2中以一个处理器11为例。处理器11和存储器12通过总线10连接,存储器12存储有可被处
理器11执行的指令,指令被处理器11执行,以使电子设备1可执行下述的实施例中方法的全
部或部分流程。在一实施例中,电子设备1可以是上述服务端30,用于执行视觉类别的发现
方法。
[0058] 存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存
储器(Electrically Erasable Programmable Read‑Only Memory,简称EEPROM),可擦除可
编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存
储器(Programmable Red‑Only Memory,简称PROM),只读存储器(Read‑Only Memory,简称
ROM),磁存储器,快闪存储器,磁盘或光盘。
[0059] 本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序可由处理器11执行以完成本申请提供的视觉类别的发现方法。
[0060] 参见图3,为本申请一实施例提供的视觉类别的发现方法的流程示意图,如图3所示,该方法可以包括以下步骤310‑步骤350。
[0061] 步骤310:基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集。
[0062] 服务端可以通过特征提取器对无标签数据集中无标签数据进行特征提取,以及,对有标签数据集中有标签数据进行特征提取,获得每个无标签数据局的数据特征和每个有
标签数据的数据特征。在一实施例中,数据特征可以是多维向量。
[0063] 其中,无标签数据集是无标签数据的集合。无标签数据集可表示为U={xi,i=1,2,……,M},这里,xi表示一个无标签数据,M表示无标签数据集中无标签数据的总量。无标
签数据可以是包含目标物体的图像数据,目标物体是需要被分类的物体;无标签数据未添
加目标物体的类别标签。
[0064] 有标签数据集是有标签数据的集合。有标签数据集可表示为L={(xi,yi),i=1,2,……,N,y∈{1,……,C}},这里,xi表示一个有标签数据,yi表示有标签数据的类别标签,N
表示有标签数据集中有标签数据的总量,C表示有标签数据集中目标物体的类别总量。
[0065] 无标签数据和有标签数据可以是相关场景的图像数据,示例性的,两者可以都是超市货架上商品的图像数据,或者,两者可以都是动物园中动物的图像数据。无标签数据中
目标物体的类别可以与有标签数据中目标物体的类别不同。
[0066] 服务端在提取出无标签数据的数据特征和有标签数据的数据特征之后,以基于多个数据特征构成目标数据集。
[0067] 步骤320:对目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,指定条件为聚类结果以所述第一有标签数据的类别标签确定。
[0068] 服务端可以将有标签数据划分为第一有标签数据和第二有标签数据。这里,第一有标签数据用于提供作为半监督聚类的聚类参考依据的类别标签,第二有标签数据是除第
一有标签数据之外的有标签数据。
[0069] 服务端可以以第一有标签数据的类别标签为依据,执行半监督K均值聚类处理。在聚类时,第一有标签数据的类别标签的类别数与聚类簇数相同,且携带相同类别标签的第
一有标签数据被聚类至同一簇中。示例性的,有标签数据为超市货架图像,目标物体为商
品,第一有标签数据的类别标签包括商品A、商品B和商品C的类别标签,则以上述类别标签
为聚类参考依据执行半监督K均值聚类时,可以得到3个簇,且携带商品A的类别标签的第一
有标签数据的数据特征被聚类至同一簇,携带商品B的类别标签的第一有标签数据的数据
特征被聚类至同一簇,携带商品C的类别标签的第一有标签数据的数据特征被聚类至同一
簇。
[0070] 服务端在执行半监督聚类,并使得聚类结果满足上述指定条件时,可以保留聚类算法的算法参数,从而获得指定聚类算法。
[0071] 步骤330:以指定聚类算法对多个无标签数据进行聚类,确定聚类簇数。
[0072] 在获得指定聚类算法之后,针对无标签数据集中无标签数据的数据特征,服务端可以以指定聚类算法进行聚类处理,从而可以获得多个簇,并确定聚类簇数。该聚类簇数与
无标签数据中目标物体的类别数相同。示例性的,服务端通过指定聚类算法对无标签数据
的数据特征进行聚类后,可以得到7个簇,说明无标签数据中存在7类目标物体。
[0073] 步骤340:以聚类簇数对已训练的第一分类模型进行调整;其中,第一分类模型包括特征提取器。
[0074] 第一分类模型包括特征提取器和第一分类器头(分类器的head)。第一分类模型通过无标签数据训练,在调整前无法实现对无标签数据准确的分类。
[0075] 第一分类模型的第一分类器头的全连接层指示的目标物体类别数可能错误,服务端可以依据聚类簇数为第一分类模型生成新的全连接层,并替换第一分类器头中原有的全
连接层。
[0076] 步骤350:以调整后的第一分类模型对无标签数据进行预测,获得无标签数据的伪标签编号。
[0077] 服务端可以将无标签数据集中的无标签数据输入经过调整的第一分类模型,从而得到第一分类模型输出的伪标签编号。
[0078] 其中,伪标签编号用于表示无标签数据中目标物体的类别。在一实施例中,伪标签编号可以是多维向量,多维向量的维度是无标签数据中目标物体的类别总数,每一维度的
元素与一种类别对应,表示目标物体属于该类别的置信度,以最大置信度对应的类别作为
预测类别信息指示的类别。伪标签编号不具有语义信息,换而言之,伪标签编号并不指示实
际的类别,而只用于相互区分。
[0079] 示例性的,无标签数据为超市场景的图像数据。无标签数据包含目标物体E品牌泡面、F品牌饼干、G品牌薯片,经过调整的第一分类模型可以对图像数据进行预测,获得伪标
签编号。第一分类模型可以输出3种伪标签编号,但伪标签编号并不表示上述E品牌泡面、F
品牌饼干或G品牌薯片任意一种类别的具体含义。
[0080] 通过上述措施,对于无标签数据中同属一类的目标物体,第一分类模型可以输出同一类伪标签编号,消除了很多歧义和不合理的聚类,实现新品类视觉类别的发现。
[0081] 在一实施例中,服务端在执行上述视觉类别的发现方法之前,可以先训练出用于执行步骤310的特征提取器。这里,特征提取器可以在第二分类模型中经过微调。第二分类
模型包括特征提取器和第二分类器头。第二分类器头可以包括全连接层和softmax层。
[0082] 服务端可以获取经过初步训练的特征提取器,该特征提取器可以用于提取图像数据的低层特征。服务端可以在该特征提取器的基础上增加未训练的第二分类器头,构成未
训练的第二分类模型。
[0083] 服务端可以利用多个有标签数据对未训练的第二分类模型进行训练,获得已训练的第二分类模型。服务端可以将有标签数据输入未训练的第二分类模型,获得第二分类模
型输出的预测类别信息。服务端可以依据交叉熵损失评估预测类别信息和类别标签之间的
差距,进而调整第二分类模型的网络参数。经过多次迭代,当损失函数的函数值趋于稳定
时,可认定第二分类模型收敛,获得已训练的第二分类模型。
[0084] 训练第二分类模型的损失函数可通过如下公式(1)来表示:
[0085]  (1)
[0086] 其中,Lce表示损失函数的函数值;N表示用于训练的有标签数据的总量;yi表示第il l
个有标签数据的类别标签;η表示第一分类器头;zi 表示通过特征提取器从第i个有标签数
据中提取的数据特征。
[0087] 在训练第二分类模型的过程中,特征提取器的参数经过微调,从而得到已训练的特征提取器。
[0088] 在一实施例中,服务端在执行步骤320时,可以获得多组满足指定条件的算法参数,换而言之,可以得到多个聚类算法。这里,将多个聚类算法称为指定聚类算法的子聚类
算法。
[0089] 服务端在执行步骤320时,已经通过每一子聚类算法对目标数据集中的无标签数据的数据特征和有标签数据的数据特征进行聚类。针对每一子聚类算法对目标数据集中的
无标签数据和第二有标签数据对应数据特征的聚类结果,依据评估算法对聚类结果进行评
估。
[0090] 其中,评估算法可以包括平均聚类准确率(Average Clustering Accuracy,ACC)算法、聚类有效性指标(Cluster Validity Index,CVI)算法。
[0091] 对于第二有标签数据的数据特征的聚类结果,服务端可以通过聚类准确率算法来评估,该算法可通过如下公式(2)来表示:
[0092]  (2)
[0093] 其中,N表示第二有标签数据的总量;yi表示第i个第二有标签数据的类别标签;表示第i个有标签数据所在簇的簇中心的类别标签。
[0094] 在聚类结果中,对于任一第二有标签数据的数据特征,如果该第二有标签数据的类别标签与数据特征所在簇的簇中心数据特征的类别标签相同,该第二有标签数据对应的
数值为1,否则为0;累加所有第二有标签数据对应的数值,并除以第二有标签数据的总量,
可以获得聚类准确度算法的结果。
[0095] 对于无标签数据的聚类结果,服务端可以通过聚类有效性指标算法来评估,该算法可通过如下公式(3)来表示:
[0096] (3)
[0097] 其中,x表示一个数据点(无标签数据的数据特征);a(x)是x与所在簇内其它数据点欧式距离的平均值;b(x)是x与其它簇内各数据点最近的距离。
[0098] 服务端可以比较子聚类算法对应的两种评估算法的评估效果,确定评估效果最好的子聚类算法。服务端可以选择评估效果最好的子聚类算法执行步骤330,对无标签数据的
数据特征进行聚类。
[0099] 在一实施例中,服务端在执行步骤340之前,可以先通过无标签数据训练得到第一分类模型。服务端可以根据无标签数据之间的相似性作为监督信号进行训练。
[0100] 参见图4,为本申请一实施例提供的第二分类模型训练方法的流程示意图,如图4所示,该方法可以包括以下步骤410‑步骤450。
[0101] 步骤410:根据多个无标签数据构建多个无标签数据对;其中,无标签数据对包括两个无标签数据。
[0102] 服务端可以从多个无标签数据中随机选择两个无标签数据,构建无标签数据对,u u u u
从而获得多个无标签数据对。无标签数据对可表示为(xi ,xj),xi和xj 分别表示一个无标
签数据。
[0103] 步骤420:通过经过初步训练的特征提取器提取无标签数据对中无标签数据的数据特征。
[0104] 服务端通过经过初步训练的特征提取器,提取无标签数据对中无标签数据的数据u u u u u u
特征。无标签数据对对应的数据特征可表示为(zi ,zj),zi 表示xi的数据特征,zj表示xj
的数据特征。
[0105] 步骤430:判断无标签数据对中两个无标签数据的数据特征是否匹配。
[0106] 步骤440:根据匹配结果为无标签数据对生成匹配标签。
[0107] 这里,数据特征匹配指两个数据特征的相似度高。匹配标签包括真标签和伪标签,真标签表示两个数据特征匹配,伪标签表示两个数据特征不匹配。
[0108] 针对任一无标签数据对,服务端可以判断两个无标签数据的数据特征是否匹配。如果两者匹配,可认为两个无标签数据中包含同一类目标物体;否则,认为两个无标签数据
中包含的目标物体不同。
[0109] 服务端可以根据匹配结果为无标签数据对生成匹配标签。示例性的,真标签可以表示为sij=1,伪标签可以表示为sij=0。
[0110] 步骤450:依据携带匹配标签的无标签数据对,对未训练的第一分类模型进行训练,获得已训练的第一分类模型。
[0111] 服务端可以利用多个携带匹配标签的无标签数据对,对未训练的第一分类模型进行训练。经过多次迭代,当损失函数的函数值趋于稳定时,可认定第一分类模型收敛,获得
已训练的第一分类模型。
[0112]
[0113] 其中,Lbce表示损失函数的函数值;M表示无标签数据对的总量;sij表示第i个无标u u
签数据与第j个无标签数据之间的匹配标签;η表示第一分类器头;zi表示通过特征提取器
u
从第i个无标签数据中提取的数据特征;zj表示通过特征提取器从第j个无标签数据中提取
的数据特征。
[0114] 在一实施例中,图5为本申请一实施例提供的判断数据特征是否匹配的流程示意图,如图5所示,服务端在判断两个数据特征是否匹配时,可以执行如下步骤431‑步骤433。
[0115] 步骤431:针对无标签数据对中两个无标签数据的数据特征,分别选择数据特征最大的指定数量维度的元素,构成数据特征的比较参数。
[0116] 其中,比较参数用于判断两个数据特征是否匹配。
[0117] 无标签数据的数据特征可以是多维向量,针对任一数据特征,服务端可以从中选择最大的指定数量维度的元素,并以从大到小顺序排列,构成比较参数。这里,指定数量可
以是经验值,示例性的,指定数量为10,多维向量是20维向量,则可从20维向量中选择最大
的10个元素,构成比较参数。
[0118] 步骤432:判断两个无标签数据对应的比较参数之间的相似度是否达到预设相似度阈值。
[0119] 步骤433:如果是,确定无标签数据对中两个无标签数据的数据特征匹配。
[0120] 这里,相似度阈值可以是经验值,用于筛选近似的比较参数。
[0121] 针对两个比较参数,服务端可以逐个元素比对两者是否一致,从而确定出两者的相似度。示例性的,比较参数有10个元素,两个比较参数之间有8个元素相同,则相似度为
80%。
[0122] 一方面,两个比较参数之间的相似度未达到相似度阈值,则可以确定无标签数据对中两个无标签数据不匹配。另一方面,两个比较参数之间的相似度达到相似度阈值,则可
以确定无标签数据对中两个无标签数据匹配。
[0123] 在一实施例中,服务端在训练第一分类模型和第二分类模型之前,首先可以对特征提取器进行初步训练。参见图6,为本申请一实施例提供的特征提取器训练方法的流程示
意图,如图6所示,该方法可以包括如下步骤610‑步骤630。
[0124] 步骤610:以有标签数据集的有标签数据和无标签数据集的无标签数据作为训练数据。
[0125] 服务端在训练特征提取器时,可以将有标签数据和无标签数据均作为训练数据,构成训练数据集。
[0126] 步骤620:提取训练数据的基础特征,作为训练数据的基础特征标签。
[0127] 步骤630:根据添加基础特征标签的多个训练数据,对特征提取器进行训练,获得经过初步训练的特征提取器。
[0128] 服务端可以从每一训练数据中提取基础特征,用以作为训练特征提取器的监督信号。这里,基础特征可以是训练数据中各像素的像素值、经过旋转的训练数据的旋转角度
等。服务端可以将提取到的基础特征作为训练数据的基础特征标签。
[0129] 服务端可以利用携带基础特征标签的训练数据,对特征提取器进行自监督训练((Self‑Supervised Learning)),获得经过初步训练的特征提取器。
[0130] 在一实施例中,服务端在执行步骤620时,可以通过数据增强对训练数据进行随机旋转,获得训练数据的旋转方向信息,作为基础特征,并将旋转方向信息作为训练数据的基
础特征标签。
[0131] 针对任一训练数据(图像数据),服务端可将训练数据随机旋转90度、180度或270度,并将该训练数据的旋转方向信息作为该训练数据的基础特征标签。
[0132] 图7是本发明一实施例的一种视觉类别的发现装置,如图7所示,该装置可以包括:
[0133] 提取模块710,用于基于已训练的特征提取器,提取多个无标签数据和多个有标签数据的数据特征,构成目标数据集;
[0134] 第一聚类模块720,用于对所述目标数据集中的数据特征进行半监督聚类,获得满足指定条件的指定聚类算法;其中,所述指定条件为聚类结果以第一有标签数据的类别标
签确定;
[0135] 第二聚类模块730,用于以所述指定聚类算法对所述多个无标签数据进行聚类,确定聚类簇数;
[0136] 调整模块740,用于以所述聚类簇数对已训练的第一分类模型进行调整;其中,所述第一分类模型包括所述特征提取器;
[0137] 预测模块750,用于以调整后的第一分类模型对所述无标签数据进行预测,获得所述无标签数据的伪标签编号。
[0138] 上述装置中各个模块的功能和作用的实现过程具体详见上述视觉类别的发现方法中对应步骤的实现过程,在此不再赘述。
[0139] 在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据
本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。
在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、
程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作
为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例
如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依
所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图
中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可
以用专用硬件与计算机指令的组合来实现。
[0140] 另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0141] 功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现
有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机
软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计
算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的
存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器
(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。