《Neurocomputing》:DDMedChat: DoRA fine-tuning and DRAGIN RAG based medical chat framework with LLMs
编辑推荐:
摘要大语言模型(LLMs)在医疗领域展现出了巨大的潜力,尤其是在通过预训练和微调技术来支持复杂任务方面。尽管取得了进步,但仍面临诸如对话准确性低、训练资源利用效率低、知识检索精度不足等挑战。针对这些问题,本文提出了DDMedChat,一种专为中文医疗对话设计的新型框架。该框架
摘要
大语言模型(LLMs)在医疗领域展现出了巨大的潜力,尤其是在通过预训练和微调技术来支持复杂任务方面。尽管取得了进步,但仍面临诸如对话准确性低、训练资源利用效率低、知识检索精度不足等挑战。针对这些问题,本文提出了DDMedChat,一种专为中文医疗对话设计的新型框架。该框架将权分解低秩适应(DoRA)微调与动态检索增强生成(DRAGIN)相结合,以提升数据预处理、模型适配和任务执行在医疗咨询、信息检索和疾病诊断等多个应用中的表现。具体而言,预处理模块基于共享的医疗任务分类体系构建意图对齐的微调和检索数据;DoRA通过量级-方向分解将骨干模型适配到医疗对话中;而DRAGIN则在解码不确定性表明缺乏支持性知识时检索外部证据。在整体医疗对话测试集上,DDMedChat-180k显著优于ChatGLM3-6b,BLEU-4提升107.9%,ROUGE-L提升118.5%;在80k设置下,DoRA相比LoRA将MedDialog-CN的训练时间减少了14%,在回复准确率和检索准确率方面均展现出一致的性能提升。
引言
近年来,以DeepSeek-R1 [9]、LLAMA [34]和ChatGLM [8]为代表的大语言模型(LLMs)在语言生成和推理方面取得了实质性进展。核心突破源于两步技术发展:首先,通过指令微调构建细粒度的任务理解能力;随后,通过基于人类反馈的强化学习(RLHF)[24]实现价值对齐和安全改进。这种"预训练-对齐"方法使大语言模型在开放域对话和复杂推理等场景中展现出类人的语言生成能力。
在临床医学领域,大语言模型的技术演进正在改变传统的医疗决策模式。医疗领域的大模型研究聚焦于构建专业技术体系。模型构建主要涉及从头训练、通用模型微调和提示工程等方法,并通过集成医学知识库来增强性能。大语言模型在文献分析和研究方向预测等任务中展现了潜力[6]、[14]。此外,检索增强生成(RAG)利用外部知识库将医学知识作为上下文信息,以改进内容生成,被认为是解决上述挑战的一个有前景且必要的方案[1]。
然而,当前的医疗大模型仍面临三个核心挑战:
第一,医疗对话框架的回答准确性低。医疗问题通常复杂且专业,涉及大量医学术语和临床知识。现有的医疗对话框架往往难以准确理解用户的意图,导致回答可能偏离实际情况。这种不准确性不仅会影响用户的医疗决策,还可能对其健康带来潜在风险[33]。
第二,现有的医疗大模型训练资源利用效率低。在训练过程中,无论是全参数微调还是部分参数微调都面临资源效率方面的挑战。全参数微调会更新数十亿规模模型中的所有权重,导致极高的计算成本。部分参数微调通过冻结大部分网络来节省内存,但适配器层或低秩分解等方法由于参数更新有限,往往导致梯度冗余。因此,模型需要多次重新训练才能达到稳定的性能水平,从而增加了整体计算成本[26]。
第三,医疗领域的知识检索精度不足。医学知识更新迅速且具有高度的时效性。然而,当前知识检索技术在医疗领域尚未得到深入研究,难以有效将最新的医学知识和临床经验融入医疗大模型中。这限制了医疗大模型在提供医疗服务时的准确性和可靠性,并影响了其在医疗领域的广泛应用[10]。
针对上述问题,本文提出了DDMedChat(基于DoRA和DRAGIN的医疗对话框架),这是一个协调权分解低秩适应(DoRA)[21]微调与动态检索增强生成(DRAGIN)[31]的中文医疗对话框架。它使通用大语言模型能够在有限的微调资源下更好地学习医疗交互模式,并在内部知识不足时使用外部证据。DDMedChat将数据预处理、基于DoRA的适配和基于DRAGIN的检索连接在一个响应流程中。预处理模块在同一医疗任务分类体系下组织微调和检索数据。DoRA模块将骨干模型适配到医疗对话中,DRAGIN模块在需要时于解码过程中检索外部证据。研究结果指向一个实用模式:检索提供了大部分的事实性增益,而DoRA帮助模型更有效地利用检索到的证据。在医疗对话评估中,DDMedChat-180k在BLEU-4上比ChatGLM3-6b提升了107.9%,在ROUGE-L上提升了118.5%。微调对比表明,80k样本是一个实用的截止点。在检索实验中,BGE-large在所测试的嵌入模型中表现最佳,DRAGIN通过触发生成不确定性时的证据查找来提高了精确度和覆盖率。
本文的主要贡献如下:
- (1)
我们提出了DDMedChat,一个在单个响应流程中集成DoRA微调和DRAGIN检索的中文医疗对话框架。DoRA将骨干模型适配到医疗对话中,而DRAGIN在解码过程中监控不确定性,并在需要额外知识时检索外部证据。适配后的模型随后利用检索到的证据完成回复。
- (2)
我们为微调和检索数据开发了意图对齐的预处理方法。该方法掩蔽识别信息,对对话样本进行质量和内部冲突评分,将保留的样本分配到医疗意图类别中,并使用医学实体和关系模板对检索文档进行结构化。两个数据分支使用相同的医疗任务分类体系,这使微调和检索都聚焦于相同类型的医疗问题。
- (3)
我们构建了DDMedChat-180k,一个从公开医学语料库中精选的中文医疗对话数据集。该数据集包含通过提出的预处理方法保留的对话样本,以及医疗意图标签和监督微调的标准格式。30k和80k子集是从相同的180k语料库中使用相同的筛选和格式化规则派生而来的。
章节摘要
相关工作
与DDMedChat相关的研究涉及三个相互关联的领域:通用和医疗专用大语言模型、面向医疗任务的参数高效微调,以及检索增强的医疗生成。我们从这些领域的贡献以及面向基于证据的中文医疗对话仍存在的技术差距两个方面进行考察。
DDMedChat方法
为了应对上述耦合的技术差距,我们提出了DDMedChat,一个结合基于DoRA的领域适配与基于DRAGIN的动态检索的医疗对话框架。图1展示了整体框架及其数据预处理、模型适配、检索和回复生成模块之间的连接关系。
该方法包含四个面向中文医疗对话生成的相互连接模块,以基于外部知识为支撑:(1) 数据预处理模块使用共享的医疗
实验环境
本文的实验在一台配备Intel(R) Xeon(R) Silver 4108 CPU @ 1.80 GHz、NVIDIA RTX A6000 48 GB * 4显卡和128 GB内存的设备上完成。除另有说明外,LoRA、RSLoRA和DoRA使用相同的微调配置:学习率,dropout 0.1,3个训练周期,每设备批大小4,梯度累积步数8,最大序列长度1024,预热比例0.03,随机种子42。
评估指标
EM、F1、BLEU-1、BLEU-4 [25]、ROUGE-1、ROUGE-2、ROUGE-L [18]是
局限性与未来工作
实验结果表明,DDMedChat框架在中文医疗对话任务中取得了一些成功。然而,仍存在几个局限性。
- •
当前框架仅支持中文,这限制了其利用高质量多语言医学数据和生成交叉语言医疗对话的能力。为解决这一问题,有必要引入多语言技术,并利用国际疾病分类系统(如ICD-11)来构建疾病术语之间的映射
结论
本文提出了面向中文医疗场景的DDMedChat框架。
DDMedChat将意图对齐的数据预处理、参数高效的医疗适配和不确定性触发的检索结合在同一个中文医疗对话框架中。这种设计有助于适配后的骨干模型更有效地利用外部医学证据,在匹配的微调设置下减少了训练时间,并产生了出色的对话性能。实验还表明,DoRA提供了
CRediT作者贡献声明
王六玄:写作 – 审稿与编辑、方法论、数据管理、概念构思。屈冠华:写作 – 初稿、方法论、调查研究、数据管理。余东进:验证、监督指导。吴晨铭:写作 – 审稿与编辑、软件。
利益冲突声明
作者声明他们不存在已知的财务利益关系或可能影响本论文所报告工作的个人关系。
致谢
本研究得到了浙江省重点研发计划(项目编号:2025C01129和2023C03200)、浙江省自然科学基金(项目编号:LY23F020016和LZ25F020011)以及国家自然科学基金(项目编号:62372145)的资助。
王六玄于2009年获得哈尔滨工业大学学士学位,2011年获得硕士学位,2016年获得加拿大卡尔顿大学博士学位。现为杭州电子科技大学副教授,杭州电子科技大学滨建研究院副院长。研究方向为智能软件工程、大数据与人工智能、大语言模型。中国计算机学会(CCF)和ACM会员。
王六玄|屈冠华|余东进|吴晨铭