探索在生成扩散模型中基于RAG增强生成的实现与未来

概述

像 Stable Diffusion、Flux 这样的生成扩散模型,以及 Hunyuan 等视频模型,都依赖于在单一、资源密集型的训练过程中通过固定数据集获取的知识。任何在训练之后引入的概念——被称为 知识截止——除非通过 微调 或外部适应技术(如 低秩适应,LoRA)进行补充,否则不会出现在模型中。

因此,如果一个生成系统能够输出图像或视频,并且能够根据需要从在线资源中获取信息并将其纳入生成过程,那就再好不过了。例如,一个对最新苹果或特斯拉产品一无所知的扩散模型,仍然可以生成包含这些新产品的图像。

在语言模型方面,我们大多数人都熟悉像 Perplexity、Notebook LM 和 ChatGPT-4o 这样的系统,它们可以在 检索增强生成(RAG)模型中纳入新的外部信息。

然而,在生成图像方面,这种功能并不常见,ChatGPT 也会承认自己在这方面的局限性:

ChatGPT 4o 根据一般线条和它所解释的描述,对一款全新手表的外观做出了合理猜测;但它无法“吸收”并将新图像整合到基于 DALL-E 的生成中。

将检索到的外部数据纳入生成图像是具有挑战性的,因为传入的图像必须首先被分解为标记和嵌入,然后映射到模型对主题的最近训练知识领域。

尽管这一过程对于像 ControlNet 这样的后训练工具来说效果良好,但此类操作大多停留在表面,本质上是将检索到的图像通过渲染管道传递,而没有将其深度整合到模型的内部表示中。

因此,模型缺乏像 NeRF 这样的神经渲染系统的能力,后者能够以真正的空间和结构理解构建场景。

一、 成熟的逻辑

类似的限制也适用于大型语言模型(LLMs)中的 RAG 基查询,例如 Perplexity。当这种类型的模型处理检索到的外部数据时,其功能类似于一个成年人凭借一生的知识来推断某个主题的概率。

然而,就像一个人无法将新信息追溯性地整合到塑造其基本世界观的认知框架中——当他们的偏见和先入为主的观念仍在形成时——LLM 也无法将其新知识无缝地整合到其预训练结构中。

相反,它只能“影响”或并置新数据与其现有的内化知识,使用已学到的原则进行分析和推测,而不是在基础层面上进行综合。

在“并置”和“内化”生成之间的等效性不足,可能会在生成的图像中比基于语言的生成中更为明显:各种研究表明,“原生”(而非基于 RAG)生成的更深层次网络连接和更高的创造力已被 建立。

二、RAG 能力图像生成的隐藏风险

即使在技术上可行地将检索到的互联网图像无缝整合到新合成的图像中,以 RAG 风格进行整合,安全相关的限制也会带来额外的挑战。

许多用于训练生成模型的数据集已经被策划,以尽量减少明确、种族主义或暴力内容等敏感类别的存在。然而,这一过程并不完美,残留的关联可能仍然存在。为了缓解这种情况,像 DALL·E 和 Adobe Firefly 这样的系统依赖于二级过滤机制,对输入提示和生成的输出进行筛查,以禁止相关内容。

因此,一个简单的 NSFW 过滤器——主要阻断明显露骨的内容——将不足以评估检索到的基于 RAG 的数据的可接受性。此类内容仍可能以超出模型预定义的审核参数范围的方式具有冒犯性或有害性,可能会引入 AI 缺乏适当评估情境意识的材料。

最近发现的 CCP 旗下的 DeepSeek 的一个漏洞,旨在压制对禁止政治内容的讨论,突显了如何利用替代输入路径绕过模型的伦理保障;可以说,这也适用于从互联网检索到的任意新数据,当它被纳入新的图像生成时。

三、 RAG 用于图像生成

尽管存在这些挑战和棘手的政治方面的问题,但仍有一些项目试图使用基于 RAG 的方法将新数据纳入视觉生成中。

3.1 ReDi

2023 年的 检索式扩散(ReDi)项目是一个无学习框架,通过从预计算的知识库中检索类似的 轨迹 来加速扩散模型推理。

数据集中的值可以在 ReDi 中“借用”用于新的生成

在扩散模型的背景下,轨迹是模型从 纯噪声 生成图像的逐步路径。通常,这个过程会逐渐发生,每一步都会稍微完善图像。

ReDi 通过跳过其中许多步骤来加速这一过程。它不是计算每一个步骤,而是从数据库中检索一个类似的过去轨迹,并跳到过程中的一个更晚的点。这减少了所需的计算量,使基于扩散的图像生成速度更快,同时仍然保持高质量。

ReDi 并不修改扩散模型的 权重,而是使用知识库跳过中间步骤,从而减少采样所需的函数估计数量。

当然,这并不等同于随意将特定图像纳入生成请求中;但它确实与类似类型的生成有关。

ReDi 于 2022 年发布,那一年潜扩散模型 吸引了 公众的想象力,ReDi 似乎是最早采用基于 RAG 方法的扩散基础方法之一。

尽管应该提到的是,2021 年 Facebook Research 发布了 实例条件 GAN,它试图将 GAN 图像条件化为新的图像输入,这种将图像投影到潜在空间的做法在文献中非常常见,无论是对于 GAN 还是扩散模型;挑战在于使这样一个过程成为训练自由的,并在实时中发挥作用,就像专注于 LLM 的 RAG 方法一样。

3.2 RDM

另一个早期尝试 RAG 增强图像生成的是 检索增强扩散模型(RDM),它引入了一种半 参数化 的生成图像合成方法。与传统扩散模型将所有学习到的视觉知识存储在其神经网络参数中不同,RDM 依赖于一个外部图像数据库:

RDM* 中说明性伪查询检索到的最近邻。

在训练过程中,模型从外部数据库中检索 __[最近邻](https://www.un在训练过程中,模型从外部数据库中检索 最近邻(视觉上或语义上相似的图像),以指导生成过程。这使得模型能够根据真实世界的视觉实例来调整其输出。

检索过程由 CLIP 提供支持,旨在确保检索到的图像与查询内容具有有意义的相似性,并提供新信息以改善生成效果。这种方法减少了对参数的依赖,使得模型能够在不需要庞大训练数据集的情况下实现具有竞争力的结果。

RDM 方法支持 事后修改:研究人员可以在推理时更换数据库,从而实现对新风格、领域甚至完全不同任务(如风格化或类别条件合成)的零样本适应。

RDM 的一个关键优势在于,它能够在不重新训练模型的情况下提升图像生成效果。通过简单地更改检索数据库,模型可以泛化到从未明确训练过的新概念。这对于存在 领域偏移 的应用场景特别有用,例如基于不断演变的数据集生成医学影像,或者将文本到图像模型适应于创意应用。

然而,这种基于检索的方法依赖于外部数据库的质量和相关性,这使得数据策划成为实现高质量生成的重要因素。此外,这种方法距离实现商业语言模型中典型的基于 RAG 的交互式图像合成仍有较大差距。

3.3 ReMoDiffuse

ReMoDiffuse 是一种用于 3D 人体运动生成的检索增强运动扩散模型。与依赖纯学习表示的传统运动生成模型不同,ReMoDiffuse 从大规模运动数据集中检索相关的运动样本,并将其整合到去噪过程中,其架构类似于 RDM(见上文)。

右侧为 RAG 增强的 ReMoDiffuse 与先前方法的对比

这使得模型能够生成更自然、更多样化且在语义上忠实于用户文本提示的运动序列。

ReMoDiffuse 采用了一种创新的 混合检索机制,基于语义和运动学相似性选择运动序列,以确保检索到的运动不仅在主题上相关,而且在物理上合理地整合到新生成中。

然后,模型使用 语义调制的 Transformer 对检索到的样本进行细化,有选择地整合检索到的运动知识,同时保持生成序列的特征品质。

ReMoDiffuse 的流程架构

该模型的 条件混合 技术增强了模型在不同提示和检索条件下的泛化能力,通过在生成过程中平衡检索到的运动样本与文本提示的权重,解决了扩散模型中常见的 分类器自由引导 技术的 尺度敏感性问题。

这有助于防止不真实或重复的输出,即使对于罕见的提示也是如此。它还解决了扩散模型中常见的尺度敏感性问题,这种问题通常出现在分类器自由引导技术中。

3.4 RA-CM3

斯坦福大学 2023 年的论文 Retrieval-Augmented Multimodal Language Modeling(RA-CM3)允许系统在推理时访问现实世界的信息。


斯坦福大学的检索增强多模态语言模型(RA-CM3)使用从互联网检索到的图像增强生成过程,但目前仍处于原型阶段,尚未公开发布

RA-CM3 将检索到的文本和图像整合到生成流程中,增强文本到图像和图像到文本的合成效果。该模型使用 CLIP 进行检索,并以 Transformer 作为生成器,在生成输出之前引用相关的多模态文档。

在 MS-COCO 上的基准测试显示,与 DALL-E 和类似系统相比,RA-CM3 实现了 12 点的 Fréchet Inception Distance(FID)降低,且计算成本更低。

然而,与其他基于检索增强的方法一样,RA-CM3 并没有无缝内化其检索到的知识。相反,它将新数据叠加在其预训练的网络上,类似于 LLM 通过搜索结果增强回答。虽然这种方法可以提高事实准确性,但它并不能替代在需要深度合成的领域中更新训练的需求。

此外,目前尚未发布该系统的实际实现版本,甚至没有通过 API 平台提供。

3.5 RealRAG

来自中国的最新发布 Retrieval-Augmented Realistic Image Generation(RealRAG)引发了我们对 RAG 增强生成图像系统的关注。


RealRAG 中引入的外部图像(位于下方中间)
RealRAG 从公开可用的数据集(如 ImageNet、Stanford Cars、Stanford Dogs 和 Oxford Flowers)中检索相关对象的实际图像,并将其整合到生成过程中,以填补模型的知识空白。

RealRAG 的一个关键组件是 自反式对比学习,它训练检索模型找到信息丰富的参考图像,而不仅仅是选择 视觉上相似 的图像。

作者指出:

“我们的关键见解是训练一个检索器,使其检索到的图像远离生成器的生成空间,但接近文本提示的表示。”

“为此,我们首先根据给定的文本提示生成图像,然后利用这些生成的图像作为查询,从基于真实对象的数据库中检索最相关的图像。这些最相关的图像被用作反思性负样本。”

这种方法确保检索到的图像为生成过程贡献了 缺失的知识,而不是强化模型中已有的偏见。

从左到右:检索到的参考图像;没有使用 RAG 的结果;使用检索图像的结果

然而,对检索质量和数据库覆盖范围的依赖意味着其有效性可能会因高质量参考图像的可用性而有所不同。如果相关图像不存在于数据集中,模型可能仍然难以处理不熟悉的概念。

RealRAG 采用了一种非常模块化的架构,兼容多种其他生成架构,包括基于 U-Net、DiT 和自回归的模型。

总体而言,检索和处理外部图像会增加计算开销,系统的性能取决于检索机制在不同任务和数据集上的泛化能力。

四、总结

这是一篇关于图像检索多模态生成系统的代表性而非穷尽性概述。一些此类系统仅使用检索来改善视觉理解或数据集策划,而不是寻求生成图像,例如 Internet Explorer。

文献中还有许多其他基于 RAG 的项目尚未发布。只有发表研究论文的原型,例如 Re-Imagen,尽管它来自谷歌,但只能访问本地自定义数据库中的图像。

此外,2024 年 11 月,百度 宣布 了 基于图像检索的增强生成(iRAG),这是一个使用“数据库”检索图像的新平台。尽管据报道 iRAG 可在 Ernie 平台上使用,但关于检索过程的细节似乎很少,它似乎依赖于一个 本地数据库(即服务本地的,用户无法直接访问)。

此外,2024 年的论文 Unified Text-to-Image Generation and Retrieval 提供了另一种基于 RAG 的方法,使用外部图像在生成时增强结果——同样,这些图像来自 本地数据库,而不是来自 即时互联网来源

围绕 RAG 增强图像生成的兴奋可能会集中在能够直接将互联网来源或用户上传的图像整合到生成过程中的系统上,并允许用户参与图像的选择或来源。

然而,这是一个重大挑战,原因至少有两个:首先,此类系统的有效性通常取决于在资源密集型训练过程中形成的深度整合关系;其次,如前所述的安全性、合法性以及版权限制等问题,使得这一功能不太可能成为 API 驱动的网络服务的特性,也不太可能在商业部署中实现。

原文地址:https://www.unite.ai/the-future-of-rag-augmented-image-generation/

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OpenAI API模型ChatGPT各模型功能对比,o1、o1Pro、GPT-4o、GPT-4.5调用次数限制附ChatGPT订阅教程

本文包含OpenAI API模型对比页面以及ChatGPT各模型功能对比表 - 截至2025最新整理数据:包含模型分类及描述;调用次数限制; 包含模型的类型有: Chat 模型(如 GPT-4o、GPT-4.5、GPT-4)专注于对话&#xff0c…

【时间序列聚类】Feature-driven Time Series Clustering(特征驱动的时间序列聚类)

文章目录 1.文章介绍2.问题背景3.拟解决的问题4.主要贡献5.提出的方法5.1模型pipeline5.2特征抽取和选择5.3图渲染和社区检测5.4共现矩阵的构建5.5对共现矩阵进行聚类 6.实验6.1模型设置6.2实验结果6.3消融实验 7.结论8.个人观点9.Reference 1.文章介绍 论文出处:ED…

采用内存局部性分配有什么好处?

内存分配时的局部性分配(Locality of Allocation)是指将相关的内存对象分配在相邻或相近的内存区域中。这种分配策略在现代计算机系统中具有显著的好处,主要体现在以下几个方面: 1. 提高缓存命中率 现代计算机系统依赖于多级缓存…

Fast DDS Security--秘钥交换

Fast DDS Security模块中默认使用Diffie-Hellman算法进行秘钥交换。Diffie-Hellman 算法(简称 DH 算法)是一个非常重要的加密协议,用于在不安全的通信通道中安全地交换密钥。该算法通过利用数学中的离散对数问题来生成共享密钥,使…

3.3.5 VO-O语法- 高级语法

VO语言还提供了一些个性化的高级语法特性,这些语法特性有别于传统的编程语言。但可以更好的帮助开发者实现高效、稳定的生产级数据流程。 调度运行 在现行的编程语言中,调度运行不在语法表示范围之内。这属于具体的代码实现逻辑。但在VO语言设计中&…

NLP文本分析之依存句法分析(理论及技术实践)

引言 在自然语言处理(NLP)领域中,理解句子的语法结构是实现语义理解的基础。依存句法分析(Dependency Parsing) 作为句法分析的核心任务之一,通过揭示句子中词语之间的依存关系,为机器翻译、信…

LeetCode hot 100—爬楼梯

题目 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 示例 1: 输入:n 2 输出:2 解释:有两种方法可以爬到楼顶。 1. 1 阶 1 阶 2. 2 阶 示例…

RoboVQA:机器人多模态长范围推理

23 年 11 月来自 Google Deepmind 的论文“RoboVQA: Multimodal Long-Horizon Reasoning for Robotics”。 本文提出一种可扩展、自下而上且本质多样化的数据收集方案,该方案可用于长期和中期的高级推理,与传统的狭窄自上而下的逐步收集相比&#xff0c…

WWDG窗口看门狗原理

WWDG(窗口看门狗)在窗口期喂狗 作用: 原理: 框图 WWDG寄存器: WWDG_CR控制寄存器 WWDG_CFR配置寄存器 状态寄存器WWDG_SR 超时时间计算公式 最小最大超时值 HAL配置函数: 1. IWDG 和 WWDG 的区别 IWDG&…

基于Flink SQL的实时指标多维分析模型

数据流程介绍 1.创建源表kafka接入消息队列数据,定义字段映射规则; 2.创建目标表es_sink配置Elasticsearch输出; 3.通过多级视图(tmp→tmp_dedup→tmp1/tmp2→tmp3→tmp_groupby)实现数据清洗、去重、状态计算&#x…

超分之DeSRA

Desra: detect and delete the artifacts of gan-based real-world super-resolution models.DeSRA:检测并消除基于GAN的真实世界超分辨率模型中的伪影Xie L, Wang X, Chen X, et al.arXiv preprint arXiv:2307.02457, 2023. 摘要 背景: GAN-SR模型虽然…

UIToolkit(一)

1 前言 UI Toolkit 是一种基于 Web 技术的 GUI 框架,是为了解决 UGUI 效率问题而设计的新一代 UI 系统(UGUI 的介绍详见→UGUI概述)。与 UGUI 不同,UI Toolkit 没有采用 GameObject 的方式,而是参考了 Web 技术的 XML …

Unsloth - 微调 Phi-4 + 修复 Bug

文章目录 Phi-4 错误修复1、分词器错误修复2、微调错误修复3、聊天模板问题 💡 我们的问题修复有效吗?🦙 Llama-fication🦥 动态 4 位量化🛠️ Finetuning Phi-4性能基准测试 本文翻译自:Phi-4 Finetuning …

多视图几何--对极几何--从0-1理解对极几何

1对极几何 1.1本质矩阵 1.1.1几何约束与推导 如图所示,物体点 P P P,图像点 p 1 , p 2 p_1,p_2 p1​,p2​,相机中心 o 1 , o 2 o_1,o_2 o1​,o2​五点共面的关系称为对极几何。 o 1 , o 2 o_1,o_2 o1​,o2​连线称为基线,其与图像的交点称为…

SpringBoot3.3.0集成Knife4j4.5.0实战

原SpringBoot2.7.18升级至3.3.0之后,Knife4j进行同步升级(Spring Boot 3 只支持OpenAPI3规范),从原3.0.3(knife4j-spring-boot-starter)版本升级至4.5.0(knife4j-openapi3-jakarta-spring-boot-starter),以下是升级过程与注意事项等 版本信息…

一招解决Pytorch GPU版本安装慢的问题

Pytorch是一个流行的深度学习框架,广泛应用于计算机视觉、自然语言处理等领域。安装Pytorch GPU版本可以充分利用GPU的并行计算能力,加速模型的训练和推理过程。接下来,我们将详细介绍如何在Windows操作系统上安装Pytorch GPU版本。 查看是否…

Linux——system V共享内存

共享内存区是最快的IPC(进程内通信)形式,不再通过执行进入内核的系统调用来传递彼此的数据 1.共享内存的原理 IPC通信的本质是让不同的进程先看到同一份资源,然后再进行通信,所以想要通过共享内存进行通信,那么第一步一定是让两个…

初识数组

数组的大概内容(自学)上篇 数组的创建和赋值 创建: int [] name new int [5]; int name [] new int [5]; int [] name {1,2.3,4,5}; 赋值: int [] score {1,2,3}; int [] score new int [] {1,2,3}; int [] score;//声明 score new int []…

OSPF-单区域的配置

一、单区域概念: 单区域OSPF中,整个网络被视为一个区域,区域ID通常为0(骨干区域)。所有的路由器都在这个区域内交换链路状态信息。 补充知识点: OSPF为何需要loopback接口: 1.Loopback接口的…

c++介绍锁二

锁主要在两个以上的线程中使用&#xff0c;当多个线程访问共享资源时&#xff0c;我们需要使用锁&#xff0c;开保证共享资源的唯一性。 当两个线程访问不带锁的共享资源时&#xff0c;如下代码 #include<array> #include<thread> #include<iostream> usin…