Meta发布视频生成模型Movie Gen及RAG前沿总结:
更新时间:2024-10-30 11:07 浏览量:19
迭代式RAG、KG增强及领域数据注入大模型思路
文章转自公众号老刘说NLP
今天关于大模型有个进展,就是Meta发布视频模型Meta Movie Gen,主打的点是Movie Gen能直接生成带背景音乐的视频,目前Sora、Runway、Luma等一线产品都无法提供该功能。
但是,这个目前并未对外开放,无法使用。
今天,继续来看,看关于迭代式RAG的几种思路、特定领域数据注入到大模型的方式以及关于基于图谱的RAG增强方式三个问题。
持续跟进,持续思考,供大家一起参考并思考。
一、关于迭代式RAG的几种思路
迭代式RAG处理的是那些涉及隐式事实的查询,这类查询通常需要通过多步骤的推理来解答。这些查询的答案不会直接呈现在任何单一文本段落中,而是需要通过搜集和处理多个文档中的信息,并将这些信息组合起来,通过常识推理得出结论。
迭代式RAG方法的核心在于,会动态地控制多步骤的RAG过程,通过迭代地收集或纠正信息,直到找到正确答案。
1、基于规划的方法
在检索前阶段生成逐步检索计划,或在检索过程中动态生成,可以细化每次检索的重点,有效地指导迭代式RAG系统。
例如,ReAct《React: Synergizing reasoning and acting in language models》逐步更新每个步骤的目标,减少回答查询所需的知识差距。
IRCoT《Interleaving retrieval with chain- of-thought reasoning for knowledge-intensive multi-step questions》和RAT《Rat: Retrieval augmented thoughts elicit context-aware reasoning in long-horizon generation》使用思维链来指导RAG流程,基于先前召回的信息决定当前检索目标。
GenGround《Generate-then-ground in retrieval-augmented generation for multi-hop question answering》使LLM能够在两个阶段之间交替进行,直到得出最终答案:(1)生成一个更简单的单步问题并产生直接答案,(2)将问题-答案对回溯到检索的文档,以验证和纠正预测中的任何不准确之处。这种迭代过程确保了更可靠和准确的响应。
2、基于信息差距填补的方法
ITRG《Retrieval-generation synergy augmented large language models》引入了一个迭代式检索-生成协作框架,基于现有知识生成答案,然后继续检索和生成后续轮次中未知部分的答案。
类似地,FLARE《Active retrieval augmented generation》在每次迭代中重新审视并修改答案中低概率的标记。
另一方面,Self-RAG《Self-rag: Learning to retrieve, generate, and critique through self-reflection》微调一个大模型,以自主决定何时搜索和何时停止搜索并开始回答问题。
这些方法通过将复杂查询分解为一系列更简单的检索操作,并逐步聚合结果以形成综合答案,从而有效地处理隐式事实查询。
二、关于基于图谱的RAG增强方式
处理隐式事实查询需要从多个参考资料中综合信息。无论是基于知识的图谱还是数据结构化的图谱,图或树都自然地表达了文本之间的关联关系,因此非常适合这类数据检索问题。
1、传统知识图谱Traditional Knowledge Graph
最初考虑用于提高LLMs效能的结构之一是传统知识图谱,其中每个节点代表一个实体,节点之间的边表示这些实体之间的关系。
例如,《Unifying large language models and knowledge graphs: A roadmap》介绍了LLMs和知识图谱(KGs)结合的前瞻性发展路线图,包括:
1)知识图谱增强的LLMs,在LLMs的预训练和推理阶段整合知识图谱,以加深模型对获取知识的理解;
2)LLMs增强的知识图谱,利用LLMs执行各种知识图谱任务,如嵌入、补全、构建、图到文本生成和问答;
3)协作的LLMs+KGs方法,LLMs和KGs扮演互补的角色,通过数据和知识驱动的双向推理相互增强。
Rigel-KQGA《Knowledge graph-augmented language models for complex question answering》模型,是一个端到端的知识图谱问答模型,它根据查询预测所需的知识图谱节点,并将此与LLM结合起来得出答案。像Think-on-Graph《Think-on-graph: Deep and responsible reasoning of large language model on knowledge graph》和KnowledgeNavigator《Knowledgenavigator: Leveraging large language models for enhanced reasoning over knowledge graph》这样的工作提取查询中涉及的实体,然后在图上执行迭代的广度优先搜索(BFS),使用LLM作为思考机器来确定最优的探索路径并执行剪枝。
R3《Right for right reasons: Large language models for verifiable commonsense knowledge graph question answering》引入了几种可能的常识公理通过LLM来处理查询,顺序搜索相关的知识子图,以评估当前信息是否足以回答问题,继续进行直到问题解决。
2、数据块图/树Data Chunk Graph/Tree
LLMs的卓越阅读理解能力使它们能够有效地理解文本,而无需将其分解成最细粒度的实体和关系。在这种情况下,研究人员开始尝试使用文本块或数据块作为图或树上的节点,使用边来表示高级或更复杂设计的关联。
Knowledge-Graph-Prompting《Knowledge graph prompting for multi-document question answering》讨论了需要从(a)桥接问题依赖于顺序推理,(b)比较问题依赖于不同段落的并行推理,以及(c)结构问题依赖于相应文档结构中挖掘隐式事实的三种常见问题类型。
为了解决这些问题,Knowledge-Graph-Prompting使用实体识别、TF-IDF、KNN和文档结构层次来构建文档图,并提取子图以回答问题。
MoGG《Mix-of-granularity: Optimize the chunking granularity for retrieval-augmented generation》将一句话或两句话作为最小的语义单元,使用这些作为节点,并根据节点之间的语义相似性构建边。它还训练一个预测器来决定回答查询所需的文本粒度,通过决定需要多大的子图。
为了捕捉文本块之间更高级别的语义关系,RAPTOR《Raptor: Recursive abstractive processing for tree-organized retrieval》使用聚类算法将最细粒度的文本块进行层次聚类。它在每个层次级别上总结新的语义信息,回忆起节点内折叠树中最必要的信息。
同样,GraphRAG《From local to global: A graph rag approach to query-focused summarization》采用了聚类方法。它最初基于语义相似性连接最小的文本块,然后使用社区检测算法对节点进行分组。最后,它通过分析每个节点社区内的回答来总结查询的全局答案。
三、特定领域数据注入到大模型的方式
图 6 描述了将特定领域数据注入到大型语言模型(LLM)中的三种方式:
1、基于查询提取领域数据作为上下文输入
在这种方法中,系统会根据用户的查询从领域数据中提取相关的数据片段,并将这些片段作为上下文信息输入到LLM中。
这样,模型在生成回答时可以利用这些上下文信息来提供更加准确和相关的回答。这种方法的优点在于它能够提供较好的解释性和稳定性,但挑战在于上下文窗口有限,且可能会在处理过程中丢失中间信息。
b) 训练小型模型引导外部信息的整合
在这种方法中,首先使用特定领域的数据训练一个小型模型。这个小型模型随后用于指导如何整合外部信息到LLM中。
这种方法的优点是可以减少训练时间和资源消耗,并且可以处理大量的数据。但它的有效性依赖于小型模型的能力,并且可能会限制LLM在处理更复杂任务时的性能。
c) 直接使用领域知识进行微调
在这种方法中,直接使用外部的领域特定知识对通用的大型语言模型进行微调,使其成为领域专家模型。
微调可以帮助模型快速掌握新的领域特定知识,提高其在特定任务上的表现。然而,微调可能会影响模型在处理与训练数据不相关或未包含在训练数据中的任务时的性能。
这三种方法各有优势和局限性,选择哪一种方法取决于数据源的特性、任务需求、以及可用的计算资源。在实际应用中,可能会根据特定需求和条件选择最合适的方法,或者将这些方法结合起来使用,以达到最佳效果。
总结
本文主要回顾了三个话题,关于迭代式RAG的几种思路、特定领域数据注入到大模型的方式以及关于基于图谱的RAG增强方式。