DISC-MedLLM:复旦大学团队发布中文医疗健康个人助手,开源47万微调数据

2023-09-13 13:01 314 阅读 ID:1424
机器学习算法与自然语言处理
机器学习算法与自然语言处理

随着远程医疗的兴起,在线问诊、咨询越发成为患者寻求便捷高效的医疗支持的首选项。近来大语言模型(LLM)展示出强大的自然语言交互能力,为健康医疗助手走进人们的生活带来了希望。

医疗健康咨询场景通常较为复杂,个人助手需要有丰富的医学知识,具备通过多个轮次对话了解病人意图,并给出专业、详实回复的能力。通用语言模型在面对医疗健康咨询时,往往因为缺乏医疗知识,出现避而不谈或者答非所问的情况;同时,倾向于针对当前轮次问题完成咨询,缺少令人满意的多轮追问能力。除此之外,当前高质量的中文医学数据集也十分难得,这为训练强大的医疗领域语言模型构成了挑战。

复旦大学数据智能与社会计算实验室(FudanDISC)发布中文医疗健康个人助手——DISC-MedLLM。在单轮问答和多轮对话的医疗健康咨询评测中,模型的表现相比现有医学对话大模型展现出明显优势。课题组同时公开了包含47万高质量的监督微调(SFT)数据集——DISC-Med-SFT,模型参数和技术报告也一并开源。

主页地址:https://med.fudan-disc.com

Github地址:https://github.com/FudanDISC/DISC-MedLLM

技术报告:https://arxiv.org/abs/2308.14346  

样例展示

                                                                        图1:对话示例

患者感到身体不适时,可以向模型问诊,描述自身症状,模型会给出可能的病因、推荐的治疗方案等作为参考,在信息缺乏时会主动追问症状的详细描述。

                                                                 图2:问诊场景下的对话

用户还可以基于自身健康状况,向模型提出需求明确的咨询问题,模型会给予详尽有助的答复,并在信息缺乏时主动追问,以增强回复的针对性和准确性.

                                                         图3:基于自身健康状况咨询的对话

用户还可以询问与自身无关的医学知识,此时模型会尽可能专业地作答,使用户全面准确地理解。

                                                        图4:与自身无关的医学知识询问对话

DISC-MedLLM介绍

DISC-MedLLM是基于我们构建的高质量数据集DISC-Med-SFT在通用领域中文大模型Baichuan-13B上训练得到的医疗大模型。值得注意的是,我们的训练数据和训练方法可以被适配到任何基座大模型之上。DISC-MedLLM具有三个关键特点:

  • 可靠丰富的专业知识。我们以医学知识图谱作为信息源,通过采样三元组,并使用通用大模型的语言能力进行对话样本的构造。
  • 多轮对话的问询能力。我们以真实咨询对话纪录作为信息源,使用大模型进行对话重建,构建过程中要求模型完全对齐对话中的医学信息。
  • 对齐人类偏好的回复。病人希望在咨询的过程中获得更丰富的支撑信息和背景知识,但人类医生的回答往往简练;我们通过人工筛选,构建符合人类偏好的高质量小规模行为微调样本,对齐病人的需求。 

模型的优势和数据构造框架如图5所示。我们从真实咨询场景中计算得到病人的真实分布,以此指导数据集的样本构造,基于医学知识图谱和真实咨询数据,我们使用大模型在回路和人在回路两种思路,进行数据集的构造。

                                                             图5:DISC-Med-SFT的构造

方法:数据集DISC-Med-SFT的构造

在模型训练的过程中,我们向DISC-Med-SFT补充了通用领域的数据集和来自现有语料的数据样本,形成了DISC-Med-SFT-ext,详细信息呈现在表1中。

                                                   表1:DISC-Med-SFT-ext数据内容介绍

重构AI医患对话

数据集 分别从两个公共数据集MedDialogc和MedQA2中依质量选择40万个和2万个样本,作为SFT数据集构建的源样本。重构 为了将真实世界医生回答调整为所需的高质量的统一格式的回答,我们利用GPT-3.5来完成这个数据集的重构过程。提示词(Prompts)要求改写遵循以下几个原则:

  1. 去除口头表达,提取统一表达方式,纠正医生语言使用中的不一致之处。
  2. 坚持原始医生回答中的关键信息,并提供适当的解释以更加全面、合乎逻辑。
  3. 重写或删除AI医生不应该发出的回复,例如要求患者预约。

图6展示了一个重构的示例。调整后医生的回答与AI医疗助手的身份一致,既坚持原始医生提供的关键信息,又为患者提供更丰富全面的帮助。

                                                                 图6:对话重新构造的例子

知识图谱问答对

医学知识图谱包含大量经过良好组织的医学专业知识,基于它可以生成噪声更低的QA训练样本。我们在CMeKG的基础上,根据疾病节点的科室信息在知识图谱中进行采样,利用适当设计的GPT-3.5模型Prompts,总共生成了超过5万个多样化的医学场景对话样本。

行为偏好数据集

在训练的最终阶段,为了进一步提高模型的性能,我们使用更符合人类行为偏好数据集进行次级监督微调。从MedDialog和cMedQA2两个数据集中人工挑选了约2000个高质量、多样化的样本,在交给GPT-4改写几个示例并人工修订后,我们使用小样本的方法将其提供给GPT-3.5,生成高质量的行为偏好数据集。

其他
通用数据  

为了丰富训练集的多样性,减轻模型在SFT训练阶段出现基础能力降级的风险,我们从两个通用的监督微调数据集moss-sft-003和alpaca gpt4 data zh随机选择了若干样本。

MedMCQA

为增强模型的问答能力,我们选择英文医学领域的选择题数据集MedMCQA,使用GPT-3.5对多项选择题中的问题和正确答案进行了优化,生成专业的中文医学问答样本约8000个。

实验

训练

如下图所示,DISC-MedLLM的训练过程分为两个SFT阶段。

                                                                     图7:两阶段训练过程

评测

在两个场景中评测医学LLMs的性能,即单轮QA和多轮对话。

  • 单轮QA评测:为了评估模型在医学知识方面的准确性,我们从中国国家医疗执业医师资格考试(NMLEC)和全国硕士研究生入学考试(NEEP)西医306专业抽取了1500+个单选题,评测模型在单轮QA中的表现。
  • 多轮对话评测:为了系统性评估模型的对话能力,我们从三个公共数据集——中文医疗基准评测(CMB-Clin)、中文医疗对话数据集(CMD)和中文医疗意图数据集(CMID)中随机选择样本并由GPT-3.5扮演患者与模型对话,提出了四个评测指标——主动性、准确性、帮助性和语言质量,由GPT-4打分。

评测结果

比较模型

将我们的模型与三个通用LLM和两个中文医学对话LLM进行比较。包括OpenAI的GPT-3.5, GPT-4, Baichuan-13B-Chat; BianQue-2和HuatuoGPT-13B。

单轮QA结果

单项选择题评测的总体结果显示在表2中。GPT-3.5展现出明显的领先优势。DISC-MedLLM在小样本设置下取得第二名,在零样本设置中落后于Baichuan-13B-Chat,排名第三。值得注意的是,我们的表现优于采用强化学习设置训练的HuatuoGPT(13B)。

                                                                表2:单项选择题评测结果

多轮对话结果

在CMB-Clin评估中,DISC-MedLLM获得了最高的综合得分,HuatuoGPT紧随其后。我们的模型在积极性标准中得分最高,凸显了我们偏向医学行为模式的训练方法的有效性。结果如表3所示。

                                                                 表3:CMB-clin结果

在CMD样本中,如图8所示,GPT-4获得了最高分,其次是GPT-3.5。医学领域的模型DISC-MedLLM和HuatuoGPT的整体表现分数相同,在不同科室中表现各有出色之处。

                                                                     图8:CMD结果

CMID的情况与CMD类似,如图9所示,GPT-4和GPT-3.5保持领先。除GPT系列外,DISC-MedLLM表现最佳。在病症、治疗方案和药物等三个意图中,它的表现优于HuatuoGPT。

                                                                  图9:CMID结果

各模型在CMB-Clin和CMD/CMID之间表现不一致的情况可能是由于这三个数据集之间的数据分布不同造成的。CMD和CMID包含更多明确的问题样本,患者在描述症状时可能已经获得了诊断并表达明确的需求,甚至患者的疑问和需求可能与个人健康状况无关。在多个方面表现出色的通用型模型GPT-3.5和GPT-4更擅长处理这种情况。

总结

DISC-Med-SFT数据集利用现实世界对话和通用领域LLM的优势和能力,对三个方面进行了针对性强化:领域知识、医学对话技能和与人类偏好;高质量的数据集训练了出色的医疗大模型DISC-MedLLM,在医学交互方面取得了显著的改进,表现出很高的可用性,显示出巨大的应用潜力。


该领域的研究将为降低在线医疗成本、推广医疗资源以及实现平衡带来更多前景和可能性。DISC-MedLLM将为更多人带来便捷而个性化的医疗服务,为大健康事业发挥力量。

免责声明:作者保留权利,不代表本站立场。如想了解更多和作者有关的信息可以查看页面右侧作者信息卡片。
反馈
to-top--btn