【论文阅读】TransCAM: Transformer Attention-based CAM Refinement for WSSS

论文提出TransCAM模型,通过Transformer的注意力权重细化CNN的类激活映射,解决弱监督分割中对象部分激活的问题。TransCAM结合Conformer网络,利用Transformer的全局特性改进CAM生成,提高伪标签的质量,从而提升弱监督语义分割的性能。

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

分享一篇阅读的用于弱监督分割的论文

论文标题:

TransCAM: Transformer Attention-based CAM Refinement for Weakly Supervised Semantic Segmentation

作者信息:

在这里插入图片描述

代码地址:

https://github.com/liruiwen/TransCAM

Abstract

大多数现有的WSSS方法都是基于类激活映射(CAM)来生成像素级的伪标签,用于监督训练。但是基于CNN的WSSS方法只是凸出最具有区别性的地方,即CAM部分激活而不是整体对象。作者提出了TransCAM模型,它基于Conforme的backbone结构,利用transformer的attention权重来细化CNN分支的CAM。

Introduction

在这里插入图片描述

现有的方法: 基于CNN训练分类网络的激活CAM,然后训练一个完整的监督网络。
现有方法的缺点:主要是部分激活问题,由类模型生成的CAM倾向于突出对象中最具区别性的部分而不是整体(如图1所示)。作者认为这个根本是CNN造成的,它的局部性质的接受阈只捕获小范围的特征依赖性。(就是说CNN还是感受野小了,偏向Local).
作者的motivation: 和CNN相比,Transformer更加具备整体性,利用多头自注意和多层感知器来捕获远程语义关联。并且Transformer不太注重局部细节信息,这都比较利好WSSS任务。
作者的方法: 使用Conformer作为主干网络(一种结合CNN和Transformer的结构)。原本的Conformer仅仅通过隐形的方式(FCU结构)对transformer分支的注意力权重进行调整,导致WSSS任务表现不佳。作者提出了TransCAM模型,直接利用transformer的注意力权重微调cnn分支生成CAM。另外Transformer也跟CNN类似,低层次block和高层次block各有其特点,具体方法上,作者通过对所有的多头注意力权重值进行平均,进而构建同时embedding低level和高level特征affinity的注意图。

Methodology

在这里插入图片描述

3.1. Preliminaries

The Conformer network: 一个由CNN和trasformer组成的双主干网络(主要结构见figure2红色部分),上方是resnet,下方是vit,中间通过FCU模块继进行连接。
Class Activation Map: 常规的CAM方法,计算公式如下:
在这里插入图片描述

3.2. CAM Generation from Conformer

先通过CNN的分支,获得初始的CAM,记为 M M M
(作者分析了这种CAM比一般的单backbone的强,因为有transformer分支提供的fcn进行隐形的调节,没有充分利用注意权重的特征亲和信息进行定位。

3.3. Attention Map Generation

首先计算第 l l l层transformer block的attention权重,公式如下:
在这里插入图片描述
其实就是Q跟K的点集加上softmax(常规attention计算中,除了v的其他部分),然后在这个基础上,对每个head取平均值,然后再在多个transformer block上也求平均值(浅层block和深层block都一起算)
在这里插入图片描述
同时这里剔除transformer中的cls token,因为后面用不到,即:
在这里插入图片描述

3.4. Attention-based CAM refinement

利用前面计算的attention权重,对初始的CAM进行refine。利用矩阵的乘法即可:
在这里插入图片描述
后面这个操作是reshape,让feature map重塑到相当的尺寸。

3.5 Training and Pseudo Label Generation

模型的分类的logits是由cnn分支和transformer分支共同作用输出的(见figrue2),即:
在这里插入图片描述
模型仅有分类损失函数,计算方法为:
在这里插入图片描述
其余设置和常规的WSSS任务一样,给背景手动设置score:
在这里插入图片描述
使用argmax获得伪标签:
在这里插入图片描述

Experiments

消融实验
在这里插入图片描述
在这里插入图片描述

一阶段的结果:
在这里插入图片描述
二阶段的结果:
在这里插入图片描述

### 基于 Transformer 的序列推荐系统 (TSR) 实现与概述 基于 Transformer 的序列推荐系统(Transformer-based Sequential Recommendation System, TSR)是一种利用自注意力机制来捕捉用户行为序列中长期依赖关系的方法。这种方法通过建模用户的动态兴趣,能够更有效地预测用户可能感兴趣的商品或服务。 #### 1. Transformer 架构的核心概念 Transformer 是一种由 Vaswani 等人在论文《Attention is All You Need》中提出的神经网络架构[^3]。它主要依靠自注意力机制(Self-Attention Mechanism),能够在处理长序列数据时捕获全局上下文信息。相比于传统的 RNN 或 LSTM 模型,Transformer 不仅能并行化训练过程,还能更好地学习远距离依赖关系。 在推荐系统的背景下,Transformer 被用来分析用户的历史交互记录,从而推断其未来的偏好。具体来说: - **输入表示**:用户的行为历史被编码为一系列嵌入向量 \( \{e_1, e_2, ..., e_n\} \),其中每个向量代表一项商品或者一次互动。 - **位置编码**:为了保留时间顺序信息,通常会加入绝对或相对的位置编码 \( PE_{pos} \)[^4]。 - **自注意力层**:该层允许模型关注整个序列中的重要部分,而不仅仅是最近的几个项目。 以下是 Transformer 推荐模型的一个简化版本实现示例: ```python import torch.nn as nn class TransformerLayer(nn.Module): def __init__(self, d_model=512, nhead=8, num_layers=6): super(TransformerLayer, self).__init__() encoder_layer = nn.TransformerEncoderLayer(d_model=d_model, nhead=nhead) self.transformer_encoder = nn.TransformerEncoder(encoder_layer, num_layers=num_layers) def forward(self, src): output = self.transformer_encoder(src.permute(1, 0, 2)) return output[-1] class SequenceRecommendationModel(nn.Module): def __init__(self, vocab_size, embedding_dim=512, nhead=8, num_layers=6): super(SequenceRecommendationModel, self).__init__() self.embedding = nn.Embedding(vocab_size, embedding_dim) self.positional_encoding = PositionalEncoding(embedding_dim) self.transformer = TransformerLayer(d_model=embedding_dim, nhead=nhead, num_layers=num_layers) self.fc_out = nn.Linear(embedding_dim, vocab_size) def forward(self, input_seq): embedded = self.embedding(input_seq) encoded_input = self.positional_encoding(embedded) transformer_output = self.transformer(encoded_input) prediction_scores = self.fc_out(transformer_output) return prediction_scores ``` 上述代码定义了一个简单的基于 Transformer 的推荐模型框架,其中包括嵌入层、位置编码以及最终的全连接输出层用于生成评分矩阵。 #### 2. 多行为推荐中的应用 对于多行为场景下的推荐问题,可以扩展基础的 Transformer 结构以适应不同的行为类型。例如,在给定多种行为模式的情况下,可以通过引入额外的行为特征维度或将每种行为视为独立子任务的方式增强表达能力[^1]。此外,还可以借鉴图卷积网络的思想构建隐含的关系结构[^2],进一步提升性能表现。 #### 3. 总结 综上所述,基于 Transformer 的序列推荐技术凭借强大的上下文理解能力和灵活的设计空间成为当前研究热点之一。然而值得注意的是,实际部署过程中还需要考虑计算资源消耗等因素的影响。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值