惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
Check Point Blog
GbyAI
GbyAI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
U
Unit 42
美团技术团队
NISL@THU
NISL@THU
C
Cisco Blogs
SecWiki News
SecWiki News
N
Netflix TechBlog - Medium
Forbes - Security
Forbes - Security
Cloudbric
Cloudbric
雷峰网
雷峰网
T
Tailwind CSS Blog
博客园 - 司徒正美
The Register - Security
The Register - Security
L
LangChain Blog
S
Security Affairs
Hacker News - Newest:
Hacker News - Newest: "LLM"
B
Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
Threat Research - Cisco Blogs
I
InfoQ
S
Schneier on Security
L
Lohrmann on Cybersecurity
量子位
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Martin Fowler
Martin Fowler
Schneier on Security
Schneier on Security
F
Fortinet All Blogs
TaoSecurity Blog
TaoSecurity Blog
K
Kaspersky official blog
Google DeepMind News
Google DeepMind News
Cisco Talos Blog
Cisco Talos Blog
PCI Perspectives
PCI Perspectives
Attack and Defense Labs
Attack and Defense Labs
WordPress大学
WordPress大学
Microsoft Azure Blog
Microsoft Azure Blog
H
Help Net Security
Project Zero
Project Zero
The GitHub Blog
The GitHub Blog
D
Docker
N
News | PayPal Newsroom
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
H
Hacker News: Front Page
云风的 BLOG
云风的 BLOG
Microsoft Security Blog
Microsoft Security Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 聂微东
Webroot Blog
Webroot Blog
MongoDB | Blog
MongoDB | Blog

StudyingLover's Blog

Diffusion Policy笔记 rwkv笔记 act笔记 nanovllm-block_manager opencode多智能体 nanobot-pre-train nanobot-rl nanobot-sft nanobot-checkpoint_manager nanobot-gpt nanobot-mid-train Vision Mamba (Vim)笔记 BPE演示 最后一遍学习Transformer YOLOv5 目标检测笔记 下载根服务器解析记录 Dynaseal A Backend-Controlled LLM API Key Distribution Scheme with Constrained Invocation Parameters 判断链表有环 王道25数据结构勘误 关于perplexity的open-sourcing-r1-1776 AI为什么不像人类一样进行多轮对话 新博客改造日记和功能测试 linuxqq只显示登陆背景图 数字设计和计算机体系结构(机械工业出版社)勘误(自制) Dynaseal:面向未来端侧llm agent的llm api key分发机制 A Definitive Guide to Markdown Style This post is using MDX, Where you can embed JSX and Astro components RT-Patch学习 pydantic实现的LLM ReAct fastapi 和 uvicorn 设置监听 ipv6 pydantic+openai+json 控制大模型输出的最佳范式 解决 Matplotlib Scatter 不支持 Marker 列表的问题:mscatter 实现 roofline model zhipuAI接口兼容openai 在docker部署fastapi宝塔里使用nginx反代套上cloudflare获取请求的真实ip clion搭建libbpf-bootstrap开发环境 coze+coze-discord-proxy+ChatNextWebUI实现AI自由 安卓内核时间使用的是UTC时间 colab运行google最新开源模型Gemma Sora技术报告 视频生成模型作为世界模拟器 笔记 archlinux flutter开发踩坑 fastapi集成google auth登录 linux下NTFS磁盘报错输入输出错误 Venn-Abers 预测器 基于Venn-Abers预测器的系统日志异常检测方法_顾兆军 手机平板远程访问kvm虚拟机的windows phi-2弱智吧测评 poe的gemini pro或是百度开发 google gemini api使用 google gemini api申请 构建用于复杂数据处理的高效UDP服务器和客户端 matplotlib中文字体渲染 TruFor笔记和代码复现 深入分析:GitHub Trending 项目 "multipleWindow3dScene" pua大模型 ggml教程|mnist手写体识别量化推理 xgboost2.0最佳实践 xgboost使用GPU最佳实践 马踏棋盘 cloudlflare推理llama2 docker搭建elasticsearch并使用python连接 FreeU-文字生成图片的免费午餐笔记 使用xgboost的c接口推理模型 Archlinux使用CMake调用xgboost的c接口 m2cgen生成机器学习c语言推理代码 xgboost模型序列化存储并推理 speculative-sampling笔记 prompt2model笔记 RoboTAP笔记 自建obsidian同步服务 MediaPipe即将推出图像生成服务 Dual-Stream Diffusion Net for Text-to-Video Generation笔记 ViT在DDPM取代UNet(DiT) arch4edu搞崩了我的flutter LISA(推理分割)笔记 在终端绘制GPU显存使用曲线 GPTBot介绍 arch蓝牙无法连接 GPU部署llama-cpp-python(llama.cpp通用) 花式求GCD 使用llama构建一个蜜罐(前端) 使用llama构建一个蜜罐(后端) llama-cpp-python快速上手 快速上手llama2.c(更新版) Paper Gestalt笔记 DINO-v2笔记 快速上手llama2.c AnyDoor笔记 Archlinux安装scrcpy加载共享库出错 error while loading shared libraries:libusb-1.0.so.0:wrong ELF class:ELFCLASS32 npc_gzip笔记 python调用c++函数 Filesystem type ntfs3,ntfs not configured in kernel open_clip编码图像和文本 PicGo配置CloudflareR2图片储存 ArchlinuxGnome快捷键打开终端 clip-interrogator代码解析 GroundingDINO安装报错解决 2023华为鲲鹏畅想日暨西安高新国际会议中心零食午饭测评 RoboMaster开源仓库汇总(长期更新) 没有手都可以在腾讯云创建镜像
Imagic笔记
About the Author StudyingLover · 2023-03-30 · via StudyingLover's Blog

Imagic笔记

先前的工作大多数方法目前仅限于以下一种:特定的编辑类型(例如,对象叠加,样式转换),合成生成的图像,或需要一个共同对象的多个输入图像。文章作者展示了将复杂的基于文本的语义编辑应用于单个真实图像的能力。与之前的工作相反,这篇文章提出的方法只需要一个输入图像和一个目标文本(所需的编辑)。它生成一个与输入图像和目标文本一致的文本嵌入,同时微调扩散模型以捕获特定于图像的外观。

扩散模型是一种强大的最先进的生成模型,能够进行高质量的图像合成。在自然语言文本提示的条件下,它们能够生成与所请求的文本很好地对齐的图像。在工作中使用它们来编辑真实的图像,而不是合成新的图像。文章作者通过一个简单的3步过程来实现这一点,如图所示:首先优化文本嵌入,使其生成与输入图像相似的图像。然后,对预训练的生成扩散模型(以优化的嵌入为条件)进行微调,以更好地重建输入图像。最后,在目标文本嵌入和优化后的文本之间进行线性插值,得到一个结合了输入图像和目标文本的表示。然后将这种表示传递给带有微调模型的生成扩散过程,输出最终编辑的图像。 image.png

作者这进一步得到了一项人类感知评估研究的支持,在一项名为TEdBench -文本编辑基准的新基准测试中,评分者强烈倾向于图像而不是其他方法。

方法

作者将整个过程分成三个部分

  • 优化文本嵌入,以在目标文本嵌入附近找到与给定图像最匹配的文本嵌入
  • 微调扩散模型,以更好地匹配给定的图像
  • 在优化的嵌入和目标文本嵌入之间进行线性插值,以找到一个既能达到输入图像的保真度又能达到目标文本对齐的点。

Text embedding optimization

目标文本首先通过文本编码器,它输出其对应的文本嵌入etgt∈RT×d\textbf{e}_{tgt}\in\mathbb{R}^{T\times d} ,其中TT是给定目标文本中的标记数,dd是标记嵌入维数。然后冻结生成扩散模型fθf_\theta的 参数,并使用[[DDPM]]目标L(x,e,θ)=Et,ϵ[∥ϵ−fθ(xt,t,e)∥22]\mathcal{L}(\mathbf{x},\mathbf{e},\theta)=\mathbb{E}_{t,\epsilon}\left[\left\|\epsilon-f_{\theta}(\mathbf{x}_{t},t,\mathbf{e})\right\|_{2}^{2}\right]优化目标文本嵌入EtgtE_{tgt}.其中t∼Uniform[1,T]t\sim Uniform[1,T] , xtx_t是使用ϵ∼N(0,I)\boldsymbol{\epsilon}{\sim}\mathcal{N}(0,\text{I})和方程1获得的x(输入图像)的噪声版本,θ\theta是预训练的扩散模型权重。这将产生与输入图像尽可能匹配的文本嵌入。作者运行这个过程的步骤相对较少,以保持接近最初的目标文本嵌入,获得EoptE_{opt}。这种接近性在嵌入空间中实现了有意义的线性插值,而对于遥远的嵌入不表现出线性行为。

image.png

Model fine-tuning

请注意,当经过生成扩散过程时,得到的优化嵌入EoptE_{opt}并不一定会导致输入图像XexactlyX_{exactly},因为作者的方法优化运行了少量步骤(见图7中的左上角图像)。因此,在方法的第二阶段,通过使用公式2中所示的相同损失函数优化模型参数θ\theta来缩小这一差距,同时冻结优化的嵌入。这个过程移动模型以适应输入图像xx在点EoptE_{opt}处的位置。同时,微调底层生成方法中出现的任何辅助扩散模型,例如超分辨率模型。作者用相同的重构损失对它们进行微调,但以EtgtE_{tgt}为条件,因为EoptE_{opt}仅针对基本模型进行了优化。这些辅助模型的优化确保了保留基本分辨率中不存在的xx的高频细节 image.png

Text embedding interpolation

由于生成扩散模型被训练为在优化的嵌入EoptE_{opt}处完全重建输入图像,作者使用它来应用所需的编辑,从而沿着目标文本嵌入的方向前进。更正式地说,第三阶段是EtgtE_{tgt}EoptE_{opt}之间的简单线性插值。对于给定的超参数η∈[0,1]\eta\in[0,1],就得到了eˉ=η⋅etgt+(1−η)⋅eopt\bar{\mathbf{e}}=\eta\cdot\mathbf{e}_{tgt}+(1-\eta)\cdot\mathbf{e}_{opt} 这是表示期望编辑图像的嵌入。然后,应用基础生成扩散过程使用微调模型,条件是eˉ\bar{\mathbf{e}}。这将导致低分辨率的编辑图像,然后使用微调辅助模型,以目标文本为条件进行超分辨。这个生成过程输出最终的高分辨率编辑图像xx

实验

消融实验

作者在消融研究中发现微调会强制引入来自输入图像的细节,超出了仅优化的嵌入,使他们的方案能够保留这些细节用于中间的η值,从而实现语义上有意义的线性插值。因此作者得出结论,模型微调对其方法的成功至关重要。

作者尝试了尝试了文本嵌入优化步骤的数量。作者通过实验表明通过较少的步骤优化文本嵌入将限制模型的编辑能力,而通过超过100步的优化几乎没有额外的价值。

局限性

作者在研究中发现了两种方法失败的情况:一种是所需编辑的效果非常微弱(如果有的话),因此与目标文本不太匹配;另一种是编辑效果很好,但会影响到外部图像细节,如缩放或摄像机角度。作者在第10张图中分别展示了这两种失败情况的示例。当编辑效果不够强烈时,增加η通常可以实现期望的结果,但在少数情况下会导致原始图像细节的显著丢失(对于所有测试的随机种子)。至于缩放和摄像机角度的变化,这通常发生在我们从低η值逐渐增加到较大值时,因此很难避免。作者在附录中展示了这一点,并在TEdBench中包含了额外的失败案例。这些局限性可能可以通过不同的方式优化文本嵌入或扩散模型来缓解,或者类似于Hertz etal.的交叉关注控制。作者将这些选项留给未来的工作。

image.png

此外,由于该方法依赖于预训练的文本到图像扩散模型,因此继承了模型的生成限制和偏见。因此,当所需编辑涉及生成底层模型的失败案例时,会产生不必要的伪像。例如,Imagen在人脸方面的生成性能不佳

结论和未来的工作

作者认为下一步的工作主要有两个方面

  • 一是进一步提高算法对输入图像的准确性和对身份的保护,同时增强对随机种子和插值参数 η 的敏感性;
  • 二是开发自动选择每个请求编辑的 η 值的方法

社会影响方面作者则认为模型容易受到基于文本的生成模型的社会偏见的影响,这些技术可能被恶意方用于合成虚假的图像以误导观众。为了缓解这种情况,需要进一步研究如何识别合成编辑或生成内容