关键词:AI医学,医学大模型,指令微调,PubMed

文章目录

  • 医学微调大模型
    • 1. MedicalGPT-zh
    • 2. DoctorGLM
    • 3. Huatuo-Llama-Med-Chinese & ChatGLM-Med
  • 医学预训练语言模型
    • 1. BioMedLM (2.7B)
    • 2. PMC-LLaMA (7B)
    • 3. BioMedGPT (1.6B)
  • 总结与思考

领域指令微调样本生成框架OpenGPT与医疗健康大模型NHS-LLM
ChatDoctor:借助医学知识库生成微调样本构建医疗领域大模型

前面整理了两篇具有代表性的AI医学领域大模型,主要讲了领域大模型在微调数据生成及在通用大模型基础上微调训练上的工作。本文继续该方向的调研,就当前主要的AI医疗大模型微调及预训练进行项目信息梳理。

医学微调大模型

1. MedicalGPT-zh

基于ChatGLM-6B LoRA 16-bit指令微调的中文医疗通用模型。基于共计28科室的中文医疗共识与临床指南文本,生成覆盖面更全的医疗知识,回答内容更精准的高质量指令数据集。

项目地址:https://github.com/MediaBrain-SJTU/MedicalGPT-zh

  • 根据医疗指南生成知识文档样例数据格式如下:
{"指南": "患者获益;相反减少热卡摄入会导致营养不良,尤其是晚期CKD患者。因此,减轻体重干预措施的利弊需进一步研究,并未作为临床推荐。CKD合并糖尿病患者的降糖治疗一些新型降糖药物已获准应用于临床,包括钠葡萄糖共转运蛋白2抑制剂(SGLT2i),胰高血糖素样肽-1受体激动剂(GLP-1RA)和二肽基肽酶4抑制剂(DPP4i)。多项大型临床试验证实新型降糖药物能有效改善2型糖尿病患者心血管和肾脏临床预后(图4)。这些试验为治疗提供了证据。在对已发表的研究成果进行严格的系统回顾后,工作组经过综合考量,为CKD患者合并2型糖尿病推荐了首选的治疗方案。1型糖尿病合并CKD患者,仍以胰岛素降糖主为,缺乏新型降糖药物疗效的对照研究,故在本指南未涉及。指南推荐CKD患者合并2型糖尿病患者在生活方式干预的基础上,以二甲双胍联合SGLT2i作为一线降糖治疗方案,必要时再联合其他降糖药物(图5)。对于大多数eGFR≥30ml/(min·1.73m2)的CKD合并糖尿病患者可以从二甲双胍和SGLT2i治疗中获益。二甲双胍是一种价格低廉且耐受性良好的药物,可以有效降低血糖;SGLT2i有益于降低CKD及CVD患者心血管","qa_pairs": [{"question": "CKD患者减轻体重的干预措施可能会导致什么后果?有哪些风险需要注意?","answer": "CKD患者减轻体重的干预措施可能会导致以下风险和后果:\n\n1. 营养不良:如果减重不当,可能会导致营养不良和不良的健康后果。\n\n2. 肌肉损伤:不适当的减重可能会导致肌肉损伤,尤其是在白天饮食受限的情况下。\n\n3. 血糖水平变化:CKD患者减重可能会影响血糖水平的稳定性。\n\n4. 肾脏功能恶化:不适当的减重可能会影响肾脏功能的稳定性。\n\n5. 药物副作用增加:减重可能会影响药物的代谢和吸收,从而增加药物副作用的风险。\n\n6. 微量元素缺失:减重可能会导致某些微量元素的摄入不足,例如钙、铁和维生素D等。\n\n因此,CKD患者在减轻体重时需要注意上述风险,并在医生或营养师的指导下制定合理的减肥计划。"},{"question": "新型降糖药物对于CKD并发糖尿病的患者能够产生怎样的治疗效果?这些效果有哪些证据支持?","answer": "一些新型降糖药物针对CKD并发糖尿病的患者具有良好的治疗效果,包括以下:\n\n1. 糖皮质激素受体拮抗剂(SGLT2抑制剂):这类药物可以通过促进糖尿病患者的尿液排泄,从而降低血糖水平。目前已有多项研究证实,这类药物可以在CKD患者中降低血糖水平,并且有助于减少肾脏疾病的进展。\n\n2. 胰岛素类药物:这类药物可以增强糖尿病患者的胰岛素功能,从而促进血糖的吸收和利用。尽管胰岛素类药物在CKD患者中使用可能存在一些风险,但已有研究表明,一些胰岛素类药物在CKD并发糖尿病的患者中可以有效控制血糖水平。\n\n3. 胰岛素样增效因子-1受体激动剂(GLP-1RA):这类药物可以增强患者的胰岛素分泌和对胰岛素的敏感度,从而降低血糖水平。现有的研究证据表明,GLP-1RA对于CKD患者并发糖尿病的治疗具有潜在的益处。\n\n需要注意的是,不同类型的药物可能具有不同的治疗效果和副作用,应根据患者的具体情况进行选择和调整治疗方案。此外,任何药物的使用都应在医生的监护下进行。"},{"question": "在CKD合并糖尿病的治疗中,二甲双胍和SGLT的联合使用能够带来哪些益处?这些药物适用于哪些CKD患者?","answer": "二甲双胍是一种口服药物,通常用于治疗2型糖尿病,能够降低血糖和减少体重。SGLT(Sodium glucose co-transporter 2)抑制剂是一种新型口服降糖药物,能够通过抑制肾脏中的SGLT2,促使糖尿病患者在尿液中排出更多的葡萄糖,从而降低血糖。\n\n对于合并糖尿病的CKD患者,二甲双胍和SGLT抑制剂的联合使用可能会带来以下益处:\n\n1. 降低血糖:二甲双胍和SGLT抑制剂的联合使用可以更加有效地降低血糖,相比于单一药物的治疗,联合使用可能会更加有效。\n\n2. 保护肾脏:SGLT抑制剂具有减轻肾小管负担的作用,可以减少肾脏的损伤和疾病进展的风险。此外,二甲双胍的使用也可以降低糖尿病患者肾脏疾病的风险。\n\n3. 减轻体重:二甲双胍和SGLT抑制剂的联合使用可以通过减少摄入的糖分和促进葡萄糖的代谢而减少体重。\n\n适用于哪些CKD患者?\n\n二甲双胍和SGLT抑制剂的联合使用适用于合并糖尿病的CKD患者。然而,这些药物并不适用于所有CKD患者,因此应该根据患者的具体情况,在专业医生的建议下使用这些药物。此外,需要注意二甲双胍和SGLT抑制剂的副作用和药物相互作用,以避免不良反应。"}]}
  • 医疗共识与临床指南中文本段涵盖28个科室共计32k个文本段。各科室及其分布如下:

2. DoctorGLM

基于ChatGLM-6B模型,分别采用Lora和p-tuningv2方法,引入中文医疗对话数据集对ChatGLM-6B进行微调,样本量问答对近800k。

项目地址: https://github.com/xionghonglin/DoctorGLM

– 中文医疗对话数据集包含6个文件夹及对应的问答对如下

总计6个文件夹,792099个问答对: 94596个问答对  220606个问答对  183751个问答对  75553个问答对  101602个问答对  115991个问答对 

– 数据为CSV格式,示例如下:

DepartmentTitleAskAnswer
心血管科高血压患者能吃党参吗?我有高血压这两天女婿来的时候给我拿了些党参泡水喝,您好高血压可以吃党参吗?高血压病人可以口服党参的。党参有降血脂,降血压的作用,可以彻底消除血液中的垃圾,从而对冠心病以及心血管疾病的患者都有一定的稳定预防工作作用,因此平时口服党参能远离三高的危害。另外党参除了益气养血,降低中枢神经作用,调整消化系统功能,健脾补肺的功能。感谢您的进行咨询,期望我的解释对你有所帮助。
消化科哪家医院能治胃反流烧心,打隔,咳嗽低烧,以有4年多建议你用奥美拉唑同时,加用吗丁啉或莫沙必利或援生力维,另外还可以加用达喜片

3. Huatuo-Llama-Med-Chinese & ChatGLM-Med

基于中文医学知识在LLaMA-7B上进行指令微调。中文医学知识为对中文知识图谱CMeKG经过chatGPT后生成的指令微调样本,在ChatGLM-6B上也进行了微调训练,得到新模型ChatGLM-Med(6B)。微调训练样本总计近8k。

项目地址:https://github.com/SCIR-HI/Huatuo-Llama-Med-Chinese

样本的生成方式prompt没有具体给出,借助chatGPT从结构化知识图谱到微调样本的生成,可以借鉴ChatDoctor和DoctorGLM项目。

医学预训练语言模型

1. BioMedLM (2.7B)

stanford crfm基于GPT-2模型架构,使用PubMed生物医学论文的摘要和正文数据继续预训练,预训练数据有300B Tokens,在MedQA任务上达到了50.3的分数。

项目地址:https://github.com/stanford-crfm/BioMedLM

2. PMC-LLaMA (7B)

在LLaMA模型的基础上,加入4.9M PubmedCentral医学知识相关的学术论文数据,超过75B tokens,对LLaMA继续进行预训练。对比于BioMedLM,二者均是在PubMed上进行预训练,不同在于该项目基于LLaMA模型,同时在医学相关论文筛选有自己的一套逻辑。

论文题目:PMC-LLaMA: Further Finetuning LLaMA on Medical Papers
论文地址:https://arxiv.org/abs/2304.14454
项目地址:https://github.com/chaoyi-wu/PMC-LLaMA


论文对LLaMA-7B分别进行全量参数微调和PEFT微调,相比于原模型,在评测集性能表现提升,表明引入领域数据的预训练是对模型领域能力是有效的,但对比chatGPT仍显不足。

3. BioMedGPT (1.6B)

OpenBioMed: 用于AI驱动生物医学研究的多模态表示学习开源工具包。本项目聚焦于多模态信息,例如药物、蛋白质和单细胞的知识图谱和生物医学文本,以及一系列广泛的应用,包括药物靶标相互作用预测、分子性质预测、细胞类型预测、分子-文本检索、分子-文本生成和药物反应预测等。研究人员可以使用包括BioMedGPT-1.6B和CellLM在内的许多深度学习模型来促进下游任务的开展。本项目提供了易于使用的API和命令,以加速生命科学研究。OpenBioMed: OpenBioMed: 用于AI驱动生物医学研究的多模态表示学习开源工具包。本项目聚焦于多模态信息,例如药物、蛋白质和单细胞的知识图谱和生物医学文本,以及一系列广泛的应用,包括药物靶标相互作用预测、分子性质预测、细胞类型预测、分子-文本检索、分子-文本生成和药物反应预测等。研究人员可以使用包括BioMedGPT-1.6B和CellLM在内的许多深度学习模型来促进下游任务的开展。本项目提供了易于使用的API和命令,以加速生命科学研究。本项目聚焦等本项目了

项目地址: https://github.com/BioFM/OpenBioMed

总结与思考

通过对以上医疗领域大模型的梳理,可以看到领域大模型上的工作主要表现在两个方面:
一是对海量领域数据继续进行生成式语言模型预训练(continue pretrain);
二是在通用大模型的基础上引入领域数据进行指令微调训练(通用大模型底座+领域数据指令微调);

生成式语言模型继续预训练对数据量和计算资源的要求较高,目前大部分项目的工作多是集中在对通用模型进行领域数据指令微调训练。在指令微调训练方面,差异性的工作主要表现在「领域样本数据的生成」(如各种self-instruct生成样本)和「低资源训练」上(如各种PEFT方法进行部分参数的微调)。

医学领域大模型建设是有其必要性的,由于医疗数据较为敏感,多数情况下难以使用外部的云端服务,建设私有医疗大模型并本地化部署有其应用场景。虽然当前类chatGPT平台在医疗问答上已具备相当的能力,但由于使用场景的特殊性,比如院内电子病历的自动化处理、患者诊疗时间线的构建等,医疗行业各家依需要进一步打造完善自己的可本地化部署的领域模型

当前中文医疗领域的公开数据还比较少,依赖chatGPT作为teacher生成的数据存在有偏和不确定性,高质量数据对于模型性能的提升至关重要,有必要在更高层面集聚医疗数据资源,推进规范数据质量的提升。同时能够评估大模型能力的医疗领域的评估集也是必要的,当前多数开源项目的评估还都是在感性层面对生成结果的人工评价,建立统一的评价方式和自动化的评估工具对后续领域大模型的发展亦是很重要的

感谢开源社区对大模型&AI医学的贡献!

参考:
https://mp.weixin.qq.com/s/5q6If6hhMGGWD7mZeRfNLg

同步更新到:AI加油站

———-END———-