摘要
本文介绍了一个名为AlPatient的高级模拟病人系统,该系统利用电子健康记录(EHRs)和知识图谱增强大型语言模型(KG-LLM)来提供高保真度和低成本的医疗条件复制和患者-医生互动模拟。作者组队很豪华,包括了密歇根、斯坦福、哈佛医学院、康奈尔、山大、港大、医科院、北大六院等。
模拟患者系统在现代医学教育和研究中发挥着至关重要的作用,提供安全、综合的学习环境并支持临床决策模拟。大型语言模型 (LLM) 可以通过高保真和低成本复制医疗条件和医患互动来推进模拟患者系统。然而,确保这些系统的有效性和可信度仍然是一个挑战,因为它们需要庞大、多样化和精确的患者知识库,以及向用户传播强大而稳定的知识。在这里,我们开发了 AIPatient,这是一种先进的模拟患者系统,以 AIPatient 知识图谱 (AIPatient KG) 作为输入,推理检索增强生成 (Reasoning RAG) 代理工作流程作为生成支柱。AIPatient KG 从重症监护医疗信息市场 (MIMIC)-III 数据库中的电子健康记录 (EHR) 中抽样数据,生成一个由临床多样化和相关的患者组成的 1,495 名患者队列,具有高知识库效度 (F1 0.89)。Reasoning RAG 利用了六个 LLM 支持的代理,涵盖检索、KG 查询生成、抽象、检查器、重写和摘要等任务。该代理框架在基于 EHR 的医学问答 (QA) 中达到 94.15% 的总体准确性,优于不使用代理或仅使用部分代理集成的基准。我们的系统还表现出高可读性(Flesch 阅读缓和率中位数 77.23;Flesch Kincaid 中位数 5.6 级)、稳健性(方差分析 F 值 0.6126,p>0.1)和稳定性(方差分析 F 值 0.782,p>0.1)。AIPatient 系统的良好性能凸显了其支持广泛应用的潜力,包括医学教育、模型评估和系统集成。
核心速览
研究背景
-
研究问题:这篇文章要解决的问题是如何利用大型语言模型(LLM)和电子健康记录(EHR)数据,开发一个先进的模拟病人系统(AlPatient),以高保真度和低成本复制医疗条件和医患互动。
-
研究难点:该问题的研究难点包括:确保系统的有效性和可信度,需要大规模、多样化和精确的患者知识库,以及稳健且稳定的知识传播机制。
-
相关工作:模拟病人系统在现代医学教育和研究中发挥着重要作用,但存在有效性和可信度的问题。现有工作主要集中在基于事实的准确性和基于评分者一致性的评估方法,但这些方法缺乏对模拟病人系统在情感共鸣和人际关系方面的评估。
研究方法
这篇论文提出了AlPatient系统,用于解决模拟病人系统的高保真度和低成本复制医疗条件和医患互动的问题。具体来说,
-
知识图谱构建:首先,从MIMIC-III数据库中抽取1500名患者的记录,构建AlPatient知识图谱(AIPatient KG)。使用命名实体识别(NER)方法从出院小结中提取患者的症状、病史、过敏史、社会史和家庭史等信息,并将这些信息存储在Neo4j图数据库中。
-
推理检索增强生成(Reasoning RAG)代理工作流程:AlPatient系统采用推理检索增强生成(Reasoning RAG)代理工作流程,包括三个关键阶段:检索、推理和生成。
-
检索阶段:检索代理从AIPatient KG中选择与自然语言查询相关的节点和边。
-
推理阶段:推理代理包括抽象代理和检查代理。抽象代理将复杂的用户查询简化为更通用的高层问题,检查代理则决定是否批准检索到的信息与查询一致。
-
生成阶段:生成代理包括重写代理和总结代理。重写代理将技术性的KG查询结果转换为更易理解的自然语言格式,总结代理则整合重写结果和对话历史,更新对话历史。
实验设计
-
数据收集:从MIMIC-III数据库中抽取1500名患者的记录,包含超过40,000次住院记录。数据使用获得了PhysioNet临床数据库的授权。
-
样本选择:采用分层抽样方法,根据主要诊断类别对患者记录进行抽样,确保样本代表MIMIC-III中的主要诊断类别。
-
参数配置:在评估LLM的性能时,使用Azure OpenAI服务的GPT系列模型和Amazon Bedrock的Claude系列模型。设计了多个提示工程策略,包括角色规范、少样本学习和XML样式标签,以优化系统性能。
结果与分析
-
知识图谱统计:AIPatient KG包含1500个患者入院记录,共有15,441个节点和26,882条边。
-
LLM选择与知识图谱有效性(NER)评估:在知识图谱有效性评估中,GPT-4 Turbo模型的整体F1得分最高,为0.89。具体来说,GPT-4 Turbo模型在过敏史类别的F1得分为1.00,表现最佳。
-
问答准确性评估:通过消融研究评估了不同设置下的问答准确性。所有设置中使用所有代理和少样本学习的设置在大多数类别中达到了最高的准确性,整体准确率为94.15%。
-
可读性评估:Flesch阅读易度的中位数得分为68.77,Flesch-Kincaid年级水平的中位数为6.4,表明输出易于理解。
-
系统鲁棒性评估:方差分析结果显示,问答对话的变体对系统响应准确性没有显著影响,整体F值为0.6126,p值为0.5420。
-
稳定性评估:32种人格类型的方差分析结果显示,人格变体对系统性能没有显著影响,整体F值为0.7820,p值为0.7990。
总体结论
这篇论文开发了基于EHR和LLM的AlPatient系统,通过推理检索增强生成(Reasoning RAG)代理工作流程和MIMIC-III基础的AIPatient知识图谱,支持有效的医学教育及研究。该系统通过LLM代理交互和准确的病人信息处理,实现了复杂推理和高保真度的病人信息响应。推理RAG框架扩展了当前的RAG策略,通过逐步和交互式的代理指令、少样本示例和对话历史更新优化了系统性能。总体而言,AlPatient系统在医学教育和研究中具有广泛的应用潜力。
论文评价
优点与创新
-
先进的模拟病人系统:AlPatient系统利用LLM驱动的推理检索增强生成(Reasoning RAG)代理工作流程和可靠的AlPatient知识图谱(AIPatient KG),提供了一种高效且可信的医疗调查支持方式。
-
复杂的推理能力:通过LLM代理的交互作用,系统能够进行复杂的推理,并通过命名实体识别(NER)准确处理患者信息。
-
高准确率:系统在基于EHR的医学问答(QA)中达到了94.15%的整体准确率,超过了不使用代理或仅使用部分代理集成的基准。
-
高可读性:系统的输出具有高可读性,中位数Flesch阅读易度为77.23,中位数Flesch-Kincaid年级水平为5.6。
-
鲁棒性和稳定性:系统表现出高鲁棒性(ANOVA F-值为0.6126,p>0.1)和高稳定性(ANOVA F-值为0.782,p>0.1)。
-
多代理框架:Reasoning RAG框架扩展了传统的RAG策略,通过逐步和交互式的代理指令、少样本示例、反馈循环和对话历史更新来优化系统性能。
-
大规模NER处理:AIPatient KG原型展示了基于大规模NER的EHR处理方法,也使得LLM的选择适用于下游任务。
-
综合评估指南:从系统评估策略的角度,本文进一步贡献了对医疗NLP系统的综合评估指南,特别是对于基于EHR和LLM的多代理系统。
不足与反思
-
用户体验改进:尽管当前系统受益于Reasoning RAG框架和多代理工作流程,但进一步的增强可以改善用户体验。例如,开发并集成一个自动评估代理以在医疗调查中提供帮助评分和反馈的功能。
-
数据集多样性:当前实现的AIPatient KG主要依赖于MIMIC-III数据集的出院小结,这限制了场景的多样性,包括门诊、住院和长期护理环境。扩展数据库以包括这些额外领域的EHR将增强患者病例的多样性。
-
处理速度优化:当前系统由于需要多个代理顺序通过API调用操作,导致模拟过程等待时间较长。正在探索本地微调LLM或小型语言模型(SLM)以减少对外部API调用的依赖,从而提高交互速度和系统整体用户体验。
-
多模态集成:当前系统仅使用文本数据,而多模态大型语言模型(MLLMs)的出现开启了新的可能性。未来的迭代可以将医疗图像如ECG、X光、MRI和CT扫描整合到系统中,提供更丰富和更全面的患者模拟体验。
-
用户反馈:未来研究应探索受训者、医生和患者对生成式AI系统在临床教育和实践中实施的舒适度和担忧,确保系统与所有利益相关者的期望和舒适度保持一致。
关键问题及回答
问题1:AlPatient系统在构建知识图谱时,使用了哪些具体的数据源和抽取方法?
AlPatient系统在构建知识图谱时,使用了MIMIC-III数据库中的1500名患者的记录。具体的数据源包括患者信息表、入院信息表和生命体征表中的结构化数据,以及出院小结中的非结构化数据。使用命名实体识别(NER)方法从出院小结中提取患者的症状、病史、过敏史、社会史和家庭史等信息。这些信息被存储在Neo4j图数据库中,以便于高效地进行存储、检索和查询复杂的关系。
问题2:推理检索增强生成(Reasoning RAG)代理工作流程的具体步骤是什么?
-
检索阶段:检索代理从AIPatient KG中选择与自然语言查询相关的节点和边。
-
推理阶段:
-
抽象代理:将复杂的用户查询简化为更通用的高层问题。
-
检查代理:决定是否批准检索到的信息与查询一致。如果检查代理批准,流程进入生成阶段;否则,重新生成Cypher查询。这个过程最多重复3次,如果仍未获得满意信息,则跳过生成阶段,模拟病人输出“我不知道”。
- 生成阶段:
-
重写代理:将技术性的KG查询结果转化为更易理解的自然语言格式,考虑患者的特定性格特征。
-
总结代理:整合重写结果和对话历史,更新对话历史,以便在多轮对话中保持连续性。
问题3:AlPatient系统在评估其性能时,采用了哪些评估维度和指标?
-
知识图谱有效性(NER):通过医学医生使用Doccano标注界面进行标注,评估LLM在生成系统信息输入方面的性能。使用F1分数作为评估指标。
-
问答准确性:开发了一个包含524个问题的医学问答对话数据集,评估系统在不同输入格式下的准确性。
-
可读性:使用Flesch阅读易度和Flesch-Kincaid年级水平两个指标评估输出文本的可读性。
-
系统鲁棒性:通过对比原始问题和变体问题的响应准确性,评估系统对问题措辞变化的鲁棒性。使用ANOVA和双样本t检验进行分析。
-
稳定性:通过对比不同人格类型下的系统响应,评估系统在模拟不同人格时的稳定性。使用ANOVA进行分析,并计算人格引起的数据丢失比例。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。