【ComfyUI节点】扰动注意力引导Perturbed Attention Guidance

news2024/11/23 11:14:59

扰动注意力引导 Perturbed Attention Guidance

GitHub - KU-CVLAB/Perturbed-Attention-Guidance: Official implementation of "Perturbed-Attention Guidance"

按照官方介绍,扰动注意力指导显著提高了扩散模型的样本质量,而无需外部条件(例如类标签或文本提示)或额外训练。这在无条件生成设置中特别有价值,因为无分类器指导 (CFG) 不适用。我们的指导可用于增强利用无条件扩散模型的各种下游任务的性能,包括带有空提示的 ControlNet 和超分辨率和修复等图像恢复任务。

论文地址

Perturbed-Attention Guidance

https://arxiv.org/pdf/2403.17377

使用PAG之前: 

使用PAG之后:

以下是对文章的详细总结:

主要贡献:

  • PAG技术:提出了一种新型的采样引导方法,能够在无条件和有条件的设置中提升扩散样本的质量。
  • 无需额外训练:PAG不需要额外的训练或集成外部模块,即可实现性能提升。
  • 结构增强:通过在去噪过程中逐步增强样本结构,特别是在无条件生成场景中,PAG能够显著提升样本质量。

技术细节:

  • 自注意力机制:利用自注意力图捕获结构信息的能力,通过替换扩散U-Net中的自注意力图为单位矩阵来生成结构降级的中间样本。
  • 隐式判别器:使用隐式判别器区分理想样本和不理想样本,引导去噪过程远离结构崩溃的样本。
  • PAG实现:通过扰动自注意力图,PAG能够在不同时间步长上提供语义线索,从而改善样本的结构和细节。

实验结果:

  • 定量结果:在ADM和Stable Diffusion模型上,PAG在无条件和有条件的设置中均能显著提升样本质量。
  • 定性结果:通过视觉比较,PAG引导的样本在结构和语义上更为合理,与未引导的样本相比,具有更高的质量。
  • 下游任务:PAG在图像恢复(如修复和去模糊)和ControlNet条件下的图像生成等下游任务中表现出色。

相关工作:

  • 扩散模型:讨论了扩散模型在图像生成中的基准和挑战,以及如何通过改进采样速度和训练成本来提高性能。
  • 采样引导技术:分析了分类器引导(CG)和无分类器引导(CFG)等现有技术的优缺点。

实验设置:

  • 评估指标:使用了FID、IS和改进的精确度和召回率等指标来评估生成样本的质量。
  • 实验环境:所有实验在NVIDIA GeForce RTX 3090 GPU和NVIDIA RTX A6000 GPU上进行。

应用案例:

  • Stable Diffusion:PAG在Stable Diffusion模型上的无条件生成和文本到图像合成任务中均显示出优势。
  • 图像恢复:在PSLD模型中,PAG显著提升了图像恢复任务的性能。

讨论与未来工作:

  • PAG与CFG的比较:PAG在保持样本多样性的同时提升了质量,而CFG可能会牺牲多样性。
  • 计算成本:PAG与CFG具有相似的计算成本,但未来研究可以探索减少计算开销的技术。

结论:

文章认为PAG通过结构扰动改进了图像生成质量,且适用于无条件和有条件的设置。PAG在多种下游任务中表现出了其有效性,丰富了对采样引导方法和扩散模型的理解,并展示了无条件扩散模型的广泛应用潜力。

试验测试

comfyui节点其实已经内置了,所以不需要另外安装。

搭建一个简单的工作流:

总体来说,效果还是有提升的,对不同大模型的兼容性也还不错,推荐尝试一下,或许可以提升画面效果;

✨写在最后

如果对comfyui还不熟悉的话,最近面向ComfyUI的新手,开了一门图文课程,现在已经更新完成了,如果大家在学习过程中遇到什么问题,也可以直接文章下留言,会持续更新相关答疑内容哈。欢迎订阅哦~

https://blog.csdn.net/jumengxiaoketang/category_12683612.html

​​

感谢大家的支持~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1904941.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录第45天|动态规划

300.最长递增子序列 参考 dp[i] 表示以 i 为结尾的最长递增子序列长度递推公式: 使用 i 和 j 判断 dp[i] max(dp[j] 1, dp[i])每次 j 都需要从头遍历 初始化: dp[i] 1 class Solution { public:int lengthOfLIS(vector<int>& nums) {vector<int> dp(nums…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【明文导入密钥(C/C++)】

明文导入密钥(C/C) 以明文导入ECC密钥为例。具体的场景介绍及支持的算法规格 在CMake脚本中链接相关动态库 target_link_libraries(entry PUBLIC libhuks_ndk.z.so)开发步骤 指定密钥别名keyAlias。 密钥别名的最大长度为64字节。 封装密钥属性集和密钥材料。通过[OH_Huks_I…

实现antd designable平台的组件拖拽功能

平台&#xff1a;designable设计器 github&#xff1a;designable 目录 1 背景2 技术栈3 组件拖拽和放置3.1 类型定义3.2 拖拽3.3 放置 1 背景 由于业务需求&#xff0c;我们需要实现designable平台的一个简易版的组件拖拽功能。 #mermaid-svg-QrxSDGe9YyGG3LbQ {font-family:…

andboxie-Plus - 知名沙盒软件、支持游戏多开测试软件

我们经常会需要用到一些毒瘤软件——它们可能不是真正的恶意软件&#xff0c;但总爱偷摸干一些流氓行为。 工作中&#xff0c;有时还不得不安装使用一些来路不明、不能完全信任的可疑软件。 装上吧&#xff0c;心里膈应、难受&#xff1b;不装吧&#xff0c;有些工作又进行不…

SQLite 嵌入式数据库

目录&#xff1a; 一、SQLite 简介二、SQLite 数据库安装1、安装方式一&#xff1a;2、安装方式二&#xff1a; 三、SQLite 的命令用法1、创建、打开、退出数据库&#xff1a;2、编辑数据库&#xff1a; 四、SQLite 的编程操作1、打开 / 创建数据库的 C 接口&#xff1a;2、操作…

【数据结构与算法】快速排序双指针法

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《数据结构与算法》 期待您的关注 ​

工程文件参考——CubeMX+LL库+SPI主机 阻塞式通用库

文章目录 前言CubeMX配置SPI驱动实现spi_driver.hspi_driver.c 额外的接口补充 前言 SPI&#xff0c;想了很久没想明白其DMA或者IT比较好用的方法&#xff0c;可能之后也会写一个 我个人使用场景大数据流不多&#xff0c;如果是大批量数据交互自然是DMA更好用&#xff0c;但考…

【Java12】封装

封装&#xff08;Encapsulation&#xff09;是面向对象的三大特征之一&#xff08;另两个是继承和多态&#xff09;&#xff0c;指的是将对象的状态信息隐藏在对象内部&#xff0c;不允许外部程序直接访问对象的内部信息&#xff0c;而是通过该类所提供的方法来实现对内部信息的…

期末成绩老师怎么发?

期末考试的钟声终于敲响&#xff0c;学生们紧张而期待地等待着成绩的揭晓。而作为老师&#xff0c;我们面临的不仅仅是成绩的评判&#xff0c;还有一项看似简单却极其繁琐的任务——将成绩单一一私信给每位学生的家长。在成绩公布的那一刻&#xff0c;我们不仅要确保每一份成绩…

CDNOW_master.txt数据分析实战

一、数据详情 该数据集是常见的销售数据集&#xff0c;数据展示的是美国1997后的商品销售数据。包含四个字段&#xff0c;分别是用户id,购买时间&#xff0c;销售量&#xff0c;与销售金额。 二、数据读取与数据清洗 导入必要的包 \s代表的许多空格作为分割&#xff0c;names重…

kafka-3

Kafka 消费组 consumer-offsets-N 稀疏索引 Kafka集群 集群搭建 集群启动和验证 Topic的意义 Topic和Partition 分区 副本 集群操作指令 多分区&多副本 多分区消费组 Rebalance机制 Rebalance机制处理流程 Rebalance机制-Range Rebalance机制-RoudRobin Rebalance机制-St…

PyQt5开发笔记:2. 2D与3D散点图、水平布局和边框修饰

一、装pyqtgraph和PyOpenGL库 pip install pyqtgraph pip install PyOpenGL 注意&#xff1a;一定不要pip install OpenGL&#xff0c;否则会找不到 二、3D散点图效果 import pyqtgraph as pg import pyqtgraph.opengl as gl import numpy as np# 创建应用程序 app pg.mkQ…

护网在即,助力安服仔漏洞扫描~

整合了个漏扫系统&#xff0c;安服仔必备~ 使用场景 网前布防&#xff0c;漏洞扫描&#xff0c;资产梳理 使用方法&#xff1a; 启动虚拟机后运行命令&#xff1a; ./StartSystemScript.sh 输入密码attack 启动完成后浏览器打开网站&#xff1a; http://IP:5000 相关账户…

【Rust基础入门】Hello Cargo

文章目录 前言Cargo是什么&#xff1f;Cargo的作用查看cargo版本使用cargo创建项目Cargo.toml文件cargo build命令cargo runcargo check为发布构建 总结 前言 在Rust编程中&#xff0c;Cargo扮演着至关重要的角色。它是Rust的包管理器&#xff0c;负责处理许多任务&#xff0c…

JAVA之(方法的重载与重写、this关键字、super关键字)

方法的重载与重写 一、方法的重载与重写1、回顾方法的定义2、重载的概念3、重写 二、this关键字1、何为this方法2、使用方法&#xff08;1&#xff09;在构造方法中指构造器所创建的新对象&#xff08;2&#xff09; 方法中指调用该方法的对象&#xff08;3&#xff09; 在类本…

【Unity2D 2022:UI】制作角色血条

一、创建血底UI 1. 创建画布&#xff08;Canvas&#xff09; 2. 在画布上添加血底图像&#xff08;Image&#xff09;子物体 二、编辑血底UI 1. 将血底图片拖入源图像&#xff08;Source Image&#xff09;中 2. 点击设置为图片的原大小&#xff08;Set Native Size&#x…

AIGC时代,“人”的核心价值在何处?

随着科技的浪潮汹涌向前&#xff0c;人工智能生成内容&#xff08;AIGC&#xff09;已悄然渗透至我们生活的每一个角落&#xff0c;从创意设计到信息传播&#xff0c;其影响力与变革力愈发显著。在这一由算法驱动的新纪元里&#xff0c;人类社会运作模式、学习途径及职业形态均…

【操作系统】进程管理——调度算法(个人笔记)

学习日期&#xff1a;2024.7.4 内容摘要&#xff1a;各种调度算法的思想、规则、优缺点介绍 为什么要有调度算法&#xff1f; 调度算法就好比一群人在银行办理业务&#xff0c;准备办理业务的人就是进程/作业&#xff0c;银行窗口的工作人员就是CPU&#xff0c;进程往往是比C…

【论文解读】可灵(快手)|LivePortrait:具有拼接和重定向控制的高效肖像动画

&#x1f4dc; 文献卡 英文题目: LivePortrait: Efficient Portrait Animation with Stitching and Retargeting Control;作者: Jianzhu Guo; Dingyun Zhang; Xiaoqiang Liu; Zhizhou Zhong; Yuan Zhang; Pengfei Wan; Di ZhangDOI: 10.48550/arXiv.2407.03168摘要翻译: *旨在…

为什么固定尺寸 AdSense 广告依旧会出现并非指定的尺寸广告?

经常在网站上投放谷歌 AdSense广告的站长应该都碰到过&#xff0c;明明投放的是固定尺寸的广告位里旧会出现并非指定尺寸的AdSense 广告&#xff0c;很诡异的感觉。其实这都是因为你的 AdSense 账号广告优化造成的&#xff0c;其中里面就包含了广告尺寸优化&#xff0c;只需要在…