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

一种图像分类方法

文献发布时间:2023-06-19 11:05:16


一种图像分类方法

技术领域

本发明涉及计算机视觉和图像处理领域,特别涉及一种基于度量学习的图像分类方法,一种基于随机批次的类别中心更新策略。

背景技术

在图像分类任务中,比较常见的是基于交叉熵损失的分类方法,这种方法的具体流程是使用卷积神经网络提取输入样本的特征,输入样本一般是图像,样本特征一般是高维向量,例如512维特征向量,然后使用多层感知器对图像的特征进行分类。

对于人脸识别任务,需要对数据集中的每张人脸图片确定其身份,人脸识别模型的训练过程,就是训练一个分类模型,使用卷积神经网络提取特征,然后经过一个全连接层得到特征属于每一类的分数,人脸识别任务在验证阶段和测试阶段,不再需要对输入样本进行分类,因为测试阶段或者验证阶段遇到的人脸身份,一般不会出现在训练集中,所以在测试阶段和验证阶段只需要使用卷积神经网络提取输入图像的特征向量,对于两张人脸图片,现有的方法是对特征向量归一化,将每个样本的特征向量变为同样的长度,但是不同样本的特征向量有着不同的角度,在训练过程中,可以让同一个人的人脸图片提取出来的特征尽可能聚集,所以可以根据两个特征向量之间的角度来判断两个样本是否属于同一类。

对于常见的分类任务和人脸识别任务,模型的特征提取模块一般是卷积神经网络,对于分类模型,一般采用交叉熵损失,其计算过程如式(1)和(2)所示,其中e是自然常数,logit

L=-logP

在人脸识别任务中,为了更好地比较两个未知身份的人脸图片是否属于同一类,模型训练需要保证类内距离小于类间距离,也就是需要保证可以直接设定一个阈值,当两个特征之间的角度大于该阈值,则两个特征属于不同的人的人脸图片,如果两个特征之间的角度小于该阈值,则两个特征属于同一个人的人脸图片。比较常见的损失函数如式(3)所示,其中s是尺度参数,θ

除了基于改进交叉熵损失的方法,目前还有比较好的方法是构建类别中心的方法,例如在交叉熵损失上添加样本的特征向量和每个类别中心点之间的欧氏距离作为类内约束,但是这种方法同时使用了欧氏距离和角度特性的交叉熵损失,存在约束上的不一致性。还有一种方法是直接使用欧氏距离作为特征之间的度量,同样构建类别中心点,但是这种方法在计算类间距离时,需要计算类别中心两两之间的欧氏距离,如果在人脸识别任务中使用,因为人脸数据集的类别数很大,这种方法不再具有适用性。有必要设计更加具有实践意义的类间距离计算方法。而且无论是欧氏距离还是基于角度特性的余弦相似度,特征之间的度量方式都是人为设定的,对于深度学习,人为设定的不一定是最好的,可能只是一个局部最优解。

需要说明的是,在上述背景技术部分公开的信息仅用于对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

为了克服以上背景技术的缺陷,本发明提出一种图像分类方法,基于随机批次的类别中心更新策略,以有效解决基于度量学习的图像分类和人脸识别方法中存在的不足,并且进一步提高模型的性能。

本发明提出的图像分类方法,包括如下步骤:

1)根据输入图像的类别数量,构建类别中心点,每个类别中心点是一个高维向量,向量的维度和特征的维度相等,中心点的数量等于数据集中类别的数量。

2)使用卷积神经网络作为特征提取模块,对于训练过程的每个随机批次,使用卷积神经网络对每个样本计算特征向量,计算特征向量和类别中心点之间的马氏距离,作为类内距离,根据该类内距离构建分类损失,将分类损失的梯度进行反向传播对卷积神经网络的参数进行更新,使模型朝着类内距离变小的方向优化。

3)对于训练过程中的每个随机批次,根据批次内样本的类别,计算对应的类别中心点之间的距离,作为类间距离,根据该距离构建发散损失,将发散损失的梯度反向传播对类别中心点的参数进行更新,使类别中心点的参数朝着类间距离变大的方向优化。

其中,通过两阶段训练机制,对特征提取模块的权重和类别中心的可训练参数进行交替更新,两个阶段均对马氏距离中的可训练参数更新。

根据本发明的实施例,步骤1)中,向量在高维空间的度量方式是马氏距离。构建类别中心点作为图像分类的依据,类别中心含有可训练参数。构建的类别中心点作为高维空间的多个向量,其初始化采用随机初始化。特征之间的度量使用马氏距离,这是一种参数可训练的度量方法,在深度学习任务中,可以根据具体的任务让模型自动学习合适的度量方法。

步骤2)中,使用卷积神经网络提取图像的特征,计算图像特征和各类别中心之间的马氏距离,利用该距离构建分类损失,马氏距离中包含可训练的参数。根据提取到的样本特征,使用当前的参数计算特征向量和每个类别中心向量之间的马氏距离,分类损失也是基于样本和各个中心点之间的马氏距离构建,随着模型的不断训练,特征和正确类别的中心点之间的马氏距离不断变小,特征和其他类别中心点之间的马氏距离不断变大。

步骤3)中,计算每个随机批次内样本对应类别的类别中心之间的马氏距离,作为类间距离,构建发散损失,可更新类别中心点的权重,让模型朝着类间距离变大的方向进行优化。在计算类间距离时,可只考虑随机批次内样本的类别,发散损失是每个类别中心点和其他中心点之间的最短距离的加权平均值,根据随机批次内各类别样本的个数给每个类别的最短距离加权。

通过采用两阶段的权重更新方法,对特征提取模块和类别中心点中的可训练参数交替更新。模型在训练过程中采用两阶段的训练方式,是首先使用分类损失对特征提取模块中的参数进行更新,让模型可以更好地提取图像特征,然后使用发散损失对类别中心点中的可训练参数进行更新。分类损失和发散损失均会对马氏距离中的可训练参数进行更新。

在一些实施例中,所述两阶段训练机制为,首先对类别中心随机初始化,然后两阶段交替训练过程优化模型参数,两阶段分别是类内优化阶段和类间优化阶段,所述类内优化阶段根据每个随机批次计算出来的分类损失对模型的特征提取模块中的可训练参数进行优化,所述类间优化阶段根据每个随机批次计算出来的发散损失对模型中的类别中心点进行更新,每个阶段均迭代一个和多个随机批次后交替阶段,所述类内优化阶段和所述类间优化阶段均对马氏距离中的参数进行优化。

在一些实施例中,根据每个随机批次里各类别样本点的数量,为每个中心点设置权重,减少类别不平衡的影响。

在一些实施例中,使用难样本挖掘机制,在训练过程中根据样本特征向量和各类别中心点之间的马氏距离确定每个随机批次的难样本,计算难样本损失,增加难样本在损失函数中的权重,促进模型训练。本优选实施例中,通过难样本挖掘机制,在训练过程中对于满足一定条件的样本将其划分为难样本,增加这些样本在损失值中的权重。在模型训练过程中,判断分类错误的样本为难样本,在损失函数中,难样本的分类损失会添加额外的权重,可以增加损失函数中这些样本的权重,进一步让模型获得更好的训练效果。

在一些实施例中,马氏距离是一种可学习的度量方式,计算马氏距离时,构建参数矩阵K∈R

其中矩阵M=K

在一些实施例中,参数矩阵K采用单位矩阵I初始化,两个向量X和Y之间的马氏距离为以下形式:

D(X,Y)=‖K(X-Y)‖

马氏距离退化为欧氏距离。

在一些实施例中,单位矩阵初始化可以保证模型从欧氏距离开始训练,但是随着模型在每个随机批次上计算损失函数并反向传播梯度,可以对参数矩阵中的元素进行更新,马氏距离变成式(1)的形式,让模型能够对不同的分类任务,学习到高维空间上的更好的度量方式。

在一些实施例中,步骤2)中类内距离计算和分类损失计算包括:对于提取的每个样本的特征f,计算特征和类别中心点之间的马氏距离,类别中心点为集合C=[C

D(f,C

在使用模型判断样本的分类结果时,保证样本特征和对应类别之间的马氏距离小于样本特征和所有其他类别中心点之间的马氏距离,如式(4):

D(f,C

分类损失L

在一些实施例中,步骤3)中的类间距离计算包括:对于每一个参与训练的随机批次,样本数为s,随机批次内样本的类别集合为B,对集合B中的类别计算两两之间的马氏距离,然后对于B中的每个类别,计算和B中其他类别距离的最小值,将所有最小值加权求平均,得到最终的类间距离。

在一些实施例中,所述难样本挖掘机制包括:对于每个输入样本,特征f和所有类别中心点之间的马氏距离为D(f,C

pD(f,C

所有满足条件的q的集合为Q,难样本损失定义如下:

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现所述的图像分类方法。

本发明和现有技术相比的有益效果包括:

本发明提出了一种图像分类方法,设计了基于随机批次的类别中心更新策略,可应用于基于类别中心点的图像分类任务和图像验证任务中,利用本发明的方法可以使得基于类别中心点的图像分类方法更加实用。相较于一般的基于类别中心点的图像分类方法,本发明提出来的基于随机批次的中心点更新策略可以只对随机批次中样本的类别计算类间距离,并且据此构建分散损失,使得模型可以学习到类间距离更大的特征分布。本发明能够让基于类别中心的图像分类方法可以直接用于人脸识别这种数据集类别数很大的任务中。而且,本发明中提出来的两阶段训练、类间距离加权平均的权重计算和难样本挖掘机制都可以保证基于本发明的方法可以在图像分类、人脸验证等任务中取得非常不错的效果,并且避免在样本数和类别数比较大的数据集上出现训练障碍。

本发明的图像分类方法提出基于随机批次的类别中心更新策略,针对随机批次内的类别对相应的类别中心进行更新,同时设计了参数可学习的马氏距离作为特征之间的度量方法。本发明的更新策略可以让基于类别中心的图像分类方法具有更好的工程意义,而且可以取得更好的图像分类结果。与现有技术相比,本发明在图像分类和图像验证任务上取得了更好的分类结果和验证结果。

附图说明

图1是本发明实施例的图像分类方法中更新策略的基本流程图。

图2是本发明实施例的类间距离权重示意图。

图3是本发明实施例的简单样本和难样本示意图。

具体实施方式

下面结合具体实施方式并对照附图对本发明作进一步详细说明。应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。

参照以下附图,将描述非限制性和非排他性的实施例,其中相同的附图标记表示相同的部件,除非另外特别说明。

本领域技术人员将认识到,对以上描述做出众多变通是可能的,所以实施例仅是用来描述一个或多个特定实施方式。

根据本发明的图像分类方法,提出了一种基于随机批次的类别中心更新策略,可以应用于图像分类和图像验证任务中。该方法主要包括:构建类别中心,提取图像特征;计算图像特征和类别中心点之间的马氏距离,构建分类损失;计算随机批次内样本对应类别的类别中心之间的马氏距离,构建分散损失;采用两阶段的权重更新方法,对特征提取模块和类别中心点中的可训练参数交替更新;使用难样本挖掘机制,在训练过程中对于满足一定条件的样本将其划分为难样本,增加这些样本在损失值中的权重。

下面进一步详细描述。

特征向量与类别中心:特征向量需要使用卷积神经网络来提取,对于一张输入图像,会提取一个高维向量f,作为输入图像的特征。本发明专利中,需要构建每个类别的类别中心向量,也就是中心点,设中心点集合为C=[C

马氏距离:

对于高维空间的两个特征向量x=[x

本发明提出使用马氏距离作为图像特征向量的度量方法,这种方法使用一个可训练的参数矩阵M计算两个特征向量之间的距离D,该距离称为马氏距离,其计算方法如式(6)所示。

其中矩阵M=K

本发明专利会计算分类损失和发散损失,两个损失函数都可以通过梯度反向传播更新矩阵中各个元素的值。

分类损失:

对于提取的每个样本的特征f,需要计算特征和类别中心点之间的马氏距离,假设类别中心点为集合C=[C

D(f,C

使用马氏距离训练分类模型时,只有样本特征和对应类别之间的马氏距离小于样本特征和所有其他类别中心点之间的马氏距离,才可以正确对样本进行分类,也就是需要满足式(8)所示不等式。

D(f,C

本发明专利将分类损失L

发散损失:

对于每个参与训练的随机批次,样本集合是J,随机批次内样本的类别集合为B,每个批次采用随机采样策略,可能无法包含训练集中的所有类别,如果在每个随机批次都计算所有类别中心点两两之间的马氏距离作为类间距离,运算量会很大,所以本发明专利考虑只计算随机批次类别集中B中出现的类别。

以B=[b

对于B中每个类别的中心点,都可以找到一个最短距离,如式(11)所示,计算出所有的v

v

L

计算类间距离需要给每个类别的最短距离设置一个权重w

其直观解释如图2所示,某类别中样本数越多,其分散程度可能越分散,在高维空间占据的空间越大。对于图2中的A、B和C三类,计算出来的v

两阶段更新:

为了使基于类别中心点的分类模型的训练过程更具有实践意义,本发明专利提出两阶段更新策略,两个阶段分别是类内优化阶段和类间优化阶段。类别中心采用随机初始化的方法,首先对一个或多个随机批次执行类内优化阶段,计算分类损失,并且将损失函数的梯度方向传播,对特征提取模块中的参数更新;然后对一个或多个随机批次执行类间优化阶段,计算类别中心的类间距离和发散损失,将损失的梯度反向传播,根据各类别中心点之间的距离更新中心点的参数,即让各类别尽可能远离。本实施方案对特征提取模块和类别中心点交替更新,可以避免模型难以训练的问题。

更新策略示意图如图1所示,计算分类约束会将梯度反向传播给卷积神经网络(图中①),更新特征提取模块的参数,计算的类间约束将梯度反向传播给类别中心点(图中②),更新中心点的可训练参数。而无论是分类约束还是类间约束,都会更新马氏距离中的可训练参数。

难样本机制:

对于每个输入样本,特征f和所有类别中心点之间的马氏距离为D(f,C

Q={q|pD(f,C

本发明专利的实施方案中,取p>1,其解释如图3所示,图3(a)中的X是类别2的某个样本特征点位置,四个空心圆表示四个类别中心点,当X和中心点2比较靠近,而且即便乘以一个大于1的系数也能够正确分类时,该样本定义为简单样本;图3(b)中,Y同样是类别2的某个样本特征点的位置,因为Y和中心点2的距离最短,可以正确分类,但是如果该距离乘以一个大于1的系数,可能最短距离变成了Y和中心点3的距离,此时该样本定义为难样本。根据图3可以看出,当样本特征和正确类别中心足够靠近时,模型已经可以对该样本很好地分类,所以该样本是简单样本,其损失值比较小,对模型训练的促进作用较小;对于能够正确分类但是样本和正确类别中心的距离无法显著小于样本和其他类别中心之间的距离时,该样本时难样本,使用该样本可以进一步促进模型的训练,因为该样本可以正确分类,所以其在损失函数中的值也比较小,所以需要在损失函数中添加难样本损失。

在计算难样本损失时,和式(9)不同的是,损失函数的分母部分不再是特征点和所有类别中心点之间的距离求和,而是只考虑集合Q中类别中心点和特征f之间的距离,如式(16)所示(假设样本属于第i类)。

本发明的背景部分可以包含关于本发明的问题或环境的背景信息,而不一定是描述现有技术。因此,在背景技术部分中包含的内容并不是申请人对现有技术的承认。

尽管已经描述和叙述了被看作本发明的示范实施例,本领域技术人员将会明白,可以对其做出各种改变和替换,而不会脱离本发明的精神。另外,可以做出许多修改以将特定情况适配到本发明的教义,而不会脱离在此描述的本发明中心概念。所以,本发明不受限于在此披露的特定实施例,但本发明可能还包括属于本发明范围的所有实施例及其等同物。

相关技术
  • 图像库的建立方法及系统、图像库和图像分类方法
  • 一种图像记录系统及图像分类方法
技术分类

06120112792354