今天跟大家分享一下 LLaVA-Med 这个由微软研究院推出的专注于临床放射学报告生成的小型多模态模型。
🚀 快速阅读
LLaVA-Med 是微软推出的小型多模态模型,专为临床放射学报告生成而设计。
- 核心功能:自动生成高质量的放射学报告,特别是针对胸部X光成像。
- 技术原理:通过模块化训练方法,结合单模态预训练、对齐和微调三个阶段,实现图像与文本的有效融合。
LLaVA-Med 是什么

LLaVA-Med 是微软研究院推出的小型多模态模型,专注于临床放射学报告生成,特别是胸部X光(CXR)成像。它是 LLaVA-Med 项目的分支,基于 LLaVA-Med 的基础架构和训练方法,针对放射学领域的特定需求进行了优化。通过模块化训练,结合单模态预训练、对齐和微调三个阶段,LLaVA-Med 能够高效地将图像等非文本模态嵌入到文本空间中,生成准确的放射学报告。
该模型基于697,435对放射学图像与报告数据进行训练,性能卓越,关键指标如 ROUGE-L 和 F1-RadGraph 分别提升了12.1%和10.1%。LLaVA-Med 设计轻量化,仅需单个 V100 GPU 即可运行,训练可在一天内完成,适合临床快速部署。
LLaVA-Med 的主要功能
- 放射学报告生成:根据输入的医学影像生成详细的诊断报告,帮助医生快速准确地记录和传达检查结果。
- 多模态融合:通过适配器机制,将图像等非文本模态嵌入到文本嵌入空间中,生成更准确的报告。
- 高效训练与推理:设计轻量化,仅需单个 V100 GPU 即可完成推理,训练可在一天内完成。
- 自动评估与质量控制:配套推出了 CheXprompt 自动评分指标,确保生成的报告符合医学标准。
LLaVA-Med 的技术原理

- 模块化训练方法:训练过程分为三个阶段——单模态预训练、对齐和微调。
- 单模态预训练:首先对文本和图像分别进行预训练,学习各自的特征表示。
- 对齐:通过适配器机制,将图像特征嵌入到文本嵌入空间中,实现图像和文本的对齐。
- 微调:在对齐后的多模态数据上进行微调,进一步优化模型性能。
- 轻量化设计:LLaVA-Med 是小型多模态模型,仅需一个 V100 GPU 即可完成推理,训练可在一天内完成。
- 数据集多样化:模型在包含697,435对放射学图像与报告的数据集上进行训练,数据来自七个不同的来源,确保了模型的泛化能力。
- 性能提升:在关键指标(如 ROUGE-L 和 F1-RadGraph)上,LLaVA-Med 相较于其他同类模型分别提升了12.1%和10.1%。
如何运行 LLaVA-Med
1. 克隆仓库并进入 LLaVA-Med 文件夹
git clone https://github.com/microsoft/LLaVA-Med.git
cd LLaVA-Med
2. 安装依赖
conda create -n llava-med python=3.10 -y
conda activate llava-med
pip install --upgrade pip
pip install -e .
3. 启动控制器
python -m llava.serve.controller --host 0.0.0.0 --port 10000
4. 启动模型工作进程
python -m llava.serve.model_worker --host 0.0.0.0 --controller http://localhost:10000 --port 40000 --worker http://localhost:40000 --model-path microsoft/llava-med-v1.5-mistral-7b --multi-modal
5. 发送测试消息
python -m llava.serve.test_message --model-name llava-med-v1.5-mistral-7b --controller http://localhost:10000
6. 启动 Gradio Web 服务器
python -m llava.serve.gradio_web_server --controller http://localhost:10000
现在你可以打开浏览器并与模型进行交互了。
资源
- GitHub 仓库:https://github.com/microsoft/LLaVA-Med