[论文笔记•(智能体)]ChatDoctor: A Medical Chat Model Fine-Tuned ona Large Language Model Meta-AI (LLaMA) Usi

[论文笔记•(智能体)]ChatDoctor: A Medical Chat Model Fine-Tuned ona Large Language Model Meta-AI (LLaMA) Using Medical Domain Knowledge

一、一句话总结

提出ChatDoctor ,这是一款基于 Meta 的LLaMA-7B 模型 ,通过10 万条真实医患对话(HealthCareMagic100k 数据集) 微调,并整合在线(如 Wikipedia)与离线(如基于 MedlinePlus 构建的疾病数据库)自主信息检索机制 的医疗对话模型,旨在解决 ChatGPT 等通用大语言模型在医疗知识上的局限性;实验表明,其在精确率、召回率、F1 分数上均优于 ChatGPT,能准确回答猴痘(Mpox)、Daybue 药物等新医疗主题,且在与 iCliniq 医生回答的语义相似度对比中表现更优,但目前仅处于学术研究阶段,暂未用于临床,需额外安全措施验证答案准确性。

二、论文基本信息

单位:美国达拉斯德州大学西南医学中心

会议:arxiv

阅读时间:2025.10.18

论文地址: [2303.14070] ChatDoctor: A Medical Chat Model Fine-Tuned on a Large Language Model Meta-AI (LLaMA) Using Medical Domain Knowledge

**代码:**https://github.com/Kent0n-Li/ChatDoctor.

三、研究的核心问题和背景

  1. 背景:通用大语言模型(LLMs)如 ChatGPT 虽在自然语言处理任务中表现出色,但在医疗领域应用稀缺;此类模型未针对医疗知识专项训练,常输出错误医疗回答,而医疗领域对准确性要求极高,错误答案可能危害患者健康。
  2. 目标:解决通用 LLMs 的医疗知识局限性,构建一款医疗建议准确性更高的专用医疗对话模型 ------ChatDoctor。

五、解决思路

六、框架及具体实现

1. 数据集收集与预处理

数据集名称 来源 规模 用途 预处理措施
HealthCareMagic100k www.healthcaremagic.com 10 万条 模型微调 1. 自动过滤过短、无实用信息的对话;2. 人工过滤含错误回答的内容;3. 匿名化处理(删除医患身份信息);4. LanguageTool 修正语法错误
iCliniq10k www.icliniq.com 1 万条 模型测试 1. 分层随机选取,确保覆盖多医疗专科;2. 严格删除患者标识信息,符合隐私伦理标准
Alpaca 数据集 斯坦福大学项目 5.2 万条 基础对话能力训练 无额外预处理,直接用于模型初始微调,获取通用对话技能

2. 外部知识数据库构建

  • 目的:解决 LLMs "幻觉" 问题(生成错误信息),提升回答可靠性,可处理训练数据中未包含的新医疗术语。

  • 构成

    • 离线数据库:基于 MedlinePlus 构建,包含疾病的

      症状、进一步检测项目、治疗方案(含药物)

      ,示例如下(部分):

      • 阑尾炎(Appendicitis):症状为右侧腹痛、腹胀等;检测含腹部 CT、超声等;治疗为阑尾切除术 + 头孢替坦等抗生素。
      • 过敏性鼻炎(Allergic rhinitis):症状为鼻痒、流涕等;检测为过敏原测试、血常规;治疗为抗组胺药、鼻用激素等。
    • 在线补充源:Wikipedia(可扩展至更可靠的学术期刊等来源)。

      3. 自主检索机制设计

      1. 关键词提取:通过定制提示词(Prompt),从患者问题中提取核心关键词(如 "Mpox 检测" 中的 "Mpox""检测"),用于后续知识检索。
      2. 信息检索:基于关键词,用术语匹配检索系统从外部知识数据库(在线 + 离线)中获取 Top-ranked 信息;因 LLM 存在 token 限制,将文本分段后按关键词命中数排序,选取前 5 段。
      3. 信息整合与回答生成:通过提示词引导模型筛选、总结检索到的信息,最终整合生成精准回答,同时可验证模型基于先验知识生成的回答。

      4. 模型训练细节

      • 基础模型 :采用 Meta 公开的LLaMA-7B 模型(仅解码器结构,基于 1.0 万亿 token 预训练,性能接近 1750 亿参数的 GPT-3)。

      • 训练流程

        1. 第一步:用 Alpaca 的 5.2 万条指令数据微调,使模型掌握基础对话能力。
        2. 第二步:用 HealthCareMagic100k 数据集进一步微调,注入医疗领域知识。
      • 训练参数:使用 6 台 A100 GPU 训练 3 小时,总批次大小(total batch size)192,学习率 2×10⁻⁵,训练轮次(epochs)3,最大序列长度 512 token,预热比例(warmup ratio)0.03,无权重衰减。

七、实验

1. 评价方法

  • 测试基准:以 iCliniq10k 数据集中真实医生的回答作为 "ground truth"(基准答案)。
  • 评价指标 :采用BERTScore(基于预训练 BERT 计算候选回答与基准答案的余弦相似度,可反映语义相似度,更贴合医疗领域需求),核心指标包括精确率(Precision)、召回率(Recall)、F1 分数。

2. 定量结果对比

评价指标 ChatGPT ChatDoctor
精确率 0.837±0.0188 0.8444±0.0185
召回率 0.8445±0.0164 0.8451±0.0157
F1 分数 0.8406±0.0143 0.8446±0.0138
注:所有指标中,ChatDoctor 均高于 ChatGPT,且经配对 t 检验验证差异(p 值未列出但实验已验证显著性)。

标中,ChatDoctor 均高于 ChatGPT,且经配对 t 检验验证差异(p 值未列出但实验已验证显著性)。* | | |

相关推荐
薛定e的猫咪3 天前
【AAAI 2025】基于扩散模型的昂贵多目标贝叶斯优化
论文阅读·人工智能·算法
YMWM_3 天前
论文阅读“SimVLA: A Simple VLA Baseline for Robotic Manipulation“
论文阅读·vla
m0_650108243 天前
VLN-Zero:零样本机器人导航的神经符号视觉语言规划框架
论文阅读·零样本·机器人导航·视觉语言导航·未知环境快速适配·符号化场景图·vlm推理
晓山清4 天前
【论文阅读】Self-supervised Learning of Person-specific Facial Dynamics for APR
论文阅读
张较瘦_4 天前
[论文阅读] AI + 教育 | 不是单纯看视频!软件工程培训的游戏化融合之道
论文阅读·人工智能·软件工程
张较瘦_4 天前
[论文阅读] AI + 软件工程 | 用统计置信度破解AI功能正确性评估难题——SCFC方法详解
论文阅读·人工智能·软件工程
Matrix_115 天前
论文阅读--Agent AI 探索多模态交互的前沿领域(二)
论文阅读·人工智能
万里鹏程转瞬至6 天前
论文简读 | TurboDiffusion: Accelerating Video Diffusion Models by 100–200 Times
论文阅读·深度学习·aigc
大模型任我行6 天前
谷歌:预训练到微调的知识迁移规律
人工智能·语言模型·自然语言处理·论文笔记
Matrix_116 天前
论文阅读--Agent AI 探索多模态交互的前沿领域(一)
论文阅读·人工智能