【Stable Diffusion 1.5 】在 Unet 中每个 Cross Attention 块中的张量变化过程

article/2025/8/21 10:25:59

系列文章目录


文章目录

  • 系列文章目录
  • 前言
      • 特征图和注意力图的尺寸差异原因
      • 在Break-a-Scene中的具体实现
      • 总结


前言

特征图 (Latent) 尺寸和注意力图(attention map)尺寸在扩散模型中有差异,是由于模型架构和注意力机制的特性决定的。
在这里插入图片描述

特征图和注意力图的尺寸差异原因

  1. 不同的功能目的

    • 特征图(Feature Maps):承载图像的语义和视觉特征,维持空间结构
    • 注意力图(Attention Maps):表示不同位置之间的关联强度,是一种关系矩阵
  2. UNet架构中的特征图尺寸
    在U-Net中,特征图的尺寸在不同层级有变化:

    • 输入图像通常是 512×512 或 256×256
    • 下采样路径(Encoder):尺寸逐渐缩小 (512→256→128→64→32→16…)
    • 上采样路径(Decoder):尺寸逐渐增大 (16→32→64→128→256→512…)

    在Break-a-Scene代码中,我们看到特征图尺寸被下采样到64×64:

    downsampled_mask = F.interpolate(input=max_masks, size=(64, 64))
    
  3. 注意力机制中的尺寸计算
    注意力机制处理的是"token"之间的关系,其中:

    • 自注意力(Self-Attention):特征图中的每个位置视为一个token
    • 交叉注意力(Cross-Attention):文本序列中的token与特征图中的位置建立关联

    如果特征图尺寸是h×w,则自注意力矩阵的尺寸是(hw)×(hw),这是一个平方关系

    在代码中,注意力图通常被下采样到16×16:

    GT_masks = F.interpolate(input=batch["instance_masks"][batch_idx], size=(16, 16))
    
  4. 计算效率考虑

    • 注意力计算的复杂度是O(n²),其中n是token数量
    • 对于64×64的特征图,如果直接计算自注意力,需要处理4096×4096的矩阵
    • 为了降低计算量,通常在较低分辨率(如16×16)的特征图上计算注意力,这样只需处理256×256的矩阵

在Break-a-Scene中的具体实现

在Break-a-Scene中,这些尺寸差异体现在:

  1. 两种不同的损失计算

    a. 掩码损失(Masked Loss):应用在64×64的 Latent 上

    max_masks = torch.max(batch["instance_masks"], axis=1).values
    downsampled_mask = F.interpolate(input=max_masks, size=(64, 64))
    model_pred = model_pred * downsampled_mask
    target = target * downsampled_mask
    

    b. 注意力损失(Attention Loss):应用在16×16的注意力图上

    GT_masks = F.interpolate(input=batch["instance_masks"][batch_idx], size=(16, 16))
    agg_attn = self.aggregate_attention(res=16, from_where=("up", "down"), is_cross=True, select=batch_idx)
    
  2. 注意力存储的筛选

    在存储注意力图时,只保留小尺寸的注意力图:

    def forward(self, attn, is_cross: bool, place_in_unet: str):key = f"{place_in_unet}_{'cross' if is_cross else 'self'}"if attn.shape[1] <= 32**2:  # 只保存小于或等于32×32的注意力图self.step_store[key].append(attn)return attn
    
  3. 注意力聚合

    在聚合不同层的注意力时,确保只使用匹配目标分辨率的注意力图:

    def aggregate_attention(self, res: int, from_where: List[str], is_cross: bool, select: int):# ...num_pixels = res**2for location in from_where:for item in attention_maps[f"{location}_{'cross' if is_cross else 'self'}"]:if item.shape[1] == num_pixels:  # 只选择匹配分辨率的注意力图cross_maps = item.reshape(self.args.train_batch_size, -1, res, res, item.shape[-1])[select]out.append(cross_maps)# ...
    

总结

特征图和注意力图尺寸的差异主要是因为:

  1. 它们在模型中的功能不同
  2. 注意力计算的计算复杂度要求在较低分辨率上进行
  3. UNet架构中的不同层级有不同的特征图尺寸
  4. 为了平衡精度和计算效率,Break-a-Scene使用不同分辨率的特征图和注意力图来计算不同类型的损失

这种设计使得Break-a-Scene能够有效地学习token与图像区域之间的对应关系,同时保持计算效率。


http://www.hkcw.cn/article/XmTQumaZdx.shtml

相关文章

男子酒驾闯卡撞伤交警被刑拘 肇事司机已被控制

5月27日晚,交警在陕西西安莲湖区文景南路与农兴路十字路口附近设卡执勤时,一名男子驾车冲卡,冲毁护栏并撞伤了一名交警。该男子涉嫌酒驾,已被刑拘。事发后,该男子弃车逃离现场,但很快被执勤交警抓获。据事发地商户描述,听到撞击声后,一辆由北向南行驶的黑色商务车冲过道…

南京一公园内出现大量竹节虫 生态环境良好标志

近日,有网民在社交媒体上分享了南京老山国家森林公园内出现大量竹节虫的视频。从视频中可以看到,栏杆上布满了绿色的竹节虫,显得非常密集。29日上午,南京老山国家森林公园的工作人员确认,近期园内确实出现了不少竹节虫。不过,工作人员表示这种昆虫是无害的,不会攻击人类…

黑马点评项目02——商户查询缓存(缓存穿透、缓存雪崩、缓存击穿)以及细节

1.添加redis缓存 StringRedisTemplate 使用的是这个哈&#xff0c;有人可能有疑问&#xff0c;存放的是字符串吗&#xff0c;商铺值应该是个对象才对啊&#xff0c;在细节中解析 代码&#xff1a; Override public Result queryById(Long id) {//查询redis&#xff0c;若存在则…

python学习打卡day39

DAY 39 图像数据与显存 知识点回顾 图像数据的格式&#xff1a;灰度和彩色数据模型的定义显存占用的4种地方 模型参数梯度参数优化器参数数据批量所占显存神经元输出中间状态 batchisize和训练的关系 作业&#xff1a;今日代码较少&#xff0c;理解内容即可 1.图像数据的格式&a…

代码随想录打卡|Day50 图论(拓扑排序精讲 、dijkstra(朴素版)精讲 )

图论part08 拓扑排序精讲 代码随想录讲解链接 题目链接 思路 在这个题目之中&#xff0c;个别文件的处理依赖于别的文件&#xff0c;因此&#xff0c;文件的处理顺序十分重要。我们用图来表示文件的处理顺序&#xff0c;文件s指向文件t&#xff0c;则说明如果要正确的处理文…

朱啸虎:曾三次错失宁德时代!

朱啸虎:曾三次错失宁德时代。近日,在腾讯视频《激流第二季》中,投资人朱啸虎谈及自己三次错失宁德时代,投资电池失败损失7000万美金的经历。他表示早期看了宁德时代三次,认为他们的技术不性感,不是最新一代,因而投了掌握美国最新一代技术的波士顿电池。结果最新的技术不…

女子观赏“蓝眼泪”失踪多方搜救 游客夜观奇景失联

5月26日傍晚,浙江台州温岭市松门镇海边的大坑沙村,23岁游客孙女士在徒步时失踪。警方和救援人员在山上和海里搜寻多日,但截至29日上午仍未找到她。孙女士生于2002年,平时与父亲一起在宁波生活。5月26日,她告诉父亲自己出去玩,当晚不回家,随后乘列车前往温岭市。当天下午…

PS linux 基础篇1-AXI_DMA

系列文章目录 文章目录 系列文章目录前言一、AXI DMA ip核二、BD工程三、PS linux工程1.使用开源的xilinx_axidma-master工程验证驱动2.按照其他的开源进行就行&#xff0c;没什么写的了 前言 PL与PS之间快速的接口&#xff0c;本文为LOOP回环测试 一、AXI DMA ip核 MM2S mem…

儿子打死父亲后母亲欲顶罪母子被判 家庭悲剧引发深思

49岁的宋甲长期酗酒,酒后经常殴打、辱骂妻儿。2024年7月5日,宋甲喝了一斤多白酒后回家辱骂儿子宋乙,妻子李某上前劝阻却被殴打。看到母亲被家暴,儿子打了父亲一拳,父子发生争吵打斗,最终儿子将父亲打死。案发后,母子共同清理现场,并焚烧了作案工具。李某为了保护儿子,…

前端-关于apk文件分片上传

为什么需要分片上传&#xff1f; 一次性处理的致命缺陷&#xff1a; 内存溢出&#xff1a;大文件完全加载到内存 界面冻结&#xff1a;读取过程阻塞主线程 上传失败&#xff1a;单次请求可能超时或被服务器拒绝 需求&#xff1a;一个弹出框&#xff0c;将apk文件上传&#x…

病理切片TLS比例作为免疫治疗响应和预后的预测因子

定义 三级淋巴结构 &#xff08;TLS&#xff0c;Tumor Lymphoid Structure&#xff09;&#xff1a;是指在非淋巴组织中的慢性炎症部位&#xff08;包括癌症&#xff09;形成的异位淋巴细胞聚集体。 目前&#xff0c;分割和量化 TLS 的金标准是基于对 T&#xff08;CD3: 用于…

Linux浅谈

Linux浅谈 一、什么是 Linux&#xff1f;先抛开 “内核”&#xff0c;看整体 可以把 Linux 系统 想象成一台 “组装电脑”&#xff1a; 最核心的零件是 “主板”—— 这就是 Linux 内核&#xff08;Kernel&#xff09;&#xff0c;负责管理电脑里的所有硬件&#xff08;比如 …

【模板-指南】

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

ICASSP2025丨融合语音停顿信息与语言模型的阿尔兹海默病检测

阿尔兹海默病&#xff08;Alzheimers Disease, AD&#xff09;是一种以认知能力下降和记忆丧失为特征的渐进性神经退行性疾病&#xff0c;及早发现对于其干预和治疗至关重要。近期&#xff0c;清华大学语音与音频技术实验室&#xff08;SATLab&#xff09;提出了一种将停顿信息…

吴艳妮获亚锦赛季军 妈妈:希望她恢复最佳状态 带伤参赛展现坚韧

因当地暴雨天气,原本计划于5月29日下午5时进行的亚洲田径锦标赛女子100米栏决赛延迟至当晚9时开赛。中国选手吴艳妮以13秒068的成绩获得季军。5月28日上午,吴艳妮以13秒07的成绩晋级决赛。赛后,她的母亲熊艳表示,比赛结果并不重要,只希望她尽快恢复,以最佳状态迎接未来的…

AMBA-AHB仲裁机制

前文 仲裁机制保证了任意时刻只有一个 master 可以接入总线。Arbiter 决定了哪个向其发出接入请求的 master 可以接入总线&#xff0c;这通过优先级算法实现。AHB规范并没有给出优先级算法&#xff0c;需要设计者根据具体的系统要求定义。一般情况下 arbiter 不会中断一…

长期口臭可能是你的身体在求救 三步教你自救

有些人表面光鲜亮丽一张嘴却让人“退避三舍”尤其在晨起、空腹时口臭问题更明显不仅尴尬还可能暗藏健康隐患科学应对口臭还你清新口气!先对号入座你的口臭是临时客串还是疾病信号?1、生理性口臭:临时“小插曲”饮食作祟:大蒜、洋葱、韭菜等含硫化合物的食物,会通过血液循环…

辰亦儒老婆曾之乔回应二胎计划 随缘就好

5月29日,女演员曾之乔出席活动时分享了她的产后生活,表示生完宝宝后感到非常幸福,并透露怀孕期间给儿子取的小名叫“甜蜜”。她还提到与丈夫辰亦儒采取“责任制”方式照顾宝宝,两人会排班负责。对于是否计划要二胎,她表示一切随缘。曾之乔和辰亦儒在2009年合作《爱似百汇》…

kafka学习笔记(三、消费者Consumer使用教程——从指定位置消费)

1.简介 Kafka的poll()方法消费无法精准的掌握其消费的起始位置&#xff0c;auto.offset.reset参数也只能在比较粗粒度的指定消费方式。更细粒度的消费方式kafka提供了seek()方法可以指定位移消费允许消费者从特定位置&#xff08;如固定偏移量、时间戳或分区首尾&#xff09;开…

旅客私自携带230万美元现金入境 折合人民币超1600万元

近日,皇岗海关在福田口岸旅检渠道查获一名旅客违规携带未申报的230万美元现金入境,折合人民币超过1600万元。皇岗海关关员在福田口岸旅检进境大厅对旅客及行李物品进行监管时,发现一名经“无申报通道”通关的旅客携带的行李机检图像异常。随后,该旅客被引导至查验区进一步检…