当前位置:   article > 正文

医学GraphRAG:通过知识图谱检索增强实现安全医疗大语言模型 - 牛津大学最新论文

医学GraphRAG:通过知识图谱检索增强实现安全医疗大语言模型 - 牛津大学最新论文

医学GraphRAG:通过知识图谱检索增强实现安全医疗大语言模型 - 牛津大学最新论文

知识图谱科技 2024年08月10日 12:36 上海

Medical Graph RAG: Towards Safe Medical Large Language Model via Graph Retrieval-Augmented Generation

Junde Wu&Jiayuan Zhu &Yunli Qi University of Oxford

arXiv:2408.04187v1 [cs.CV] 08 Aug 2024

摘要

我们引入了一种新型基于图的检索增强生成(RAG)框架,专门为医疗领域设计,称为MedGraphRAG,旨在增强大型语言模型(LLM)的能力并生成基于证据的结果,从而在处理私密医疗数据时提高安全性和可靠性。我们的综合流程首先采用混合静态语义方法进行文档分块,显著提高了上下文捕获能力,相较于传统方法。提取的实体被用于创建一个三层次的层次图结构,将实体与来自医学论文和字典的基础医学知识联系起来。这些实体随后相互连接形成元图,并根据语义相似性进行合并,以开发一个综合的全局图结构。该结构支持精确的信息检索和响应生成。检索过程采用U-retrieve方法,以平衡LLM的全球感知和索引效率。我们的方案通过一项全面的消融研究进行了验证,比较了文档分块、图构建信息检索的各种方法。结果不仅表明我们的层次图构建方法在多个医学问答基准测试中持续优于最先进的模型,还确认生成的响应包含源文档,显著提高了医疗LLM在实际应用中的可靠性。

1简介

大型语言模型(LLMs)的快速发展,如OpenAI的ChatGPT和GPT-4,已经显著改变了自然语言处理的研究,并在日常场景中激发了众多AI应用。然而,这些模型在应用于需要专业知识的领域,如金融、法律和医学时,仍然面临局限性。主要有两个挑战:首先,将训练好的LLMs部署到特定用途上比较复杂,因为它们在处理极长的上下文时存在困难,且在专业数据集上微调大型模型的成本高昂或不切实际。其次,在医学等领域精确性至关重要,LLMs可能会产生幻觉——看似准确但导致错误结论的输出,这可能是危险的。此外,它们有时会提供过于简单的答案,而不提供新的见解或发现,这在要求高层次推理以得出正确答案的领域显得不足。

检索增强生成(RAG)是一种使用特定和私有数据集回答用户查询的技术,无需进一步训练模型。RAG最初设计用于需要在特定文本区域找到必要答案的情况,但有时在从通过共享属性链接的不同信息片段中合成新见解时显得力不从心。此外,它在需要整体理解大数据集或广泛文档中总结语义概念的任务中表现不佳。为了解决这些局限性,提出了图RAG方法。该方法利用LLMs从私有数据集中创建知识图谱,结合图机器学习,在查询处理过程中增强提示增强。GraphRAG展示了显著的改进,优于以前应用于私有数据集的方法,提供了更高的智能和信息合成能力。

在本文中,我们提出了一种新颖的图RAG方法,用于将LLMs应用于医疗领域,我们称之为医学图RAG(MedRAG)。该技术通过以有据可查的来源引用和清晰的医学术语解释来响应查询,从而提高LLM在医疗领域的表现,增强结果的透明性和可解释性。这种方法涉及三层层次化图构建方法。最初,我们使用用户提供的文档作为我们的顶层来源来提取实体。然后,这些实体与第二层更基本的实体相关联,这些实体之前是从可信的医学书籍和论文中抽象出来的。随后,这些实体连接到第三层——基本医学词典图,这些词典提供每个医学术语及其语义关系的详细解释。然后,我们通过基于内容和层次连接来构建最高层次的综合图。这种方法确保知识能够追溯到其来源,并且结果在事实上的准确性。

为了响应用户查询,我们实施了一种U检索策略,将自上而下的检索与自下而上的响应生成相结合。该过程首先使用预定义的医学标签结构化查询,并通过图谱以自上而下的方式对其进行索引。系统然后根据这些查询生成响应,从元图中提取节点及其TopK相关节点和关系,并将信息总结成详细的响应。这种技术在全球上下文意识和LLMs固有的上下文限制之间保持了平衡。

我们的医学图RAG提供了内在的源引用,可以增强LLM的透明性、可解释性和可验证性。结果提供了渊源或源基础信息,因为它生成每个响应,并表明答案是基于数据集的。每个陈述都有引用来源,使人类用户能够快速准确地将LLM的输出与原始来源材料直接核对。这在医学领域非常有用,因为安全性至关重要,所有推理都应该基于证据。通过使用这种方法,我们构建了一个基于证据的医学LLM,临床医生可以轻松检查推理的来源并校准模型响应,以确保LLMs在临床场景中的安全使用。

为了评估我们的医学GraphRAG,我们在几个流行的开放和闭源LLMs上实施了该方法,包括ChatGPT和LLaMA,在主流医学问答基准上进行测试,如PubMedQA、MedMCQA和USMLE。对于RAG过程,我们提供了一个全面的医学词典作为基础知识层,UMLS医学知识图作为详细语义关系的基础层,以及一个策划的MedC-K数据集——包括最新的医学论文和书籍——作为中间数据层,以模拟用户提供的私有数据。我们的实验表明,我们的模型显著提升了通用LLMs在医学问题上的表现。值得注意的是,它甚至超越了许多在医学语料库上经过微调或特别训练的LLMs,仅使用RAG方法而没有额外训练。

我们的贡献如下:

1. 我们在提出一个综合管道以在医学领域中应用GraphRAG 方面处于领先地位

2. 我们开发了独特的图构建和数据检索方法,使得 LLM 能够利用全面的私人数据生成基于证据的响应

3. 我们在主流基准上进行了验证实验,凭借各种模型变体达到了最先进的(SOTA)性能

2方法

MedGraphRAG通过一个专门处理私有医疗数据的医疗GraphRAG增强了大型语言模型(LLMs)。它涉及将医疗文件分段、提取实体,并将这些实体组织成一个三层的层级图结构——从用户提供的文件到基础医疗信息。这些实体形成元图,然后根据内容相似性合并成一个综合的全局图。对于用户查询,LLM从图谱中有效地检索和综合信息,从而提供精确且具有上下文相关性的医疗回应。

2.1医学图谱构建

语义文档分段  

大型医疗文档通常包含多个主题或多样化的内容。为了有效处理这些文档,我们首先将其分段为符合大型语言模型(LLMs)上下文限制的数据块。基于令牌大小或固定字符的传统方法通常无法准确检测主题的微妙变化。因此,这些块可能无法完全捕捉到意图上下文,导致意义丰富性的丧失。

  

为了提高准确性,我们采用字符分隔与基于主题的分段相结合的混合方法。具体而言,我们利用静态字符(换行符号)来隔离文档中的各个段落。随后,我们应用文本的派生形式进行语义分块。我们的方法包括使用命题转移,这从原始文本中提取独立语句 Chen et al. (2023)。通过命题转移,每个段落被转化为自给自足的语句。然后,我们对文档进行顺序分析,以评估每个命题,决定是与现有块合并还是启动一个新的块。这个决定是通过LLM的零样本方法来做出的。为减少顺序处理生成的噪声,我们实施滑动窗口技术,每次处理五个段落。我们不断调整窗口,通过移除第一个段落并添加下一个段落,保持对主题一致性的关注。我们设置一个硬阈值,最长的块不能超过LLM的上下文长度限制。在对文档进行分块后,我们在每个数据块的个体上构建图谱。  

元素提取  

然后,我们从每个源文本块中识别和提取图节点实例。这是通过使用一个旨在识别文本中所有相关实体的LLM提示来完成的。对于每个实体,LLM被提示输出名称、类型和描述。名称可以是文档中的确切文本,也可以是医疗语境中常用的派生术语,经过仔细选择以反映适合后续处理的专业医学术语。类型是由LLM从预定义表中选择的,描述是LLM生成的实体解释,结合文档中的上下文。为了确保模型的有效性,我们提供了一些示例以指导LLM生成所需的输出。  

对于每个实体数据结构,我们包含一个独特ID以追踪其源文档和段落。这个标识符对于从源中检索信息至关重要,能够在后期生成基于证据的响应。  

为了提高提取的质量,减少噪声和方差,我们重复提取过程多次。这种迭代方法鼓励LLM检测任何可能最初被忽略的实体。继续或停止重复过程的决定也是由LLM自身决定的。  

层级链接  

医学是一个专业领域,其特征是使用精确的术语系统并建立在许多既定真理的基础上,如疾病的特定症状或药物的副作用。在这个领域,LLM不能扭曲、修改或添加创造性或随机元素到数据中,这与它们在其他约束较少的上下文中的应用有所不同。  

认识到这一点,我们在医学领域内开发了一种独特的结构,将每个实体链接到基础医学知识和术语。该方法旨在为每个实体概念提供可靠来源和深刻定义,从而提高响应的真实性,并减少在医学应用LLM时常见的幻觉现象。

  

具体而言,我们构建了一个三级RAG数据结构,以开发一个综合医学图谱。

  1. 第一层由用户提供的文档组成,例如来自特定医院的高度机密医疗报告。在如前所述从这些文档中提取实体后,我们将它们链接到一个更基础的、被广泛接受的信息层面。

  2. 第二层使用医学教科书和学术文章构建。我们在接收真实用户文档之前,使用先前概述的相同方法从这些医学来源预构建一个图。第一层的实体根据LLMs检测到的相关性与第二层中相应的实体相链接。 

  3. 第二层图的实体然后与第三层链接,第三层包括几个明确定义的医学术语及其知识关系。这些基础信息来自可靠资源,如统一医学语言系统(UMLS),该系统整合了各种健康和生物医学词汇及其语义关系。对于每个实体,我们将其名称的文本嵌入与UMLS中的医学词汇进行比较,选择余弦相似度低于指定阈值的词汇。每个链接的词汇还进一步与其在UMLS中的专业定义和关系相关联,这些关系被转换为简单文本,如 Wu et al. (2023) 中所示。  

关系链接

然后,我们指示LLM识别所有明确相关实体之间的关系。这个决定是基于关于每个实体的综合信息,包括其名称、描述、定义和相关的基础医学知识。识别的关系指定了源实体和目标实体,提供了它们关系的描述,并包括一个分数指示该关系的亲密程度。为了在评估关系距离时保持秩序和精确性,我们提示LLM从预定义的描述符列表中进行选择——非常相关、相关、中等、不相关、非常不相关。在进行此分析后,我们为每个数据块生成一个加权有向图。这些图作为我们系统的基本构建块,被称为元图。

图片

图1:MedGraphRAG框架

标签生成与图谱合并  

在构建元图之后,我们的下一步是扫描每个数据块,以开发一个将所有元图连接在一起的全球图。这些合并后的元图中的节点将基于我们在最后一段中使用的链接规则相互连接。为此,我们计算每对元图之间的距离,并依次将最近的元图合并成更大的实体。为了实现高效合并,我们使用LLM根据预定义的医疗类别(如症状、病史、身体功能和药物)总结每个元图的内容。LLM为每个类别生成一个摘要,来源于元图的内容,从而形成一个简洁描述其主要主题的标签列表。  

通过使用这些标签,LLM计算两个元图之间的相似性。相似性最高的元图会被考虑合并。合并后的图成为一个新图,但保留其原始的元图和标签,以便于后续的索引。随后,为新图生成新的摘要标签信息,并重新计算其与其他图的相似性,以便进一步合并的可能性。此过程可以重复,直到只剩下一个全球图。然而,随着摘要标签信息的积累,它会失去细节,表现出合并效果与效率之间的权衡。实际上,我们将此过程限制在24次迭代以内,以防止过度损失细节。

2.2从图谱检索

在构建图谱之后,LLM通过一种我们称之为U-retrieve的策略高效地检索信息以响应用户查询。我们首先生成摘要标签描述,类似于上一阶段,并利用这些描述通过自上而下的匹配过程来识别最相关的图。这一过程始于较大的图,逐渐索引到它所包含的小图。这个匹配过程会重复进行,直到我们到达元图层并检索多个相关实体。随后,我们收集与这些激活实体及其TopK相关实体相关的所有相关内容。这包括实体本身的内容、其相关基础医学知识、与其他实体的相关性及关系,以及任何链接实体的内容。

一旦识别出相关内容,LLM会被提示使用这些信息生成中间响应,以文本形式呈现。这个中间响应会被保留,并与更高层图的摘要标签信息结合,以形成更详细或更精炼的响应。LLM以自下而上的方式重复这一响应生成过程,直到达到最高层,在沿着轨迹扫描所有已索引图之后生成最终响应。这种方法使LLM能够全面了解,因为它与图中的所有数据进行交互,同时通过以摘要形式访问较不相关的数据保持高效。

3实验

3.1数据集

3.1.1RAG数据

在我们的RAG数据结构中,我们设计了三个不同的数据级别,每个级别在实践中发挥不同的作用。顶层数据包括私人的用户信息,例如医院的医疗报告,这些信息是机密的,不得共享或公开。这些数据是用户特定的,并且在实际使用LLM时,更新或变动的频率最高。中层数据包括最新的、经过同行评审的、可信的医学书籍和论文。这一层为用户提供最新的医学进展和知识,确保他们不会错过任何前沿发现。虽然这些资源可以设置为不同用户的默认数据,但用户或管理员也可以定期更新,以保持及时性。此类数据的更新频率为中等,通常为每年一次。底层数据则包括定义医学术语及其语义关系的数据,主要来源于成熟的词汇表。这些数据是最具权威性和严肃性的,应该设置为每个打算使用医学LLM的用户的默认数据。此类数据的更新频率最低,大约每五年或更长时间更新一次。

顶层数据

我们采用MIMIC-IV这个公开可用的电子健康记录数据集作为我们的主要数据集。该数据集来源于贝斯以色列迪肯尼斯医疗中心,涵盖了从2008年到2019年的患者入院记录。MIMIC-IV旨在促进研究和教育活动,涵盖了广泛的数据,包括患者测量、诊断、程序、治疗和匿名临床记录。该数据集是医院和麻省理工学院之间合作努力的成果,经过精心收集、处理和去标识化,以遵循隐私标准。它被结构化为三个不同的模块——医院模块、重症监护模块和临床记录模块,专门设计以满足各种研究需求。

中层数据

我们利用MedC-K这个庞大的医学专用语料库作为我们的中层数据来源。该语料库包括480万篇生物医学学术论文和3万本教科书。它包含Lo等人(2020年)发布的S2ORC数据集,其中有8110万篇英文学术论文。从这个庞大的集合中,我们提取了来自PubMed Central的480万篇与生物医学研究相关的论文,总计超过750亿个令牌,涵盖了先进的医学知识。此外,我们还从各大图书馆和出版社策划了一批3万本医学教科书。在经过彻底的清洗和去重处理后,这个集合提供了大约40亿个令牌的基本医学知识。

底层数据

我们利用UMLS数据集作为我们的基础底层数据。统一医学语言系统(UMLS)由美国国家医学图书馆开发,是一个广泛的数据集,将多种医学词汇统一起来,以增强健康信息系统的互操作性。它由三个主要组成部分组成:Metathesaurus,它汇集了200多种医学词汇,包括SNOMED CT和ICD-10;语义网络,它组织医学概念并划分它们之间的相互关系;以及SPECIALIST词汇表,它通过提供详细的语言学见解来帮助自然语言处理。UMLS对于促进电子健康记录整合和临床决策支持等任务至关重要,从而改善医学数据的管理和理解。

3.1.2测试数据
PubMedQA  

由Jin等人在2019年开发,PubMedQA是一个来自PubMed摘要的生物医学问答数据集。该数据集主要通过是、否或可能等选项的选择题格式来解决研究问题。它包含三个不同的部分:PQA-L,包括1,000个人工标记的对用于测试;PQA-U,由61.2k个未标记的对组成,未被使用;以及PQA-A,包含211.3k个人工生成的对。  

MedMCQA  

由Pal、Umapathi等人在2022年推出,MedMCQA是一个从印度医学学院入学考试(AIIMS和NEET-PG)练习和以往考试中制定的多项选择题数据集。该数据集分为一个包含182,822个问题的训练集和一个包含4,183个问题的测试集,每个问题提供四个可能的答案。该数据集为医学学校候选人的知识测试提供了重要资源。  

USMLE  

由Jin、Pan等人在2021年创建,USMLE数据集包括来自美国医学执照考试的多项选择题,旨在评估医学专业人员的执业认证准备情况。该数据集在多语言覆盖方面独特,提供英语、简体中文和繁体中文的问题。为了本描述的目的,仅考虑英语部分,包括10,178 + 1,273 + 1,273个数据。  

3.2LLM models大模型基座

LLAMA2  

在原始LLAMA数据集的基础上,LLAMA2通过包含更多多样化和复杂的语言任务扩展了评估框架,可能解决了初始版本中识别的局限性和空白。尽管LLAMA2的具体细节可能具有假设或推测的性质,但人们可以期待它将继续关注强大、全面的语言分析,完善工具和方法,以更好地衡量语言理解和生成中的细微差别。  

LLAMA3  

LLAMA3是LLAMA系列大型语言模型的最新版本,旨在提高自然语言理解和生成的能力。在其前身LLAMA和LLAMA2的成功基础上,LLAMA3融合了更复杂的算法和更广泛的数据集,以增强其在各种语言任务中的表现。  

GPT-4  

由OpenAI开发的ChatGPT-4是生成预训练变换器模型的一个版本,已经在多样化的互联网文本上进行了训练。作为一个更先进的版本,ChatGPT-4在理解和生成类人文本的能力上相较前代模型有了改进,使其能够进行更加连贯和与上下文相关的对话。该模型旨在执行广泛的任务,包括但不限于翻译、问答和内容生成,展示了在处理复杂对话场景和细微语言差异方面的显著进步。  

Gemini  

谷歌的Gemini是一个尖端语言模型,旨在增强对话AI系统的能力。作为谷歌在自然语言处理方面持续努力的一部分,Gemini旨在提供比以往模型更细致和上下文感知的互动。该模型利用深度学习技术理解和生成类人响应,使其适用于虚拟助手、客户支持和互动应用等广泛的场景。  

3.3结果

3.3.1医学GraphRAG效果

首先,我们进行了实验,以评估我们的医疗GraphRAG对各种大型语言模型的影响,结果如表1所示。数据表明,我们的MedGraphRAG显著提升了大型语言模型在医学基准测试上的表现。这一改善归因于zero-shot RAG的实施,这比微调或使用适配器更具成本效益、更快且更方便。值得注意的是,MedGraphRAG在较小的LLM上,如LLaMA2-13B和LLaMA3-8B,产生了更显著的改进,这些模型在这些基准测试中通常表现较差,从而扩大了其适用范围。MedGraphRAG还显著提升了更强大的封闭源LLM的表现,如GPT和LLaMA3-70B,帮助它们在多个基准测试中实现了先进(SOTA)的结果。这些结果超越了人类专家的准确性,展示了人工智能提升临床工作流程的强大潜力。

图片

图2:与SOTA医疗LLM模型在MedQA基准上的比较

图片

表1:MedGraphRAG在各种LLM上的改善情况

3.3.2基于循证的回复

感谢我们 MedGraphRAG 中的图形链接机制,我们可以促使大型语言模型生成基于证据的复杂医学问题的回答,从而增强安全性和可解释性。如图3所示,我们比较了仅由 GPT-4 生成的回答和由 MedGraphRAG 增强的回答,针对一个具有挑战性的医学诊断问题。在这种情况下,患者表现出与阿尔茨海默病常见的症状——逐渐加重的健忘以及偶尔的突然困惑和言语障碍。然而,经验丰富的人类专家的仔细分析会将这种情况识别为血管性痴呆。MedGraphRAG 增强的回答不仅准确地将血管性痴呆与阿尔茨海默病区分开来,还提供了详细的解释,并引证了真实的资料。这确保了每个主张都可以验证,使信息对临床医生而言值得信赖。此外,回答中还包含了医学术语的简化解释,使非医学背景的用户也易于理解。这种基于证据、用户友好的方法在安全至上的临床实践中至关重要。

3.3.3与SOTA医疗LLM模型比较

我们还评估了MedGraphRAG在这些基准上与一系列之前的最先进模型的表现,包括经过广泛微调的模型Gu等(2022)Yasunaga等(2022a)Yasunaga等(2022b)Bolton等(2022)Singhal等(2022)Singhal等(2023)Wu等(2023)以及未经过微调的模型Nori等(2023)OpenAI(2023a)OpenAI(2023b)在MedQA基准上的表现。结果如图2所示,应用于强大的GPT-4 LLM时,我们的MedGraphRAG比之前的最先进提示模型Medprompt Nori等(2023)高出显著的1.1%。即使与这些医学数据集上的强微调方法进行比较,MedGraphRAG也超越了所有,并实现了最先进。这个卓越的表现源于充分利用了强大的GPT-4模型的固有能力。这进一步凸显了我们未经过微调的MedGraphRAG方法的优势:它继承了闭源模型的强大能力,并超越了许多需要昂贵和详尽微调的模型。

3.3.4消融研究

我们进行了全面的消融研究,以验证我们提出的模块的有效性,结果如表2所示。本研究比较了多种文档切分、层次图构建和信息检索的方法。具体而言,在文档切分方面,我们评估了我们的混合静态-语义方法与纯静态方法的对比。在层次图构建方面,我们将我们的方法与LangChain中使用的基本构建方法进行了对比。在信息检索方面,我们将基于摘要的检索方法Edge et al. (2024)与我们的U-retrieve方法进行了比较。这些方法是在先前提到的三个问答基准上进行评估的。  

结果如表所示,表明我们的混合语义方法在性能上显著优于原始模型,强调了复杂数据切分在所有RAG管道中的重要性。当将基本图构建方法与我们提出的层次方法进行比较时,显然构建图形可以提高RAG性能。此外,我们的层次图构建技术带来了最显著的改进,超越了大多数先进(SOTA)方法的性能。此外,用我们的U-retrieve方法替代总结检索进一步提升了性能,证明了U-retrieve在提高检索准确性和相关性方面的有效性。

图片

图3:示例案例展示了MedGraphRAG生成基于证据的响应,配有可靠的引用和术语解释。

图片

表2:对MedGraphRAG的消融研究

4总结

综上所述,本文介绍了MedGraphRAG,一个新颖的基于图谱的检索增强生成RAG框架。该框架增强了大语言模型LLMs的能力,我们的方法结合了先进的文档分块和分层图结构,显著提高了数据组织和检索准确性。我们的消融研究确认了在医疗问答基准上相较于最先进模型的优越表现,并提供了对医疗应用至关重要的可信且源链接的回应。未来,我们旨在扩展该框架以包括更多样化的数据集 并探索其在实时临床环境中的潜力

References

  1. Medical Graph RAG: Towards Safe Medical Large Language Model via Graph Retrieval-Augmented Generation (arxiv.org)

    https://arxiv.org/html/2408.04187v1

  2. “大模型+知识图谱”双轮驱动的医药数智化转型新范式-OpenKG TOC专家谈

  3. 重磅 - 微软官宣正式在GitHub开源GraphRAG

  4. 论文快读| HeCiX-KG:将知识图谱和大型语言模型整合应用于生物医学研究

  5. KRAGEN:使用知识图谱增强的RAG解决生物医学大型语言模型问题

  6. 消除幻觉的知识图谱增强医学大模型 - "Nature"NPJ数字医学杂志

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/987054
推荐阅读
  

闽ICP备14008679号