大模型SFT负责记忆、RL负责泛化:兼看多模态GraphRAG之Video方案

今天是2025年02月05日,星期三,北京,天气晴。

今天是大年初八,正式开工,大家开工大吉,今年多落地,多赚钱,继续进步!

我们今天继续看技术进展,我们昨天谈了谈多模态Multimodal GraphRAG的一点思考《多模态GraphRAG的一点思考:兼看多模态大模型用于数据增强总结》(https://mp.weixin.qq.com/s/c4JHBqiXpkQqU11VJoO6mw),这是一个研究方向,把多模态、RAG、知识图谱都串起来了,有更多的优化问题可以展开。

今天我们趁热打铁,看一个接续工作,VideoRAG,直接就是一个这方面的例子,思路不错,并且也开源了,感兴趣的,可以读一读。

另一个是关于SFT负责记忆、RL负责泛化的有趣探索,属于可解实行的范畴

专题化,体系化,会有更多深度思考。大家一起加油。

一、SFT负责记忆、RL负责泛化的有趣探索

一个是大模型能力习得研究一直是个有趣的问题,大家之前都说,pretrain学的是知识,sft学的是模式,后者不引入知识。而现在RL又如何呢?

谷歌的新工作不错,可以看看, ,《SFT Memorizes,RL Generalizes:A Comparative Study of Foundation Model Post-training》(http://arxiv.org/html/2501.17161v1),这个发现,是模型可解释的工作,通过引入GeneralPoints和V-IRL两个任务,分别评估SFT和RL在文本规则泛化和视觉泛化方面的表现。SFT通过在特定任务上进行微调来适应下游任务,而RL通过与人类偏好对齐来提高模型性能。

结论正如标题,SFT负责记忆,RL负责泛化。但SFT依旧是需要的。

更细节的,RL在所有任务中表现出更好的泛化能力,特别是在规则变化和视觉分布偏移任务中。

SFT则倾向于记忆训练数据,难以泛化到未见过的场景

RL通过基于结果的奖励函数提高了模型的视觉识别能力,从而增强了其在视觉领域的泛化能力。在GeneralPoints的视觉语言版本中,随着RL计算量的增加,视觉识别准确性和整体性能均有所提高。

尽管RL在泛化方面表现优越,但SFT仍然有助于稳定模型的输出格式,使后续的RL能够实现其性能提升。当主干模型不遵循指令时,SFT对RL训练是必要的。例如,在没有SFT初始化的情况下,所有端到端RL运行均失败。

RL generalizes, SFT memorizes

一、再看多模态RAG之VideoRAG实现思路

标准的基于文本的RAG方法因几个基本限制对视频内容证明是不足的:基于文本的系统无法直接捕捉视觉动态;传统RAG方法未能在视频帧之间保留的时间依赖性;简单的文本编码无法捕捉视觉和文本信息之间的跨模态互动。

实际上,我们在文章《值得一用的长文本训练框架360-LLaMA-Factory及多模态VideoRAG实现思路》(https://mp.weixin.qq.com/s/0T29CaajdTmHopRgoiofIA)中,已经介绍过vedioRAG(《VideoRAG: Retrieval-Augmented Generation over Video Corpus》(https://arxiv.org/pdf/2501.05874)),这个工作思路在于,通过动态检索与查询相关的视频,并在生成过程中结合视频的视觉和文本信息,以提升生成答案的质量。

最近,又出现了一个新的同名工作《VideoRAG: Retrieval-Augmented Generation with
Extreme Long-Context Videos》(https://arxiv.org/pdf/2502.01549),项目已经公开了,在https://github.com/HKUDS/VideoRAG,出发点不同,主要用于解决极长上下文视频的理解问题,并在技术实现上解决有效捕捉多模态特征(视觉、音频、文本)及其时间动态;对不同信息流之间复杂的跨模态对齐和相互依赖进行建模等问题,并且用到了Graph的思路。

可以看看其实现架构,如下:

分为以下几个环节:

1、多模态视频知识索引

首先,VideoRAG通过图基础的文本知识定位和多模态上下文编码来处理视频内容。

该过程分为两个关键步骤,即视觉-文本定位和音频-文本定位。

视觉-文本定位阶段,将每个视频分割成短片段,并使用视觉语言模型(VLMs)生成描述性文本。具体来说,每个视频片段被均匀采样k帧(例如k=5),然后使用VLMs生成描述这些帧的自然语言文本。公式如下:Cj=VLM(Tj,{F1,…,Fk}∣F∈Sj)其中,F表示从片段Sj中按时间顺序采样的帧集合。

音频-文本定位阶段,使用自动语音识别(ASR)技术转录视频片段,并将其与视觉描述合并。每个视频片段的ASR转录与生成的视觉描述合并,形成一个统一的文本表示。

在更新阶段,进行图构建和增量更新。这个旨在解决高效组织和检索多视频知识的问题。为解决这一问题,采用基于图的索引框架,链接不同视频中的文本知识,从提取的文本信息中逐步构建一个全面的知识图谱,同时保持语义关系和上下文依赖性。

这块的步骤是,进行语义实体识别与关系映射,先将视频文本描述划分为可管理的块,在实体关系抽取阶段,我们通过大型语言模型处理每个数据块的标题-字幕对,以识别关键实体(表示为节点N)并提取有意义的关系(表示为边E)。例如,对于文本“GPT-4
utilizes transformer architecture for advanced natural language understanding, while incorporating
visual features through ViT’s patch-based image encoding”, 抽取出实体“GPT-4”,
“transformer architecture”, and “Vision Transformer (ViT)”, 实体关系包括“GPT-4 utilizes
transformer architecture” and “GPT-4 incorporates ViT’s encoding”;

抽取完之后,还需要进行进一步的处理,包括实体统一和合并(将不同视频中语义相同的实体合并为一个节点,保持实体的一致性和丰富的上下文信息)、动态知识图谱演化(随着新视频内容的处理,知识图谱通过引入新发现的实体和建立新的关系进行扩展)、LLM驱动的语义合成(利用LLMs生成统一的实体描述,确保每个实体在不同视频上下文中保持一致且全面的表示)等机制进行增量更新。

2、多模态检索

通过结合文本语义和视觉内容匹配来实现高效的检索。具体实现上,包括如下步骤:

首先,文本语义匹配利用构建的知识图谱进行查询重写(利用LLMs将输入查询重写成一个声明性的句子,以优化后续的实体匹配操作)、实体匹配(计算重写后的查询与知识图谱中实体描述的相似度得分,识别最相关的实体及其关联的文本片段)、片段选择(使用基于GraphRAG的方法对检索到的文本片段进行排序和选择,识别最相关的片段)和视频片段检索(从选定的文本片段中提取视频片段,形成最终的文本检索集);

然后,视觉检索通过多模态编码器将视频片段编码为内容嵌入,并进行场景信息提取(利用LLMs从查询中提取核心视觉场景组件,创建一个聚焦的场景描述)和跨模态特征对齐(将场景描述投影到与视觉嵌入相同的特征空间中,使用多模态编码器的跨模态能力进行特征对齐。通过余弦相似度计算查询嵌入与视频片段嵌入之间的相似度得分,选取前K个匹配片段作为视觉检索结果)。

接着,LLM过滤利用LLMs评估每个片段的相关性,过滤掉不相关的片段,返回分数为1的片段作为最终结果。

最后,进行内容整合和响应生成,通过两阶段内容提取过程生成最终的响应。首先,利用LLMs从查询中提取关键词,并将其与采样帧一起整合到VLMs提示中生成详细的视觉字幕。然后,通过语义相似性匹配获取相关的文本片段,最终生成综合输出。

最后,看下最终效果:

所以,这是不是又和我们昨天的文章呼应上了,昨天刚好在讲多模态GraphRAG。

参考文献

1、https://arxiv.org/pdf/2501.05874

2、https://arxiv.org/pdf/2502.01549

3、https://github.com/HKUDS/VideoRAG

4、http://arxiv.org/html/2501.17161v1

(文:老刘说NLP)

欢迎分享

发表评论