language: zh
tags:
- 文本摘要
- 医疗
library_name: transformers
pipeline_tag: summarization
基于大语言模型的PET报告自动个性化印象生成 📄✍
作者: 谢鑫、Muheon Shin、Ali Pirasteh、Nevein Ibrahim、Zachary Huemann、Sharon M. Castellino、Kara Kelly、John Garrett、胡俊杰、Steve Y. Cho、Tyler J. Bradshaw
📑 模型描述
这是用于PET报告发现摘要的微调版BioBART模型。
查看我们针对PET报告摘要微调的大语言模型(LLMs):
📑 摘要
目的: 验证微调大语言模型能否生成准确、个性化的全身PET报告印象。
材料与方法: 使用教师强制算法在PET报告语料库上训练12个语言模型,以报告发现作为输入,临床印象作为参考。额外输入标记编码解读医师身份,使模型学习医师特异性报告风格。语料库包含2010-2022年间37,370份PET报告。通过30项评估指标与两位核医学医师质量评分的基准测试,选取最匹配指标对应的模型进行专家评估。三位核医学医师根据6个质量维度和整体效用评分(5分制)对模型生成印象和原始印象进行盲审。每位医师审阅12份自身报告和12份他人报告。采用Bootstrap重采样进行统计分析。
结果: 所有评估指标中,领域适配的BARTScore和PEGASUSScore与医师偏好Spearman ρ相关性最高(0.568和0.563)。基于此选择微调PEGASUS模型。当医师审阅自身风格的PEGASUS生成印象时,89%被认为临床可接受,平均效用分4.08/5。个性化印象的整体效用与其他医师口述印象相当(4.03分,P=0.41)。
结论: PEGASUS生成的个性化印象具有临床实用性,有望加速PET报告流程。
阅读全文
🚀 使用方式
finetuned_model = "xtie/BioBART-PET-impression"
tokenizer = AutoTokenizer.from_pretrained(finetuned_model)
model = AutoModelForSeq2SeqLM.from_pretrained(finetuned_model, ignore_mismatched_sizes=True).eval()
findings_info =
"""
检查项目: 全身PET-CT
放射医师: James
发现:
头颈部: xxx 胸部: xxx 腹部/盆腔: xxx 四肢/肌肉骨骼: xxx
检查指征:
60岁男性患者,有xxx病史
"""
inputs = tokenizer(findings_info.replace('\n', ' '),
padding="max_length",
truncation=True,
max_length=1024,
return_tensors="pt")
input_ids = inputs.input_ids.to("cuda")
attention_mask = inputs.attention_mask.to("cuda")
outputs = model.generate(input_ids,
attention_mask=attention_mask,
max_new_tokens=512,
num_beam_groups=1,
num_beams=4,
do_sample=False,
diversity_penalty=0.0,
num_return_sequences=1,
length_penalty=2.0,
no_repeat_ngram_size=3,
early_stopping=True
)
output_str = tokenizer.decode(outputs,
skip_special_tokens=True)
📊 性能指标
详细评估结果参见论文:
- ROUGE-1: 51.8
- ROUGE-2: 29.4
- ROUGE-L: 38.9
- BLEU: 22.5
- BERTScore: 0.737
💡 亮点
- 首个全身PET报告印象自动生成研究
- 微调模型可生成具有临床价值的个性化印象
🖥️ 硬件
模型在NVIDIA A100 GPU上训练
📁 附加资源