基于自主进化损失的图像检索与识别方法技术

技术编号:37870481 阅读:19 留言:0更新日期:2023-06-15 20:59
本发明专利技术公开一种基于自主进化损失的图像检索与识别方法,提出了一种全新的类Softmax度量损失函数,它与原始的Softmax损失函数共享参数,他们形式类似,但有三个主要差异:不同的γ、L2归一化特征和停止梯度更新的W

【技术实现步骤摘要】
基于自主进化损失的图像检索与识别方法


[0001]本专利技术属于图像检索领域,具体涉及一种基于自主进化损失的图像检索与识别方法。

技术介绍

[0002]图像检索任务的基本形式是给定一个包含特定实例(例如特定目标、场景、建筑等)的查询图像,之后从数据库图像中找到包含相同实例的图像。深度度量学习是在图像检索任务中被广泛应用的重要方法之一。
[0003]在自主进化的度量学习任务中,深度度量学习(Deep metric learning,DML)旨在学习相似性度量,它可以将样本映射到高维空间。在高维空间中,同一实例的样本越接近,而不同实例的样本距离越远。典型的深度度量学习应用包括图像检索、人员重新识别等。深度度量学习的流行方法包括基于成对的方法和基于Softmax的方法。基于成对的方法侧重于寻找有效的方法来改进现有成对损失(如对比损失和三重损失)的样本加权策略。基于成对的方法直接影响嵌入空间中点对之间的距离,这与DML的目标密切相关。就基于Softmax的方法而言,现有的一些方法认为使用Softmax损失来训练模型,也可以取得良好的性能。与基于成对的方法相比,基于Softmax的方法可以被视为使用代理近似每个类,并使用所有代理为每个训练迭代提供全局上下文。
[0004]现有研究发现,优化基于Softmax的方法对应于基本成对损失的近似界优化器,表明最小化Softmax损失等同于最大化特征和标签之间相互信息的区别视图。实际上,在训练基于Softmax的深度度量学习模型时,没有L2归一化的内积(即最后一个完全连接层)是最广泛使用的相似性度量,但特征通常在测试阶段进行L2归一化,这意味着训练期间使用的距离度量不同于测试阶段使用的距离。为了弥补这一差距,一种简单的方法是在训练过程中直接使用L2归一化。然而,L2归一化标准化的引入会使网络很难收敛,从而导致训练的失败。
[0005]现有研究认为这主要是因为L2归一化后的内积输出的范围仅为[

1,1],即使样本分离良好,也会阻止概率分布接近1。为了应对这个收敛问题,研究人员尝试在内积之后附加一个缩放层。缩放层有一个可学习的参数,用于将内部输出缩放到更大的值,而不是1,由此促进Softmax损失继续减小,从而帮助网络收敛。然而,这种方法并不能保证网络能够学习到最佳的缩放参数。

技术实现思路

[0006]针对现有技术存在的不足,本专利技术目的在于提供了一种基于自主进化损失的图像检索与识别方法,解决应用深度度量学习于图像检索任务时仅学习Softmax损失函数对模型学习效果影响的问题。
[0007]本专利技术是通过以下技术方案来实现:
[0008]基于自主进化损失的图像检索与识别方法,其特征在于包括如下步骤:
[0009](1)使用ResNet50模型作为主干网络,并在ImageNet大型分类数据集上进行预训练;
[0010](2)用广义均值池化代替全局平均池化,在主干网络上添加没有缩放项和偏置项的批归一化层,去掉主干网络中最后一个BN

ReLU模块,使用L2归一化欧氏距离计算测试时的召回率;
[0011](3)将所有的输入图像调整为256*256分辨率,并裁剪到224*224分辨率,不对输入的数据进行数据增强操作,只将输入的数据采样到256*256的图像大小;
[0012](4)将模型经过100轮次的训练,采用余弦退火算法设定参数学习率,将γ=30设为默认值;
[0013](5)对Softmax损失函数使用标签平滑,当Softmax损失函数的返回值小于3时,梯度停止Softmax损失函数开始加入训练;
[0014]梯度停止Softmax损失函数如下公式(2):
[0015][0016]其中N为每一次输入批次中的样本数量,c为训练集中的类数量,f
i
为第i个样本的特征,y
i
为第i个样本的标签,W
j
是最后一个全连接层的第j列,对应第j类,表示L2归一化,而表示不允许通过W
j
进行梯度更新,γ是一个预定义的标量;Softplus(x)=log(1+e
x
),
[0017](6)固定模型参数,不再通过随机梯度下降算法进行网络参数更新,仅利用网络作为图像特征的提取器;
[0018](7)将部署了梯度停止Softmax损失函数并移除BN

ReLU模块的ResNet

50特征提取网络输出特征F;
[0019](8)针对查询样例经过模型特征推理后得到特征F
q
,将图像库中所有图像的特征提取出来储存为特征序列{F1,

,F
m
};
[0020](9)计算查询样例特征F
q
和图像库中所有图像特征的欧氏距离:d=||F
q

F
i
||2,i=1,2,3,

,m;
[0021](10)得到距离序列D=[d1,d2,

,d
m
];
[0022](11)通过距离对D进行重排序,取与查询样例最相近的L张图像,如果图像中存在与查询样例ID相同的图像则认为此次图像检索成功。
[0023]进一步,所述步骤(5)中将Softmax损失函数和梯度停止Softmax函数结合使用,则总损失为如下公式:
[0024]L=L
softmax
+L
SGSL
ꢀꢀ
(1)
[0025]梯度停止Softmax损失函数和原始Softmax损失函数共享参数。
[0026]进一步,采用的图像库构成如下:
[0027]CUB

200

2011有200个类,11788张图片,前100个类5864张图像用于训练,其余类
5924张图像用于测试;
[0028]CAR

196有198个类和16,185张图像,前98个类用于训练8054张图像,其他98个类8131张图像用于测试;
[0029]Stanford Online Products有22634个类继而120053张图片,前11318个类59551张图像用于训练,其他11316个类60502张图像用于测试;
[0030]In

shop clothing有50个细粒度的类别和1000个属性,包含超过80万张图像。
[0031]本专利技术基于自主进化损失的图像检索与识别方法,提出了一种全新的类Softmax度量损失函数,它与原始的Softmax损失函数共享参数,他们形式类似,但有三个主要差异:不同的γ、L2归一化特征和停止梯度更新的W
j
。由于梯度停止Softmax损失函数中使用的特征是L2归一化的,因此训练阶段的距离度量与测试阶段的一致,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于自主进化损失的图像检索与识别方法,其特征在于包括如下步骤:(1)使用ResNet50模型作为主干网络,并在ImageNet大型分类数据集上进行预训练;(2)用广义均值池化代替全局平均池化,在主干网络上添加没有缩放项和偏置项的批归一化层,去掉主干网络中最后一个BN

ReLU模块,使用L2归一化欧氏距离计算测试时的召回率;(3)将所有的输入图像调整为256*256分辨率,并裁剪到224*224分辨率,不对输入的数据进行数据增强操作,只将输入的数据采样到256*256的图像大小;(4)将模型经过100轮次的训练,采用余弦退火算法设定参数学习率,将γ=30设为默认值;(5)对Softmax损失函数使用标签平滑,当Softmax损失函数的返回值小于3时,梯度停止Softmax损失函数开始加入训练;梯度停止Softmax损失函数如下公式(2):其中N为每一次输入批次中的样本数量,c为训练集中的类数量,f
i
为第i个样本的特征,y
i
为第i个样本的标签,W
j
是最后一个全连接层的第j列,对应第j类,表示L2归一化,而表示不允许通过W
j
进行梯度更新,γ是一个预定义的标量;Softplus(x)=log(1+e
x
),(6)固定模型参数,不再通过随机梯度下降算法进行网络参数更新,仅利用网络作为图像特征的提取器;(7)将部署了梯度停止Softmax损失函数并移除BN

ReLU模块的ResNet

50特征提取网络输出特征F;(8)针对查询样例经过模型特征推理后得到特征F
q
,将图像库中所有图像的特征提取出来储存为特征序列{F1,

【专利技术属性】
技术研发人员:王鹏王云龙张艳宁吴瑞祺杨路
申请(专利权)人:西北工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1