论文阅读31 | Unified Batch All Triplet Loss for Visible-Infrared Person Re-identification

论文:Unified Batch All Triplet Loss for Visible-Infrared Person Re-identification

一、创新点

本文的创新点在于使用余弦距离对现有的三种损失函数进行了改进。1)改进难挖掘的跨模态三元组损失,考虑全部样本的所有情况,为减少计算量引入指数对数策略。2)改进ID损失,考虑样本向量和权重向量之间的余弦距离。3)改进难挖掘异质中心损失,考虑全部样本中心的所有情况,引入指数对数策略减少计算量。

二、网络框架

网络比较简单,没有增加复杂的模块。首先,引入了随机灰度作为一种数据增强方法,它随机选择具有0.5概率的部分可见图像,将其转换为灰色图像,来减少模态差异。网路bakbone选用resnet50,参数共享。使用1x1卷积层,降低特征图的通道维度。使用平均池化将特征图变为一维向量。最后,使用我们训练的三个损失函数来训练网络(全样本三元组损失、余弦ID损失、全样本中心损失)。
在这里插入图片描述

三、损失函数

1.Unified Batch All Triplet Loss(统一批处理全三元组损失)

(1)Batch Hard Triplet loss

对于VT ReID任务常用的采样策略是2PK采样策略,在一批中选择P个身份ID,对每个ID随机选择K张可见图像和K张红外图像。这样的采样策略确保每个ID在训练阶段都有足够的和相同数量的图像。常用的难挖掘三元组损失Batch Hard Triplet loss:
在这里插入图片描述
这个三元组的问题在于,形成三元组的所有样本有可能属于同一模态。就有可能导致,这意味着,在每次迭代中,一种模态被优化得更多,而另一种模态被优化得更少,这种不平衡将使模型难以拟合较少优化的模态。

(2)Cross Modality Batch Hard Triplet loss

为了解决该问题,有文献提出了在保留(1)的同时,添加一个跨模态三元组损失。添加的这个三元组,anchor来自一个模态,正负样本来自另一个模态。最终的损失包含了全局三元组损失和跨模态三元组损失。
在这里插入图片描述
在这里插入图片描述
(3)Unified Batch All Triplet Loss

作者认为与其设计三元组的采样cel,不如把所有样本都用来计算三元组损失。具体的,对于每一个anchor,依次遍历所有正样本和负样本,全部用来形成三元组。最后,再遍历每个样本anchor,对所有的anchor三元组求和。
在这里插入图片描述
对于每个anchor,会有2K-1个正样本,2PK-2K个负样本,每个anchor总共2(P-1)K(2K-1)个三元组。这样就考虑了所有的可能情况,不会出现优化不平衡的现象。然而计算复杂度太高,于是作者做了一下改进,提出了 Unified Batch All Triplet loss。

还是考虑所有样本形成三元组。只是将计算量降到了2(P-1)K + (2K-1)。另外,用exp替换[]+,这样所有的三元组都能造成适当的损失,而不只有大于margin的三元组。γ是比例因子,S是余弦距离。
在这里插入图片描述
以上三种三元组损失的比较:
在这里插入图片描述

2. Collaborative Optimization with Cosine Softmax Loss

普通计算ID损失:W是FC层参数。pi表示xi被正确分类的概率。yi是xi的类。Wj表示W中的第j列,Wj可以看作是j类的中心
在这里插入图片描述
在这里插入图片描述
在计算ID损失的时候,Softmax loss是计算的向量内积;三元组损失计算的是向量之间的欧氏距离。它们不一致。更糟糕的是,在推理阶段,通常使用L2标准化向量,这意味着不管是向量内积还是欧几里得距离作为推理中的度量函数,它都相当于余弦距离。这与训练过程中使用的度量函数不一致。

为了解决这些问题,作者代替softmax loss,引入了Cosine Softmax loss。S计算余弦距离。
在这里插入图片描述
通过比较,Cosine Softmax loss 和 Softmax loss的区别是,前者优化了样本向量和权重向量之间的余弦距离,而后者优化了向量内积。此外,Cosine Softmax loss增加了一个margin,使属于同一类的点更加集中。

3.Batch All Hetero Center Triplet Loss

有文献提出难挖掘的异质中心三元组损失,考虑每个ID中心之间的距离。同ID的两模态特征中心的距离要小于该中心和其他所有中心距离一个margin。在这里插入图片描述
作者也是觉得应该考虑所有样本。所以对此进行改进,提出了Batch All Hetero Center Triplet Loss。v¯表示L2标准化向量。它考虑了所有的中心三元组,并优化了余弦距离。
在这里插入图片描述
以上两种中心损失的比较
在这里插入图片描述
4.总损失
在这里插入图片描述

4.实验指标

在这里插入图片描述

### 回答1: qt-unified-windows-x86-4.0.1-online.exe 是一个 Qt 软件开发工具的安装程序,该工具可用于开发跨平台应用程序。 Qt 是一个跨平台 C++ 库,它能够使软件开发更加快速而且易于使用。Qt 库包含了很多模块,包括 GUI、网络、数据库、XML 等等。Qt 软件开发工具是一个可以快速开发可运行于多个操作系统(如 Windows、OS X、Linux 和 Android)的跨平台应用程序的工具。 qt-unified-windows-x86-4.0.1-online.exe 是一个在线安装程序,它需要连接到 Qt 公司的服务器来下载和安装软件。安装过程中可以选择使用该工具以及可能需要的模块和对应的版本(如 Qt Creator、Qt Designer、Qt WebEngine 等等)。注意:安装程序需要联网。 总之,Qt 软件开发工具是一个为了方便开发者快速创建跨平台应用程序而设计的工具。qt-unified-windows-x86-4.0.1-online.exe 是该工具的一个在线安装程序,方便用户自定义安装过程。 ### 回答2: qt-unified-windows-x86-4.0.1-online.exe是一个Qt跨平台开发工具的安装文件。它是一个在线安装程序,主要用于Windows操作系统中32位的x86架构。Qt是一个功能强大的开发工具包,它具有GUI开发工具、网络模块、数据库支持等功能,能够帮助开发者快速地构建高质量、可扩展性的应用程序。Qt的跨平台开发特点,使得开发者可以同时在多个平台上开发,只需一次编码,即可运行于不同的操作系统上。qt-unified-windows-x86-4.0.1-online.exe通过网络安装,能够自动下载和安装必要的组件和工具,从而降低了Qt工具包的安装难度和复杂度。此外,Qt还提供了C++语言的编程接口和QML语言的脚本编写方式,使得开发者能够根据自己的需要选择不同的编程方式来进行应用程序的开发。因此,qt-unified-windows-x86-4.0.1-online.exe是一个非常有用的工具,适合想要开发跨平台应用程序的开发者使用。 ### 回答3: qt-unified-windows-x86-4.0.1-online.exe是一款QT开发环境的安装程序,适用于Windows x86系统。使用这个程序可以帮助开发者在Windows系统上快速安装QT开发环境。QT是一款跨平台开发框架,用于开发桌面应用、移动应用和嵌入式应用等。QT开发框架支持C++编程语言,并提供了一系列丰富的库,开发者可以使用这些库来构建自己的应用程序。 qt-unified-windows-x86-4.0.1-online.exe是一款在线安装程序,它需要联网下载QT开发环境的相关组件。安装过程中,开发者可以选择需要安装的组件,例如QT Creator、QT Designer等等。安装完成后,开发者就可以开始使用QT开发框架来开发自己的应用程序了。 总之,QT开发框架是一款十分强大的开发工具,它可以帮助开发者快速构建跨平台的应用程序。qt-unified-windows-x86-4.0.1-online.exe则是一款方便快捷的安装程序,可以帮助开发者在Windows x86系统上快速安装QT开发环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值