Cross-modal Center Loss阅读报告

本文介绍了一种改进的CenterLoss,旨在提高跨模态检索任务中的特征表示能力。作者针对传统方法在多模态数据上的局限性,提出了一种新的跨模态损失函数,该函数能够更好地学习判别性和模态不变性的特征,适用于两个以上的模态。实验在3D跨模态检索任务上验证了方法的有效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章简介:

在这里插入图片描述
文章出处:https://arxiv.org/abs/2008.03561v1。作者单位:纽约市立大学。作者提出了一个在跨模态任务中通用的center loss。

文献动机

跨模态检索的目的是学习来自不同模态数据的判别性和模态不变性的特征。现有的深度学习方法往往会选择将不同模态的信息映射到同一特征空间,从而学习跨模态共享特征。

为了学习到判别性特征,我们需要确保同类数据的特征距离更近,同时异类数据的特征距离更远。在一些研究中,大家常常会利用交叉熵损失(cross entropy loss)和均方误差损失(mean square error)来最大化类间差异。为了比较从不同模态样本的差异,我们则需要提取模态不变性的特征。

作者分析,对于跨模态检索任务当前工作会有一些不足的地方。如下:

1.对于如何提取跨模态特征,传统的手段一般是利用预训练网络来处理来自多模态的样本。例如,在图文跨模态任务中,如果仅使用在Image上预训练的模型,在跨模态任务上既没有训练也没有微调,如此得到的特征则不是最好的特征。所以本文作者认为,在跨模态元数据上进行训练出来的模型,可以获得更好的特征表示。
2.现有工作中的损失函数,大都为了两模态任务。所以很有必要设计一个通用的简单的用于两模态以上的多模态任务。

相关领域发展现状

Center Loss来自ECCV2016的一篇文章A Discriminative Feature Learning Approach for Deep Face Recognition。文中提出,对于常见的图像分类问题,例如MINIST,如果仅采用交叉熵损失,那么最后各个类别的分类结果如下:
在这里插入图片描述
如果采用softmax loss加上center loss,那么各个类别的特征分布则可以达到如下图效果。、

在这里插入图片描述
可见,使用center loss之后,类间距离变大了,类内距离减少了(主要变化在于类内距离:intra-class)。
在这里插入图片描述
Center Loss的表达式如下:

在这里插入图片描述

cyi表示第yi个类别的特征中心,xi表示全连接层之前的特征。m表示mini-batch的大小。因此这个公式就是希望一个batch中的每个样本的feature离feature 的中心的距离的平方和要越小越好,也就是类内距离要越小越好。这就是center loss。
关于LC的梯度和cyi的更新公式如下:
在这里插入图片描述
在这里插入图片描述
这个公式里面有个条件表达式如在这里插入图片描述
,这里当condition满足的时候,下面这个式子等于1,当不满足的时候,这个式子等于0。

因此上面关于cyi的更新的公式中,当yi(表示yi类别)和cj的类别j不一样的时候,cj是不需要更新的,只有当yi和j一样才需要更新。

本文提出的cross modal center loss是在传统单模态center loss做的创新。实验为3D跨模态检索任务。图示如下:

在这里插入图片描述

贡献

1.提出一个cross modal loss用于跨模态共有特征空间。
2.提出一个跨模态检索框架,利用cross modal loss 实现三个模态间的相互检索。

方法

本文提出的跨模态center loss是在传统center loss的基础上的扩充。形式化表示如下:
数据集S中包含N个实体。其中第i个实体ti是一个包含M个模态,且标签为yi的集合。ti中不同模态的样本用si表示。如下式:
在这里插入图片描述
因为,来自不同模态的样本在这里插入图片描述
之间的相似度不可直接度量。那么则需要利用映射函数在这里插入图片描述
(其中在这里插入图片描述
是可学习参数)将它们映射到一个公共的特征空间中,再进行center loss的计算。其目的就是让在这里插入图片描述
更小,让在这里插入图片描述
更大。

所以,cross modal center loss 可以表示如下:

在这里插入图片描述
更新方法和过程如下:

在这里插入图片描述

### 跨模态融合的技术与实现 跨模态融合(Cross-Modal Fusion)是指通过结合来自不同数据源的信息来提升模型性能的一种技术。这种技术广泛应用于视觉-语言表示学习、多感官交互等领域。以下是关于该主题的一些关键技术及其具体实现方式。 #### 多模态数据处理的基础理论 在机器学习领域,多种人工智能技术被用于改进资产定价准确性以及更广泛的多模态数据分析任务[^1]。这些技术包括但不限于机器学习、自然语言处理、深度学习等。其中,深度学习尤其擅长于提取复杂特征并将其映射到统一的空间中以便后续分析。 #### Bridge-Tower 方法论 一篇名为《Bridge-Tower: Building Bridges Between Encoders in Vision-Language Representation Learning》的论文介绍了一种新颖的方法——Bridge-Tower架构[^2]。此方法旨在解决视觉和语言之间的语义鸿沟问题。它通过构建连接两个编码器之间桥梁的方式实现了高效的跨模态信息传递。这种方法不仅提高了下游任务的表现力,还增强了对于未见过样本的理解能力。 #### 实现细节 为了更好地理解如何实际操作 cross-modal fusion,在 Python 中可以采用如下代码框架作为起点: ```python import torch from transformers import BertModel, ViTModel class CrossModalFusion(torch.nn.Module): def __init__(self): super(CrossModalFusion, self).__init__() # 初始化文本编码器 (BERT) self.text_encoder = BertModel.from_pretrained('bert-base-uncased') # 初始化图像编码器 (ViT) self.image_encoder = ViTModel.from_pretrained('google/vit-base-patch16-224-in21k') # 定义全连接层以进行联合嵌入空间投影 self.fc_text = torch.nn.Linear(768, 512) self.fc_image = torch.nn.Linear(768, 512) def forward(self, text_input_ids, image_pixel_values): text_output = self.text_encoder(text_input_ids).last_hidden_state[:,0,:] image_output = self.image_encoder(image_pixel_values).last_hidden_state[:,0,:] fused_text = self.fc_text(text_output) fused_image = self.fc_image(image_output) return fused_text, fused_image ``` 上述代码片段展示了如何利用预训练的语言模型 BERT 和视觉 Transformer 来创建一个多模态融合网络结构。通过对齐两种模式下的隐藏状态向量维度至相同大小后完成初步融合过程。 #### 总结 综上所述,跨模态融合涉及多个子领域的协同工作,从基础算法设计到高级应用开发均需深入研究。无论是基于传统统计学还是现代神经网络驱动方案,其核心目标始终围绕着提高异构数据间关联度展开探索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值