负例训练样本采集方法、装置及模型训练方法、装置
技术领域
本发明涉及图像检索技术领域,特别是涉及一种负例训练样本采集方法、装置及电子设备,以及一种模型训练方法、装置及电子设备。
背景技术
当前,随着计算机计算能力的不断增强,各种深度学习模型的应用越来越广泛,用于图像检索的深度学习神经网络模型是具有重要作用的深度学习模型之一,例如,在数字化图书馆、医疗诊断、网络购物等领域,用于图像检索的深度学习神经网络模型具有非常重要的地位。为了描述简便,上述用于图像检索的深度学习神经网络模型可以简称为图像检索模型。
为了对图像检索模型进行训练,需要首先确定用于训练该模型的多张图像中一定数量的目标图像,然后确定各张目标图像对应的负例训练样本和正例训练样本,进而利用各张目标图像,以及各张目标图像对应负例训练样本和正例训练样本,实现图像检索模型的训练。其中,任一目标图像对应的负例训练样本为对目标图像进行查询时得到的错误查询结果,任一目标图像对应的正例训练样本为对目标图像进行查询时得到的正确查询结果。
现有技术中,负例训练样本采集方法的处理思路是:在确定目标图像对应的负例训练样本时,从用于训练该模型的多张图像中选取负例图像,将选取到的负例图像确定为该目标图像对应的负例训练样本,其中,负例图像为对目标图像进行查询时得到的错误图像。如图1所示,每个目标图像周围存在多种不同难度的负例图像,其中,一些负例图像很容易与目标图像区分,一些负例图像则很难与目标图像区分。因此,如何采集有效的负例训练样本对训练得到图像检索模型具有重要作用。
具体的,现有技术中,常用的负例训练样本采集方法主要有两种。一种是采集“难”的负例训练样本,这些负例训练样本在样本空间中和目标图像的距离很近,因此也很难被区分,但是这种采集方法会导致负例采样不是在整个样本空间中进行,而只聚焦于样本空间中的一个局部视角。另一种是均匀随机采集负例训练样本,然而,这种负例采样方法虽然能够有机会得到所有难度水平的负例训练样本,但是由于“难”的负例训练样本的训练不充分,从而使训练得到的图像检索模型存在局部最优。进而,在基于上述两种方法采集到的负例训练样本对模型进行训练时,训练得到的图像检索模型的检索准确率较低。
发明内容
本发明实施例的目的在于提供一种负例训练样本采集方法、装置及电子设备,以实现采集负例训练样本时,在兼顾各个不同难度水平的负例训练样本的同时,可以优先采集“难”的负例训练样本。
本发明实施例还提供了一种模型训练方法、装置及电子设备,以实现在上述负例训练样本采集方法获得负例训练样本的基础上,提高训练得到的图像检索模型的检索准确率。
具体技术方案如下:
第一方面,本发明实施例提供了一种负例训练样本采集方法,所述方法包括:
将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合;
对所述样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心;
针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:所述多张图像中的一张目标图像对应的表示向量;
针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;其中,所述多个候选聚类为:所述多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率;
针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
第二方面,本发明实施例提供了一种基于上述负例训练样本采集方法的模型训练方法,所述方法包括:
在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
针对所述每个目标向量,在所述样本集合中,确定该目标向量所对应的多个负例训练样本;
确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
基于所述多组训练样本对所述预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
当所述目标次数达到预设数值时,判断是否满足训练停止条件;
如果满足,停止模型训练,得到训练完成的图像检索模型;
否则,将所述目标次数清零,返回所述针对所述每个目标向量,在所述样本集合中,确定该目标向量所对应的多个负例训练样本的步骤。
第三方面,本发明实施例提供了一种负例训练样本采集装置,所述装置包括:
样本集合构成模块,用于将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合;
聚类中心确定模块,用于对所述样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心;
第一聚类确定模块,用于针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:所述多张图像中的一张目标图像对应的表示向量;
目标概率确定模块,用于针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;其中,所述多个候选聚类为:所述多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率;
第二聚类确定模块,用于针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
负例训练样本获取模块,用于针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
第四方面,本发明实例提供了一种基于上述负例训练样本采集方法的模型训练装置,所述装置包括:
正例训练样本确定模块,用于在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
负例训练样本确定模块,用于针对所述每个目标向量,在所述样本集合中,确定该目标向量所对应的多个负例训练样本;
训练样本组确定模块,用于确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
模型训练模块,用于基于所述多组训练样本对所述预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
目标次数判断模块,用于当所述目标次数达到预设数值时,判断是否满足训练停止条件,如果满足,触发模型获得模块,否则,触发清零模块和所述负例训练样本确定模块;
所述模型获得模块,用于停止模型训练,得到训练完成的图像检索模型;
所述清零模块,用于将所述目标次数清零。
第五方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面提供的一种负例训练样本采集方法中任一所述的方法步骤。
第六方面,本发明实施例还提供了另一种电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面提供的一种基于第一方面提供的一种负例训练样本采集方法的模型训练方法中任一所述的方法步骤。
第七方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面提供的一种负例训练样本采集方法中任一所述的方法步骤。
第八方面,本发明实施例还提供了另一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面提供的一种基于第一方面提供的一种负例训练样本采集方法的模型训练方法中任一所述的方法步骤。
以上可见,在本发明实施例提供的一种负例训练样本采集方法中,通过对样本集合中各个表示向量的聚类,将各个表示向量按照相似度进行分类。从而可以确定每个候选聚类作为目标向量所属的第一聚类的近邻聚类的概率,也就是可以确定每个候选聚类中的表示向量作为目标向量的负例训练样本的难度水平。继而,基于该概率确定用于抽取该目标向量的负例训练样本的第二聚类,便可以兼顾到兼顾各个不同难度水平的负例训练样本。同时,由于概率较大的聚类中的表示向量为“较难”的负例训练样本,根据概率论的相关知识,显然,这些概率较大的聚类被抽取为第二聚类的可能性较高。因此,采集负例训练样本时,不但可以兼顾各个不同难度水平的负例训练样本,还可以优先采集“难”的负例训练样本。
在本发明实施例提供的一种模型训练方法中,考虑到在图像检索模型的训练过程中,模型的相关参数和权重会发生变化,导致样本集合的聚类结果发生变化,进而导致基于聚类结果确定的训练样本发生变化,因此,在图像检索模型的训练过程中,可以随着模型的相关参数和权重的变化,调整对样本集合的聚类结果,使获得的负例训练样本更具有代表性。同时,在模型训练方法中通过上述负例训练样本采集方法确定训练样本中的负例训练样本,以使得每次确定的负例训练样本时,可以在兼顾各个不同难度水平的负例训练样本的同时,优先采集“难”的负例训练样本。进而,可以提高基于获得的负例训练样本训练得到的图像检索模型的检索准确率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种目标图像周围的负例图像的示意图;
图2为本发明实施例提供的一种负例训练样本采集方法的流程示意图;
图3为本发明实施例提供的一种基于负例训练样本采集方法的模型训练方法的流程示意图;
图4为本发明实施例提供的一种负例训练样本采集装置的结构示意图;
图5为本发明实施例提供的一种基于负例训练样本采集方法的模型训练装置的结构示意图;
图6为本发明实施例提供的一种电子设备;
图7为本发明实施例提供的另一种电子设备。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前负例训练样本采集方法,一种是只能采集“难”的负例训练样本,从而导致负例采样不是在整个样本空间中进行,而只能聚焦于样本空间中的一个局部视角,另一种是虽然能够进行均匀随机采样,得到所有难度水平的负例训练样本,但是由于“难”的负例训练样本的训练不充分,训练得到的图像检索模型存在局部最优。也就是说,利用现有技术中负例训练样本采集方法采集到的负例训练样本对模型进行训练,训练得到的图像检索模型的检索准确率较低。
为了解决现有技术中存在的问题,本发明实施例提供了一种负例训练样本采集方法、装置及电子设备。
下面,首先对本发明实施例提供的一种负例训练样本采集方法进行介绍。
需要说明的是,本发明实施例所提供的一种负例训练样本采集方法可以应用于任意电子设备,例如,可以手机、平板电脑、笔记本电脑、台式电脑等,在此不做具体限定,以下简称电子设备。
图2为本发明实施例提供的一种负例训练样本采集方法的流程示意图,如图2所示,该负例训练样本采集方法,可以包括如下步骤:
S201:将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合。
其中,上述多张图像可以是预先存储在电子设备的存储空间中的用于负例训练样本采集的图像,也可以是从与电子设备进行通信连接的其他电子设备处获得的用于负例训练样本采集的图像,本发明实施例不对上述多张图像的来源进行限定。上述预设的初始图像检索模型可以是深度神经网络模型,这些深度神经网络模型可以具有不同的结构,例如,VGG16(Visual Geometry Group 16)结构、GoogLeNet结构、ResNet(Residual network,残差网络)结构、AlexNet结构(Alex在2012年提出的深度神经网络模型的结构)等。
可以理解的,在获取用于模型训练的训练样本时,这些训练样本可以是在预先设置好的样本集合中获取的,而根据实际应用的不同需求以及不同模型所具有的不同的特点和功能,样本集合中可以包括不同形式的样本,例如,可以是图像、向量、点的坐标等等。
而在上述步骤S201中,电子设备并不直接将上述用于负例训练样本采集的多张图像构成训练集合,而是将这些图像输入到预设的初始图像检索模型中,获得这些图像中各张图象对应的表示向量,并将所得到的表示向量构成样本集合。这就是说,在上述步骤S201构成的样本集合中包括的是多个表示向量。
例如,预设的初始图像检索模型的网络结构是VGG16结构,进而,移除该VGG16结构中的所有全连接层,添加全局平均池层和具有L2正则化的全连接层,进而,根据该全局平均池层和全连接层将224*224*3维的图像映射到128维的表示向量。其中,224*224表示每张图像具有224行像素,每行像素包括224个像素点,3表示每张图像的图层数量。
需要说明的是,上述示例仅用于对上述步骤S201进行说明,并不是对上述步骤S201的具体限制。对于预设的初始图像检索模型的结构、获得所述多张图像的表示向量的方式、多张图像的图像格式以及得到的表示向量的维度,本发明实施例均不进行具体限定。
例如,表示向量也可以是64维、256维或者512维,具体的,可以根据实际应用中对图像映射到表示向量的精度需求确定表示向量的维度,当精度需求越大时,表示向量的维度可以越大,反之,表示向量的维度可以越小。
S202:对样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心。
在得到多个表示向量构成的样本集合后,电子设备可以对该多个表示向量进行聚类,得到多个聚类,进而,也就可以确定每个聚类的聚类中心及该聚类中心所对应的向量。
其中,在上述步骤S202中,电子设备可以采用任一能够对样本集合包括的多个表示向量进行聚类的聚类算法,例如,AP(Affinity Propagation,亲和传播)聚类算法、K-MEANS(K-均值)算法等。
需要说明的是,在对样本集合包括的多个向量进行聚类,得到多个聚类后,得到的多个聚类可以形成聚类结构,进而,上述初始图像检索模型可以根据该聚类结构更新自身的相关参数及权重。可以理解的,当初始图像检索模型的相关参数和权重更新后,输入到该初始图像检索模型中的多张图像对应的表示向量会随着初始图像检索模型的相关参数和权重的变化而发生变化,进而对样本集合中包括的多个表示向量进行聚类的聚类结果也会随着变化,最终导致聚类结构发生变化。也就是说,聚类结构在训练过程中会随着上述初始图像检索模型相关参数和权重的变化而改变。
因此,为了得到更好的聚类结构,使得到的负例训练样本更具有代表性,从而提高训练得到的图像检索模型的检索准确率,在模型训练过程中,电子设备可以随着初始图像检索模型相关参数和权重的变化,重新对上述样本集合包括的多个表示向量进行聚类,得到更新后的多个聚类,并基于更新后的聚类获得更新后的负例训练样本,进而,采用更新后的负例训练样本对上述初始图像检索模型进行训练,得到最终的图像检索模型。
可以理解的,由于聚类是指将物理或抽象对象的集合分成由类似的对象组成的多个类的过程,因此,在步骤S202中,电子设备对多个表示向量进行聚类,也就是,电子设备可以按照多个表示向量之间的相似度对多个表示向量进行分类,从而将相似度高的表示向量聚为一类。
进一步的,由于每个表示向量都对应于一个用于负例训练样本采集的图像,可以反映该图像的特征,因此,步骤S202也可以理解为:按照图像相似度对上述多个图像进行分类,从而将相似度高的图像聚为一类。
S203:针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:多张图像中的一张目标图像对应的表示向量;
在得到多个聚类后,针对每个目标向量,电子设备可以确定该目标向量所属的第一聚类。可以理解的,针对每个目标向量,电子设备可以通过多种方式确定该目标向量所属的第一聚类,对此,本发明实施例不进行具体限定。
可选的,一种具体实现方式中,上述步骤S203可以为:
针对每个目标向量,确定该目标向量与每个聚类的聚类中心所对应的向量的距离,将距离最近的聚类确定为该目标向量所属的第一聚类。
其中,在对样本集合中包括的多个表示向量进行聚类后,也就可以确定得到的多个聚类中每个聚类的聚类中心,进而,便可以确定每个聚类的聚类中心所对应的向量。因此,针对每个目标向量,电子设备便可以计算该目标向量与每个聚类的聚类中心所对应的向量的距离,并将距离最近的向量所对应的聚类确定为该目标向量所属的第一聚类。
可选的,另一种具体实现方式中,上述步骤S203可以包括:
针对每个目标向量,可以根据上述步骤S202中对样本集合中的表示向量的聚类结果确定该目标向量所属的聚类。
其中,由于目标向量为上述样本集合中的一个表示向量,因此在上述步骤202对上述样本集合包括的多个表示向量进行聚类后,该目标向量可以被分到某个聚类中,则该聚类即为该目标向量所属的聚类。
需要说明的是,电子设备在获得上述多张图像时,可以将这些图像中的部分图像作为目标图像,进而,在执行上述步骤S201后,电子设备可以将得到的与目标图像对应的表示向量作为目标向量。当然,电子设备也可以在执行上述步骤S201后,在得到的每张图像对应的表示向量中选取部分表示向量作为目标向量。这都是合理的。
可以理解的,电子设备获得的用于负例训练样本采集的多张图像的数量通常较大,也就是电子设备获得的表示向量的数量也较大,进而,这些表示向量所对应的负例训练样本的数量可以更大。因此,在图像检索模型训练过程中,电子设备很难将所有图像的负例训练样本均输入到初始图像检索模型中进行训练。在这种情况下,电子设备便可以将获得的用于负例训练样本采集的多张图像中的部分图像作为目标图像,从而得到目标向量及目标向量所对应的负例训练样本,并利用这些负例训练样本对初始图像检索模型进行训练。
其中,目标向量的数量可以根据实际应用中对训练得到的图像检索模型的检索准确率的需求确定,如果对检索准确率的需求较高,则目标向量的数量可以加大,反之,目标向量的数量可以较小。
S204:针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;
其中,多个候选聚类为:多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率。
针对每个目标向量,在确定该目标向量所属的第一聚类后,便可以随之确定该第一聚类的聚类中心,进而,电子设备便可以执行将上述步骤S202得到的多个聚类中除该第一聚类外的其他聚类作为该目标向量所对应的多个候选聚类,并基于该第一聚类的聚类中心,计算每个候选聚类作为该第一聚类的近邻聚类的概率,即每个候选聚类的目标概率。
其中,每个候选聚类的目标概率表征了该候选聚类中的表示向量作为目标向量的负例训练样本的难度,具体的,候选聚类的目标概率越大,表征该候选聚类中的表示向量作为目标向量的负例训练样本的难度水平越大,也就是该候选聚类中的表示向量与目标向量的相似度越高。进而,可以理解的,所谓“难度水平”可以表示候选聚类中的表示向量与目标向量的相似度。
需要说明的是,在上述步骤S202中,电子设备按照多个表示向量之间的相似度对多个表示向量进行分类,从而将相似度高的表示向量聚为一类,因此,每个聚类中的表示向量相似度较高,进而,目标向量与其所属的第一聚类中的表示向量的相似度也较高。由于同一个聚类中的表示向量之间的相似度较高,因此,可以根据分别属于两个聚类的两个表示向量的相似度来反映这两个聚类的相似度,进一步的,可以根据两个聚类的聚类中心所对应的表示向量的相似度来反映这两个聚类的相似度。可以理解的,不同的聚类间相似度具有一定差异,也就是说,在上述步骤S202电子设备得到的多个聚类中,每两个聚类的相似度可以较低,也可以较高。
可选的,一种具体实现方式中,上述步骤S204可以为:
针对每个目标向量,根据第一公式,计算该目标向量所对应多个候选聚类中的每个聚类的目标概率,其中,第一公式为:
其中,P(m,i)为针对第i个目标向量,所对应多个候选聚类中,第m个聚类作为该目标向量所属的第一聚类的近邻聚类的概率,T为转置运算;
ci为第i个目标向量所属的第一聚类的聚类中心,cm为第i个目标向量所对应多个候选聚类中,第m个聚类的聚类中心,cj为第i个目标向量所对应多个候选聚类中,第j个聚类的聚类中心,M为多个聚类的数量,1≤m≤M且m≠i。
当然,在本发明实施例中,电子设备也可以通过其他方式计算每个聚类的目标概率,对此,本发明实施例不做具体限定。
S205:针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
针对每个目标向量,在确定该目标向量所对应的每个候选聚类的目标概率后,电子设备便可以基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类。
其中,上述抽取操作为:基于所确定的目标概率,从该目标向量所对应的多个候选聚类中随机抽取一个聚类作为该目标向量对应的第二聚类。进而,电子设备可以根据实际应用中对第二聚类的数量需求执行多次抽取操作,得到所需要数量的第二聚类。
例如,针对每个目标向量,实际应用中需要确定10个该目标向量对应的第二聚类,则电子设备便可以基于确定的目标概率,对该目标向量所对应的多个候选聚类执行10次抽取操作,每次从这多个候选聚类中抽取1个聚类作为第二聚类,共抽取10个。
需要说明的是,根据概率论的相关知识,可以理解的,多个候选聚类中每个候选聚类具有不同的目标概率时,当在这多个候选聚类中抽取一个聚类时,显然,目标概率大的后续聚类被抽中的几率更大,而目标概率大说明该候选聚类中的表示向量作为目标向量的负例训练样本的难度水平高,也就是说可以优先采集“难”的负例训练样本。而对于目标概率小的候选聚类而言,虽然在一次抽取操作中被抽中的几率小,但是由于每次抽取操作都是随机的在多个候选聚类中抽取一个聚类,则目标概率小的聚类也存在被抽中的可能。由于不同的目标概率表征了不同的候选聚类中的表示向量作为目标向量的负例样本的难度水平不同,因此,便可以兼顾到各个不同难度水平的负例训练样本。
S206:针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
针对每个目标向量,在得到该目标向量对应的多个第二聚类后,电子设备便可以从每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。可以理解的,电子设备可以通过多重方式在每个第二聚类中获取一个表示向量,对此,本发明实施例不做具体限定。
可选的,一种具体实现方式中,上述步骤S206可以包括:
针对每个目标向量,在该目标向量对应的每个第二聚类中随机获取一个表示向量,作为该目标向量所对应的负例训练样本;
可以理解的,由于每个聚类中的各个表示向量之间的相似度较高,因此,针对每个目标向量,与该目标向量对应的一个第二聚类中的每个表示向量作为该目标向量的负例训练样本的难度是相同的,进而,电子设备可以在该第二聚类所包括的表示向量中随机抽取一个作为该目标向量所对应的负例训练样本。
可选的,一种具体实现方式中,上述步骤S206可以包括:
针对每个目标向量,将该目标向量对应的每个第二聚类中与该第二聚类的聚类中心的距离为预设距离的表示向量,确定为该目标向量所对应的负例训练样本。
可以理解的,由于针对每个目标向量,与该目标向量对应的一个第二聚类中的每个表示向量作为该目标向量的负例训练样本的难度是相同的,那么电子设备便可以在将该第二聚类中与该第二聚类的聚类中心的聚类为预设距离的表示向量确定为该目标向量所对应的负例训练样本。其中,本发明实施例不对上述预设距离进行具体限定。
例如,确定为负例训练样本的表示向量可以为:第二聚类中距离聚类中心距离最远的表示向量,也可以为:第二聚类中距离聚类中心距离最近的表示向量;还可以为:第二聚类中距离聚类中心的聚类为某个固定值的表示向量。这都是合理的。
以上可见,在本发明实施例提供的一种负例训练样本采集方法中,通过对样本集合中各个表示向量的聚类,将各个表示向量按照相似度进行分类。从而可以确定每个候选聚类作为目标向量所属的第一聚类的近邻聚类的概率,也就是可以确定每个候选聚类中的表示向量作为目标向量的负例训练样本的难度水平。继而,基于该概率确定用于抽取该目标向量的负例训练样本的第二聚类,便可以兼顾到兼顾各个不同难度水平的负例训练样本。同时,由于概率较大的聚类中的表示向量为“较难”的负例训练样本,根据概率论的相关知识,显然,这些概率较大的聚类被抽取为第二聚类的可能性较高。因此,采集负例训练样本时,不但可以兼顾各个不同难度水平的负例训练样本,还可以优先采集“难”的负例训练样本。
对应于上述本发明实施例提供的一种负例训练样本采集方法,本发明实施例还提供了一种基于上述负例训练样本采集方法的模型训练方法。
需要说明的是,由于上述一种负例训练样本采集方法是本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法中的一个具体步骤,因此,上述一种负例训练样本采集方法与本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法的执行主体为同一电子设备。同时,本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法预设的初始图像检索模型与上述负例训练样本采集方法中预设的初始图像检索模型为同一初始图像检索模型。
图3为本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法的流程示意图,如图3所示,该模型训练方法可以包括如下步骤:
S301:在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
需要说明的是,由于在上述步骤S301中,预设的初始图像检索模型与上述一种负例训练样本采集方法中预设的初始图像检索模型为同一模型。因此,在上述步骤S301中的样本集合,即为上述一种负例训练样本采集方法的步骤S201中由用于负例训练样本采集的多张图像中每张图像对应的表示向量构成的样本集合。
电子设备在获得用于负例训练样本采集的多张图像时,可以同时获得该多张图像中,每张图像与该图像对应的正例训练样本的对应关系。也就是说,对于该多张图像中的某张图像而言,电子设备可以在该多张图像中确定可以作为该图像对应的正例训练样本的图像。进而,当可以作为该图像对应的正例训练样本的图像是多张时,电子设备便可以在这多张可以作为该图像对应的正例训练样本的图像中随机获取一张作为该图像对应的正例训练样本。
进一步的,当得到用于负例训练样本采集的多张图像中每张图像对应的表示向量时,针对每个目标向量,电子设备也可以确定该每个目标向量所对应的一个正例训练样本。即针对每个目标向量,在训练样本包括的多个表示向量中确定一个可以作为该目标向量的正例训练样本的表示向量。
可以理解的,电子设备在获得上述多张图像时,可以将这些图像中的部分图像作为目标图像,进而,在执行上述步骤S301后,电子设备可以在样本集合包括的多个表示向量中获取与目标图像对应的表示向量作为目标向量。当然,电子设备也可以在执行上述步骤S301时,在样本集合包括的多个表示向量中选取部分表示向量作为目标向量。这都是合理的。
S302:针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本;
针对每个目标向量,电子设备在样本集合中确定该目标向量所对应的多个负例训练样本的方式与上述本发明实施例提供的一种负例训练样本采集方法相同,这里不再赘述。
S303:确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
在获取多个目标向量,并确定每个目标向量的正例训练样本和负例训练样本后,电子设备可以将一个目标向量,以及该目标向量所对应的一个正例训练样本和多个负例训练样本确定为一组训练样本。进而,根据在上述步骤S301中,电子设备获取的目标向量的个数,确定多组训练样本。
S304:基于多组训练样本对预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
在确定多组训练样本后,电子设备便可以基于这些训练样本对预设的初始图像检索模型进行训练,并从零开始对训练过程中的迭代次数进行计数,将该数值作为目标次数。
具体的,在得到多组训练样本之后,电子设备可以将多组训练样本作为输入,对初始图像检索模型进行训练。在训练过程中,初始图像检索模型可以学习每组训练样本的特征,并针对每组训练样本,输出该组训练样本的向量特征。并在对一组训练样本学习一次后,将目标次数加1。
需要说明的是,电子设备在基于确定的多组训练样本对预设的初始图像检索模型进行训练的过程中,每组训练样本的学习顺序可以是:按照预设的每组训练样本的学习次数,在一组训练样本的学习次数达到预设的学习次数后,开始学习下一组训练样本。也可以是:按照每组训练样本的排列顺序,依次学习每组训练样本,每组训练样本的学习次数为1次,在所有组的训练样本遍历一次后,再次每组训练样本的排列顺序,依次学习每组训练样本。这都是合理的。
S305:当目标次数达到预设数值时,判断是否满足训练停止条件;如果满足,执行S306,否则,执行S307并返回执行S302;
S306:停止模型训练,得到训练完成的图像检索模型;
S307:将目标次数清零。
当目标次数达到预设数值时,电子设备可以判断此时初始图像检索模型是否满足训练停止条件。其中,目标次数可以根据实际应用中对训练得到的图像检索模型的检索准确率的需求确定,当对检索准确率的需求较高时,目标次数可以较小,反之,目标次数可以较大。
可选的,一种具体实现方式中,上述步骤S305可以为:
当目标次数达到预设数值时,判断预设损失函数是否满足预设阈值。
具体的,当预设损失函数小于预设阈值时,确定满足训练停止条件,反之,确定不满足训练停止条件。
其中,预设阈值可以根据实际应用中对训练得到的图像检索模型的检索准确率的需求确定,当对检索准确率的需求较高时,预设阈值可以较小,反之,预设阈值可以较大。
具体的,预设损失函数可以为:
该预设损失函数可以在模型训练过程中可以同时惩罚多个负例训练样本。
其中,Γ(θ)为预设损失函数的函数值,γ为平滑因子;
针对每组训练样本,xq为该训练样本中的目标向量,x0为该训练样本中的正例训练样本,xi为该训练样本中的第i个负例训练样本,1≤i≤n,n为该训练样本中负例训练样本的数量;R(x0,xq)为该训练样本中x0与xq的相似度;R(xi,xq)为该训练样本中xi与xq的相似度。
具体的,上述损失函数中的R(x0,xq)和R(xi,xq)可以通过如下方式计算:
R(x0,xq)=f(x0)Tf(xq)
R(xi,xq)=f(xi)Tf(xq)
其中,f为初始图像检索模型将图像映射到该图像所对应的表示向量的映射函数,T为转置运算。
可选的,另一种具体实现方式中,上述步骤S305可以为:
当目标次数达到预设数值时,判断迭代总数是否达到预设迭代次数。
需要说明的是,电子设备在基于多组训练样本对预设的初始图像检索模型进行训练的过程中,可以记录该初始图像检索模型在开始训练到当前时刻的总的迭代次数。也就是说,在初始图像检索模型开始第一次学习训练样本时,从零开始对迭代总数进行计数,并在对一组训练样本学习一次后,将迭代总数加1,而直至图像检索模型训练完成,该迭代总数只随着初始图像检索模型对训练样本的学习而增减,但不清零。
这样,当目标次数达到预设数值时,电子设备便可以判断迭代总数是否达到预设迭代次数。
当迭代总数不小于预设迭代次数时,确定满足训练停止条件,反之,则确定不满足训练停止条件。
其中,预设迭代次数可以根据实际应用中对训练得到的图像检索模型的检索准确率的需求确定,当对检索准确率的需求较高时,预设迭代次数可以较大,反之,预设迭代次数可以较小。
具体的,当目标次数达到预设数值时,如果电子设备判断此时初始图像检索模型满足训练停止条件,则电子设备可以执行步骤S306,停止模型训练,得到训练完成的图像检索模型。此时,本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法完成,得到训练完成的用于图像检索的图像检索模型。
需要说明的是,当初始图像检索模型满足训练停止条件时,经过大量的训练样本的学习,初始图像检索模型可以建立训练样本与训练样本的向量特征的对应关系,完成了图像检索模型的训练。用户在使用该图像检索模型时,可以将待检索的图像输入到该图像检索模型中,这样,便可以得到按照与该待检索图像的相似度由大到小排列的一系列图像。
具体的,当目标次数达到预设数值时,电子设备判断此时初始图像检索模型不满足训练停止条件,则说明初始图像检索模型还建立好训练样本与训练样本的向量特征的对应关系,进而没有完成图像检索模型的训练,因此,电子设备需要返回执行上述步骤S302,即针对每个目标向量,在样本集合中,重新确定该目标向量所对应的多个负例训练样本,并将目标次数清零,以便在再次执行上述步骤S304基于多组训练样本对预设的初始图像检索模型进行训练时,可以再次并从零开始对迭代次数进行计数,进而再次得到目标次数。
以上可见,在本发明实施例提供的一种模型训练方法中,考虑到在图像检索模型的训练过程中,模型的相关参数和权重会发生变化,导致样本集合的聚类结果发生变化,进而导致基于聚类结果确定的训练样本发生变化,因此,在图像检索模型的训练过程中,可以随着模型的相关参数和权重的变化,调整对样本集合的聚类结果,使获得的负例训练样本更具有代表性。同时,在模型训练方法中通过上述负例训练样本采集方法确定训练样本中的负例训练样本,以使得每次确定的负例训练样本时,可以在兼顾各个不同难度水平的负例训练样本的同时,优先采集“难”的负例训练样本。进而,可以提高基于获得的负例训练样本训练得到的图像检索模型的检索准确率。
对应于上述本发明实施例提供的一种负例训练样本采集方法,本发明实施例还提供了一种负例训练样本采集装置。
图4为本发明实施例提供的一种负例训练样本采集装置的结构示意图,如图4所示,该装置可以包括如下模块:
样本集合构成模块410,用于将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合;
聚类中心确定模块420,用于对样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心;
第一聚类确定模块430,用于针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:多张图像中的一张目标图像对应的表示向量;
目标概率确定模块440,用于针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;其中,多个候选聚类为:多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率;
第二聚类确定模块450,用于针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
负例训练样本获取模块460,用于针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
以上可见,在本发明实施例提供的一种负例训练样本采集方法中,通过对样本集合中各个表示向量的聚类,将各个表示向量按照相似度进行分类。从而可以确定每个候选聚类作为目标向量所属的第一聚类的近邻聚类的概率,也就是可以确定每个候选聚类中的表示向量作为目标向量的负例训练样本的难度水平。继而,基于该概率确定用于抽取该目标向量的负例训练样本的第二聚类,便可以兼顾到兼顾各个不同难度水平的负例训练样本。同时,由于概率较大的聚类中的表示向量为“较难”的负例训练样本,根据概率论的相关知识,显然,这些概率较大的聚类被抽取为第二聚类的可能性较高。因此,采集负例训练样本时,不但可以兼顾各个不同难度水平的负例训练样本,还可以优先采集“难”的负例训练样本。
作为本发明实施例的一种实施方式,上述第一聚类确定模块430可以具体用于:
针对每个目标向量,确定该目标向量与每个聚类的聚类中心所对应的向量的距离,将距离最近的聚类确定为该目标向量所属的第一聚类。
作为本发明实施例的一种实施方式中,上述目标概率确定模块440可以具体用于:
针对每个目标向量,根据第一公式,计算该目标向量所对应多个候选聚类中的每个聚类的目标概率,其中,第一公式为:
其中,P(m,i)为针对第i个目标向量,所对应多个候选聚类中,第m个聚类作为该目标向量所属的第一聚类的近邻聚类的概率,T为转置运算;
ci为第i个目标向量所属的第一聚类的聚类中心,cm为第i个目标向量所对应多个候选聚类中,第m个聚类的聚类中心,cj为第i个目标向量所对应多个候选聚类中,第j个聚类的聚类中心,M为多个聚类的数量,1≤m≤M且m≠i。
作为本发明实施例的一种实施方式,上述负例训练样本获取模块460可以具体用于:
针对每个目标向量,在该目标向量对应的每个第二聚类中随机获取一个表示向量,作为该目标向量所对应的负例训练样本;或,
针对每个目标向量,将该目标向量对应的每个第二聚类中与该第二聚类的聚类中心的距离为预设距离的表示向量,确定为该目标向量所对应的负例训练样本。
对应于上述本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法,本发明实施例还提供了一种基于上述负例训练样本采集方法的模型训练装置。
图5为本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练装置的结构示意图,如图5所示,该装置可以包括以下模块:
正例训练样本确定模块510,用于在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
负例训练样本确定模块520,用于针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本;
训练样本组确定模块530,用于确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
模型训练模块540,用于基于多组训练样本对预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
目标次数判断模块550,用于当目标次数达到预设数值时,判断是否满足训练停止条件,如果满足,触发模型获得模块560,否则,触发清零模块570和负例训练样本确定模块520;
模型获得模块560,用于停止模型训练,得到训练完成的图像检索模型;
清零模块570,用于将目标次数清零。
在本发明实施例提供的一种模型训练方法中,考虑到在图像检索模型的训练过程中,模型的相关参数和权重会发生变化,导致样本集合的聚类结果发生变化,进而导致基于聚类结果确定的训练样本发生变化,因此,在图像检索模型的训练过程中,可以随着模型的相关参数和权重的变化,调整对样本集合的聚类结果,使获得的负例训练样本更具有代表性。同时,在模型训练方法中通过上述负例训练样本采集方法确定训练样本中的负例训练样本,以使得每次确定的负例训练样本时,可以在兼顾各个不同难度水平的负例训练样本的同时,优先采集“难”的负例训练样本。进而,可以提高基于获得的负例训练样本训练得到的图像检索模型的检索准确率。
作为本发明实施例的一种实施方式,上述目标次数判断模块550可以具体用于:
当目标次数达到预设数值时,判断预设损失函数是否满足预设阈值。
作为本发明实施例的一种实施方式,上述预设损失函数可以为:
其中,Γ(θ)为预设损失函数的函数值,γ为平滑因子;
针对每组训练样本,xq为该训练样本中的目标向量,x0为该训练样本中的正例训练样本,xi为该训练样本中的第i个负例训练样本,1≤i≤n,n为该训练样本中负例训练样本的数量;R(x0,xq)为该训练样本中x0与xq的相似度;R(xi,xq)为该训练样本中xi与xq的相似度。
作为本发明实施例的一种实施方式,
R(x0,xq)=f(x0)Tf(xq)
R(xi,xq)=f(xi)Tf(xq)
其中,f为初始图像检索模型将图像映射到该图像所对应的表示向量的映射函数,T为转置运算。
本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现本发明实施例提供的一种负例训练样本采集方法。
具体的,上述负例训练样本采集方法,包括:
将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合;
对样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心;
针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:多张图像中的一张目标图像对应的表示向量;
针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;其中,多个候选聚类为:多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率;
针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
需要说明的是,上述处理器601执行存储器603上存放的程序而实现的负例训练样本采集方法的其他实现方式,与前述方法实施例部分提供的一种负例训练样本采集方法实施例相同,这里不再赘述。
以上可见,在本发明实施例提供的一种负例训练样本采集方法中,通过对样本集合中各个表示向量的聚类,将各个表示向量按照相似度进行分类。从而可以确定每个候选聚类作为目标向量所属的第一聚类的近邻聚类的概率,也就是可以确定每个候选聚类中的表示向量作为目标向量的负例训练样本的难度水平。继而,基于该概率确定用于抽取该目标向量的负例训练样本的第二聚类,便可以兼顾到兼顾各个不同难度水平的负例训练样本。同时,由于概率较大的聚类中的表示向量为“较难”的负例训练样本,根据概率论的相关知识,显然,这些概率较大的聚类被抽取为第二聚类的可能性较高。因此,采集负例训练样本时,不但可以兼顾各个不同难度水平的负例训练样本,还可以优先采集“难”的负例训练样本。
本发明实施例还提供了另一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法。
具体的,上述模型训练方法,包括:
在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本;
确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
基于多组训练样本对预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
当目标次数达到预设数值时,判断是否满足训练停止条件;
如果满足,停止模型训练,得到训练完成的图像检索模型;
否则,将目标次数清零,返回针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本的步骤。
需要说明的是,上述处理器701执行存储器703上存放的程序而实现的负例训练样本采集方法的其他实现方式,与前述方法实施例部分提供的一种基于上述负例训练样本采集方法的模型训练方法实施例相同,这里不再赘述。
在本发明实施例提供的一种模型训练方法中,考虑到在图像检索模型的训练过程中,模型的相关参数和权重会发生变化,导致样本集合的聚类结果发生变化,进而导致基于聚类结果确定的训练样本发生变化,因此,在图像检索模型的训练过程中,可以随着模型的相关参数和权重的变化,调整对样本集合的聚类结果,使获得的负例训练样本更具有代表性。同时,在模型训练方法中通过上述负例训练样本采集方法确定训练样本中的负例训练样本,以使得每次确定的负例训练样本时,可以在兼顾各个不同难度水平的负例训练样本的同时,优先采集“难”的负例训练样本。进而,可以提高基于获得的负例训练样本训练得到的图像检索模型的检索准确率。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的一种负例训练样本采集方法。
具体的,上述负例训练样本采集方法,包括:
将用于负例训练样本采集的多张图像输入到预设的初始图像检索模型中,得到各张图像对应的表示向量,并将所得到的表示向量构成样本集合;
对样本集合包括的多个表示向量进行聚类,得到多个聚类,并确定每个聚类的聚类中心;
针对每个目标向量,确定该目标向量所属的第一聚类,其中,任一目标向量为:多张图像中的一张目标图像对应的表示向量;
针对每个目标向量,基于该目标向量所属的第一聚类的聚类中心,确定该目标向量所对应多个候选聚类中的每个聚类的目标概率;其中,多个候选聚类为:多个聚类中,除该目标向量所属的第一聚类外的所有聚类,任一聚类的目标概率为该聚类作为该目标向量所属的第一聚类的近邻聚类的概率;
针对每个目标向量,基于所确定的目标概率,对该目标向量所对应多个候选聚类执行多次聚类抽取操作,得到该目标向量对应的多个第二聚类;
针对每个目标向量,在该目标向量对应的每个第二聚类中获取一个表示向量,作为该目标向量所对应的负例训练样本。
需要说明的是,上述计算机程序被处理器执行时而实现的负例训练样本采集方法的其他实现方式,与前述方法实施例部分提供的一种负例训练样本采集方法实施例相同,这里不再赘述。
以上可见,在本发明实施例提供的一种负例训练样本采集方法中,通过对样本集合中各个表示向量的聚类,将各个表示向量按照相似度进行分类。从而可以确定每个候选聚类作为目标向量所属的第一聚类的近邻聚类的概率,也就是可以确定每个候选聚类中的表示向量作为目标向量的负例训练样本的难度水平。继而,基于该概率确定用于抽取该目标向量的负例训练样本的第二聚类,便可以兼顾到兼顾各个不同难度水平的负例训练样本。同时,由于概率较大的聚类中的表示向量为“较难”的负例训练样本,根据概率论的相关知识,显然,这些概率较大的聚类被抽取为第二聚类的可能性较高。因此,采集负例训练样本时,不但可以兼顾各个不同难度水平的负例训练样本,还可以优先采集“难”的负例训练样本。
本发明实施例还提供了另一种计算机可读存储介质,该计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的一种基于上述负例训练样本采集方法的模型训练方法。
具体的,上述模型训练方法,包括:
在预设的初始图像检索模型获得的样本集合中,获取多个目标向量,并确定每个目标向量所对应的一个正例训练样本;
针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本;
确定多组训练样本,其中,每个训练样本包括一个目标向量、该目标向量所对应的一个正例训练样本和该目标向量所对应的多个负例训练样本;
基于多组训练样本对预设的初始图像检索模型进行训练,并从零开始对迭代次数进行计数,作为目标次数;
当目标次数达到预设数值时,判断是否满足训练停止条件;
如果满足,停止模型训练,得到训练完成的图像检索模型;
否则,将目标次数清零,返回针对每个目标向量,在样本集合中,确定该目标向量所对应的多个负例训练样本的步骤。
需要说明的是,上述计算机程序被处理器执行时而实现的基于上述负例训练样本采集方法的模型训练方法的其他实现方式,与前述方法实施例部分提供的一种基于上述负例训练样本采集方法的模型训练方法实施例相同,这里不再赘述。
在本发明实施例提供的一种模型训练方法中,考虑到在图像检索模型的训练过程中,模型的相关参数和权重会发生变化,导致样本集合的聚类结果发生变化,进而导致基于聚类结果确定的训练样本发生变化,因此,在图像检索模型的训练过程中,可以随着模型的相关参数和权重的变化,调整对样本集合的聚类结果,使获得的负例训练样本更具有代表性。同时,在模型训练方法中通过上述负例训练样本采集方法确定训练样本中的负例训练样本,以使得每次确定的负例训练样本时,可以在兼顾各个不同难度水平的负例训练样本的同时,优先采集“难”的负例训练样本。进而,可以提高基于获得的负例训练样本训练得到的图像检索模型的检索准确率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。