大数跨境
0
0

RAG Vision: 构建多模态计算机视觉系统

RAG Vision: 构建多模态计算机视觉系统 AI算法之道
2024-12-07
0
导读:Visual RAG 介绍
点击蓝字
 
关注我们










01


引言



本文将探索令人兴奋的 Visual RAG 世界,探讨它的意义以及它是如何彻底改变传统的计算机视觉处理流程的。

从了解 RAG 的基础知识到其在视觉任务中的具体应用,我们将探讨这项技术如何为更先进、更高效的人工智能系统铺平道路。


闲话少说,我们直接开始吧







02


什么是prompting ?


为了更好地理解检索增强生成(RAG),首先需要定义 "prompting"。

RAG 将提示词和信息检索进行结合


提示prompting 是一种通过提供特定指令或查询来引导多模态大语言模型(MLLM)等基础模型来执行特定任务的技术。

在计算机视觉领域,视觉提示visual prompting利用视觉输入(如图像、点或线)指示大规模视觉语言模型来执行特定任务,通常包括模型未经过明确训练的任务。

下图显示了如何利用视觉提示来创建更大系统的各个构件,其中的关键见解是模型可以通过视觉提示连接起来:YOLO-World的输出可以被用作 SegmentAnything 的视觉提示。

事实证明,提示prompting技术为 RAG 等更先进的技术奠定了基础。




03


什么是RAG ?


当大家利用GenAI模型(如 GPT-4 或 LLaVA )做提示时,大家得到的答案来自一个参数训练好的模型,该模型受到其信息截止点(或其自身训练数据的数量和质量)的限制。因此,该模型所学到的知识是静态的,超过某个时间点后的信息无法获取。


检索-增强生成技术(RAG)使得该系统能够检索相关上下文,然后将其与原始提示结合起来。该增强后的提示用做模型的查询,提供模型之前无法获得的信息。

现在,让我们看一下上图 ,了解一下典型的 RAG 的工作流程:

  • Retrieval:   当收到用户的查询或提示时,系统首先从知识库或外部数据源检索相关信息。
  • Augmentation:  接着利用检索到的信息来增强或提高模型的输入。

  • Generation:  最后,模型根据原始查询和检索到的信息来生成响应。







04


传统RAG 和 Visual RAG的对比

如下图所示,Visual RAG 将检索增强生成(RAG)的概念应用于视觉任务。


传统的 RAG 一般用来处理文本输入并检索相关文本信息,而 Visual RAG 则处理图像(有时伴随文本)并检索视觉数据或图像-文本对。
编码过程从文本编码器转向视觉编码器(有时会为此使用 CLIP 等基础模型),知识库(即向量数据库)成为视觉信息库,而不再是文本文件库。
最后,Visual RAG 的增强功能将检索到的视觉数据与输入相结合,使其能够生成多种输出,包括文本描述、修改后的图像或多模态内容。
对于需要将视觉理解与外部知识相结合的任务来说,视觉 RAG功能尤其强大。例如,它可以帮助视觉系统从知识库中检索相关视觉和文本信息从而识别稀有物体。






05


Visual RAG 和 Fine-tuning
在生产中构建视觉系统时,一个常见的问题是如何在 RAG 和微调Fine-tuning之间做出选择。
如上图所示,答案并不是对立的,而是取决于许多因素,例如:
  • Budget: 微调涉及重新训练模型,成本较高。
  • Inference: RAG 在推理过程中需要更多的计算资源。
  • Time: 由于微调过程中权重是不断更新的,因此微调在开始时需要投入更多时间,但从长远来看,时间消耗可能较少。
根据经验,RAG 是一种理想的起始策略。之后,如果模型的任务变得过于单一具体,下一步可能就是微调。那么,为什么不能两者兼得呢?
在某些情况下,这两种方法可以结合使用:
  • 核心任务的不断发展的领域: 例如,在医学影像处理领域,既需要有标准诊断程序(通过微调处理),也需要有快速发展的研究和新案例研究(通过Visual RAG 处理)。
  • 电子商务和产品识别:经过微调的模型可以识别产品类别,而 Visual RAG 可以从动态库存中检索最新的产品信息。
  • 内容管理系统:微调可以处理常见的犯错情形,而 Visual RAG 则可以适应新出现的趋势或与上下文相关的犯错情形。







06


多模态RAG


让我们来探讨一个用于视频理解的多模态 Visual RAG 管道的具体实现。该示例展示了这些技术如何协同工作,从视频数据中提取有意义的信息。

让我们来分析一下系统组件及其作用:

  • Knowledge Base:  该系统以包含视频和图像的知识库为起点。这是理解视觉内容的基础。
  • Embedding Model: 嵌入模型,如 CLIP,用于将知识库内容和用户查询转换为一个共同的向量空间。这样就可以在不同模式(文本和视觉数据)之间进行比较。

  • Vector Database: 知识库的嵌入式表示法存储在矢量数据库中,从而实现高效的相似性搜索。

  • Query Processing: 用户的查询通过嵌入模型将其转换为与知识库内容相同的向量空间。

  • Retrieval & Rank: 系统根据查询嵌入和存储嵌入之间的相似性,从向量数据库中检索相关信息。然后对结果进行排序,找出最相关的匹配结果。

  • Augmentation:  对检索到的信息进行及时处理或扩充,以完善上下文信息并为语言视觉模型做好准备。

  • LLaVA Fine-tuned:  微调后的LLaVA(大型视觉语言模型)来处理增强后的信息。LLaVA 是一个多模态模型,能够理解文本和视觉输入。

  • Inference: LLaVA 模型对处理过的数据进行推理,以生成能解决用户查询的响应。

  • Response: 最终输出是视觉响应--在本例中,是一张显示停在街道上的白色汽车的图片,与用户的查询相匹配




点击上方小卡片关注我




添加个人微信,进专属粉丝群!

【声明】内容源于网络
0
0
AI算法之道
一个专注于深度学习、计算机视觉和自动驾驶感知算法的公众号,涵盖视觉CV、神经网络、模式识别等方面,包括相应的硬件和软件配置,以及开源项目等。
内容 573
粉丝 0
AI算法之道 一个专注于深度学习、计算机视觉和自动驾驶感知算法的公众号,涵盖视觉CV、神经网络、模式识别等方面,包括相应的硬件和软件配置,以及开源项目等。
总阅读129
粉丝0
内容573