LungCT-Nodule-GRPO

肺结节CT诊断VLM。基于 Qwen2.5-VL-3B 三阶段后训练(SFT → DPO → GRPO),能看图写放射科诊断报告。

使用方法

from unsloth import FastVisionModel
from peft import PeftModel

model, tokenizer = FastVisionModel.from_pretrained(
    "Qwen/Qwen2.5-VL-3B-Instruct", load_in_4bit=True)
model = PeftModel.from_pretrained(
    model, "huang01080524/lungct-nodule-grpo")

# 上传 CT 多视图图片(轴位/冠位/矢位), 模型输出诊断报告

训练数据

  • LUNA16: 888 例肺结节 CT(质心 + 直径标注)
  • LIDC-IDRI: 854 结节 × 9 维放射科医生标注(纹理/边界/毛刺/分叶/钙化/恶性度等)
  • CT-RATE: 21,382 份真实放射科报告(诊断语言风格参考)

训练管线

阶段 方法 优化目标 数据量
SFT BF16 LoRA + ViT后4层解冻 看图写报告基础能力 1472条(多视图)
DPO 纯文本偏好对齐 诊断语言质量 90对(DeepSeek+CT-RATE)
GRPO 纯文本群体策略优化 诊断全面性+推理链 90 prompts

关键发现: VLM 后训练中 SFT 负责视觉理解, DPO/GRPO 应聚焦语言质量——纯文本训练将 VRAM 从 28GB 降至 10GB, DPO 训练从 30min 降至 75s。

硬件

  • GPU: NVIDIA RTX 5090 32GB
  • 总费用: ~¥200 (AutoDL 按量计费)
  • 训练时间: ~3h SFT + 75s DPO + 1h GRPO

局限

  • 仅支持肺结节场景, 不支持其他胸部病变
  • 恶性评估需结合临床信息, 不可直接用于临床决策
  • 3B 参数量对精确毛刺分级/分叶评分等细节任务能力有限
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for huang01080524/lungct-nodule

Adapter
(239)
this model