医疗图形 RAG: 通过图检索增强生成实现安全医疗大型语言模型

摘要

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

1介绍

大型语言模型(LLMs)的快速发展,如 OpenAI 的 ChatGPT OpenAI(2023a)和 GPT-4 OpenAI(2023b),已显著改变了自然语言处理领域的研究,并在日常场景中引发了众多人工智能应用。然而,这些模型在应用于需要专业知识的领域,如金融、法律和医学时仍然面临着限制。存在两个主要挑战:首先,由于这些模型在处理极长上下文和在专业数据集上进行大模型微调的高成本或不切实际,使得为特定用途部署训练好的 LLMs 是复杂的。第二,在医学等需要精准性的领域中, LLMs 可能会产生幻觉——输出似乎准确,但导致错误结论,这可能会带来危险。此外,它们有时提供过于简单的答案,而不提供新的见解或发现,这在需要高水平推理来得出正确答案的领域中显得不足。

检索增强生成(RAG)Lewis 等人(2021)是一种技术,它使用特定和私有数据集来回答用户查询,而无需对模型进行进一步训练。最初设计用于需要在特定文本区域内找到必要答案的情况,RAG 有时会在合并由共享属性链接的不同信息片段时产生新的见解方面遇到困难。此外,在需要对大型数据集或大量文档中综合概述语义概念的任务中,它表现不佳。为了解决这些限制,引入了图形 RAG Hu 等人(2024)方法。该方法利用LLMs创建来自私有数据集的知识图,结合图机器学习,在查询处理期间增强提示。GraphRAG 已经表现出显著的改进,通过提供更高的智能和信息综合能力,优于以往应用于私有数据集的方法。

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

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

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

评估我们的医学图谱 RAG,我们在几个流行的开放和闭源 LLMs 上实施了该方法,包括 ChatGPT OpenAI (2023a) 和 LLaMA Touvron 等人 (2023),并在主流医学问答基准测试中对其进行测试,如 PubMedQA Jin 等人 (2019),MedMCQA Pal 等人 (2022),以及 USMLE Kung 等人 (2023)。对于 RAG 过程,我们提供了一个全面的医学词典作为基础知识层,UMLS 医学知识图谱 Lindberg 等人 (1993) 作为详细语义关系的基础层,以及一个经过筛选的 MedC-K 数据集 Wu 等人 (2023) — 包括最新的医学论文和书籍 — 作为模拟用户提供的私人数据的中间级数据。我们的实验证明,我们的模型显着提升了普通 LLMs 在医学问题上的性能。 令人惊讶的是,仅使用 RAG 方法而不需要额外训练,它甚至超过了许多在医学语料库上进行了精细调整或专门训练LLMs。

我们的贡献如下:

我们是率先提出在医学领域专门应用图 RAG 的全面管道的先驱者。

2. 我们已经开发了独特的图构建和数据检索方法,使LLMs能够利用整体私密数据生成基于证据的响应。

3. 我们在主流基准测试中进行了验证实验,利用各种模型变体取得了最先进的性能。

2方法

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

2.1医疗图形构建

语义文档分割

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

为了增强准确性,我们采用混合方法进行字字符分离并结合基于主题的分割。具体来说,我们利用静态字符(换行符号)来隔离文档中的单独段落。在此之后,我们应用文本的派生形式进行语义块划分。我们的方法包括使用命题传递,从原始文本中提取独立的陈述。通过命题传递,每个段落被转化为自成体系的陈述。然后,我们对文档进行顺序分析,评估每个命题,决定它是否应该与现有的块合并或启动一个新的块。这个决定是通过一个LLM的零-shot 方法做出的。为了减少顺序处理产生的噪音,我们实施一个滑动窗口技术,每次处理五个段落。我们通过移除第一个段落并添加下一个来持续调整窗口,保持对主题一贯性的关注。我们设定一个硬限制,即最长的块不能超过LLM的上下文长度限制。 分块文档后,我们在每个数据块的每个个体上构建图形。

 元素提取

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

对于每个实体数据结构,我们包含了一个唯一 ID 来追踪其来源文档和段落。这个标识符对于从源文档中检索信息很关键,有助于随后生成基于证据的回应。

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

 层级链接

医学是一个专业领域,其特点是始终使用精确的术语系统,并基于许多确立的事实,例如疾病的特定症状或药物的副作用。在这个领域,很关键的一点是LLMs不扭曲、修改或添加创造性或随机元素到数据中,不像它们在其他,限制较少的语境中的应用。

认识到这一点,我们在医疗领域内开发了独特的结构,将每个实体与扎实的医学知识和术语联系起来。这种方法旨在为每个实体概念提供可信赖的来源和深刻的定义,从而增强响应的真实性并减少幻觉的发生,这在将LLMs应用于医学时是一个重要挑战。

具体来说,我们构建了一个三层的 RAG 数据结构来开发一个全面的医疗图。第一层包括用户提供的文档,比如特定医院的高度机密的医疗报告。在从这些文档中提取实体后,我们将它们与更基础的公认信息的水平相连接。第二层是使用医学教科书和学术文章来构建的。我们使用先前概述的方法从这些医学来源预构建一个图,而在接收真实用户文档之前。第一级的实体根据LLMs检测到的相关性与第二级中的对应实体相连接。

第二级图的实体随后连接到第三级,其中包括若干明确定义的医学术语及其知识关系。这些基本信息来源于可靠的资源,如统一医学语言系统(UMLS),该系统整合了各种健康和生物医学词汇及其语义关系。对于每个实体,我们将其名称的文本嵌入与 UMLS 中的医学词汇进行比较,选择余弦相似度低于指定阈值的词汇。每个链接的词汇进一步与其在 UMLS 中的专业定义和关系相关联,并将这些关系翻译成纯文本,如在吴等人( 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)是一个广泛的数据集,统一了各种医学词汇以增强健康信息系统的互操作性。它由三个主要组成部分组成:荟萃词典,汇集了 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 个问题的测试集,每个问题都提供四个可能的答案。该数据集作为考验医学院候选人知识的重要资源。

 美国医师执业资格考试

由 Jin,Pan 等人于 2021 年创建,USMLE 数据集包括来自美国医师执照考试的多项选择题,旨在评估医学专业人士获得董事会认证的准备情况。该数据集在其多语言覆盖范围上独一无二,提供英语、简体中文和繁体中文题目。为了描述,仅考虑了英语部分,包括 10,178 + 1,273 + 1,273 条数据。

3.2 LLM模型

 LLAMA2

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

LLAMA3

LLAMA3 是 LLAMA 系列的最新版本,旨在推进自然语言理解和生成的能力。在前辈们 LLAMA 和 LLAMA2 的成功基础上,LLAMA3 采用了更复杂的算法和更广泛的数据集,以提升其在各种语言任务中的性能。

GPT-4

由 OpenAI 开发的 ChatGPT-4 是生成式预训练变换器模型的一个迭代版本,已经在各种互联网文本上进行了训练。作为更先进的版本,ChatGPT-4 在能够理解和生成类似人类文本方面有了改进,使其能够参与更连贯和上下文相关的对话。这个模型旨在执行各种任务,包括但不限于翻译,问答和内容生成,展示了在处理复杂对话场景和语言微妙之处方面取得的重大进展。

 Gemini

Google 的 Gemini 是一种先进的语言模型,旨在增强对话 AI 系统的功能。作为谷歌在自然语言处理方面持续努力的一部分开发,Gemini 旨在提供比以前模型更加细致和上下文感知的互动。这种模型利用深度学习技术来理解和生成类似人类的回复,使其适用于包括虚拟助手、客户支持和交互应用在内的广泛应用场景。

3.3结果

3.3.1医疗图表 RAG 效果

首先,我们进行了实验,评估了我们的医学图谱 RAG 对各种大型语言模型的影响,结果呈现在表格 1 中。数据显示,我们的 MedGraphRAG 显著提升了 LLMs 在医学基准测试上的表现。这一改进归功于零-shot RAG 的实施,它比微调或使用适配器更具成本效益、更快速、更方便。值得注意的是,MedGraphRAG 在较小的 LLMs 上取得了更显著的改进,例如 LLaMA2-13B 和 LLaMA3-8B,这些模型通常在这些基准测试中表现不佳,因此拓宽了其在更广泛用户群中的适用性。MedGraphRAG 还显著提升了更强大、封闭源的 LLMs 如 GPT 和 LLaMA3-70B 的表现,帮助它们在多个基准测试上实现了最先进的结果。这些成果超越了人类专家的准确性,展示了 AI 增强临床工作流程的巨大潜力。

Refer to caption

图 2:在 MedQA 基准上与 SOTA 医疗模型LLM进行比较。 Table 1:MedGraphRAG 在各种LLMs上的改进。

3.3.2基于证据的回应

感谢我们的 MedGraphRAG 中的图链接机制,我们可以提示LLMs生成基于证据的对复杂医学问题的回答,增强安全性和可解释性。如图所示3,我们比较了仅由 GPT-4 生成的回答和经 MedGraphRAG 增强的针对一项具有挑战性的医学诊断问题的回答。在本例中,患者表现出与老年痴呆症常见相关的症状——越来越多的遗忘和偶尔的突然混乱和言语困难。然而,经验丰富的人类专家进行仔细分析将鉴别出情况是血管性痴呆症。 MedGraphRAG 增强的回答不仅准确地确定了血管性痴呆症而不是老年痴呆症,还提供了详细的声明,这些声明由真实引文支持。这确保了每一项声明都是可验证的,使信息对临床医生值得信赖。此外,回答还包括对医学术语的简化解释,使没有医学背景的用户能够理解。这种基于证据的,用户友好的方法在临床实践中是至关重要的,因为安全至上。

3.3.3与 SOTA 医疗LLM模型进行比较

我们还评估了 MedGraphRAG 在这些基准测试中针对一系列先前最先进(SOTA)模型的表现,包括经过深度微调的模型 Gu 等人(2022)Yasunaga 等人(2022a)Yasunaga 等人(2022b)Bolton 等人(2022)Singhal 等人(2022)Singhal 等人(2023)Wu 等人(2023) 以及未经深度微调的模型 Nori 等人(2023)OpenAI(2023a)OpenAI(2023b) 在 MedQA 基准测试中。结果显示,当应用于功能强大的 GPT-4 LLM 时,我们的 MedGraphRAG 比之前的 SOTA 提示模型 Medprompt Nori 等人(2023) 提高了显著的 1.1%。即使与这些医学数据集上的深度微调方法进行对比,MedGraphRAG 的表现也超过了所有其他模型,达到了 SOTA。 这种优越的性能源于充分利用强大的 GPT-4 模型固有的能力。这进一步突显了我们的非微调 MedGraphRAG 方法的优势:它继承了封闭源模型的强大能力,并超越了许多需要昂贵和详尽微调的模型。

3.3.4消融研究

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

根據表格顯示的結果,我們的混合語義方法顯著提升了性能,強調了所有 RAG 管道中複雜數據分塊的重要性。比較基本圖構建方法和我們提出的分層方法,可以明顯看出構建圖有助於提升 RAG 的性能。此外,我們的分層圖構建技術實現了最顯著的改進,超越了大多數最先進的方法。此外,用我們的 U-retrieve 方法取代總結檢索進一步提高了性能,表明了 U-retrieve 在提高檢索準確性和相關性方面的有效性。

图 3:示例案例显示了 MedGraphRAG 生成基于证据的回复,附带有基础引用和术语解释。 表 2:一个关于 MedGraphRAG 的消蚀研究。

 文档分块 图构建 检索MedQAMedMCQAPubMedQA
 静态Hyb-Semantic Base 层级SumRUR(%)(%)(%)
83.674.275.8
87.477.277.9
88.878.780.6
90.780.882.5
91.381.583.3

4结论

综上所述,本文介绍了 MedGraphRAG,这是一个新颖的基于图的检索增强生成(RAG)框架,用于医学领域,增强了大型语言模型的功能(LLMs)。 我们的方法将高级文档分块与分层图结构相结合,显著改善了数据组织和检索准确性。 我们的消融研究证实,在医学问答基准测试中,与最先进的模型相比,性能更加优越,并提供了对医学应用至关重要的可信、源链接的回答。 展望未来,我们旨在将该框架扩展到包含更多多样化的数据集,并探索其在实时临床环境中的潜力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值