零样本带解释性的医学大模型

news2024/11/17 7:41:14

带解释性的医学大模型

    • 提出背景
      • 解法拆解
      • 方法的原因
      • 对比以前解法
    • 零样本带解释性的医学大模型
      • 如何使用CLIP模型和ChatGPT来进行零样本医学图像分类
      • 用特定提示查询ChatGPT所生成的医学视觉特征描述
      • 相似性得分在不同症状上的可视化,用于解释模型的预测
      • 注意力图的可视化
      • 对比使用设计的提示和基线提示时的注意力图
    • 关键点
      • 为ChatGPT选择和设计提示的细节
      • CLIP模型的视觉和文本编码器处理医学图像的方式
      • 多模态处理能力
      • 注意力机制
      • 特征激活与识别
      • 决策过程的解释性
      • 解释模型输出
      • 模型调整与优化

 


论文:https://arxiv.org/pdf/2307.01981.pdf

提出背景

  • 问题背景:在现实世界场景中,零样本医学图像分类是一个关键过程,特别是在可能疾病种类繁多、大规模标注数据有限的情况下。

    这涉及到计算查询医学图像与可能的疾病类别之间的相似性分数,以确定诊断结果。

  • 以前的解法:利用如CLIP这样的预训练视觉-语言模型(VLMs)在零样本自然图像识别中已展现出了卓越的性能,并且在医学应用中显示出潜力。

    然而,一个既有希望的性能又能提供解释性的零样本医学图像识别框架还在开发中,天将降于我。

解法拆解

  • 解法:提出了一个基于CLIP的零样本医学图像分类框架,并辅以ChatGPT进行解释性诊断,模拟人类专家执行的诊断过程。
    • 特征1:利用大型语言模型(LLMs),如ChatGPT,通过疾病类别名称自动生成额外的线索和知识(例如疾病症状或描述),而不仅仅是单一的类别名称,以帮助CLIP提供更准确和可解释的诊断。
    • 特征2:设计特定的提示,以提高ChatGPT生成描述视觉医学特征文本的质量。

方法的原因

  • 之所以使用该解法:是因为在零样本医学图像诊断场景中,存在大量未标注的数据和多样的疾病类别,这使得传统的基于大量标注数据的方法难以应用。
    • 之所以使用特征1(自动生成额外线索和知识):是因为仅通过图像和疾病类别的名称,难以达到高准确度和高解释性的诊断结果。额外的疾病相关信息能够提供更全面的上下文,以辅助诊断。
    • 之所以使用特征2(设计特定的提示):是为了提升生成文本的质量,使其更贴合医学图像的特点,从而提升诊断的准确性和解释性。

对比以前解法

对比当前提出的解决方案与以往的方法,当前解决方案的主要改进点可以总结如下:

1. 引入解释性:

  • 以前的解法:虽然以往的方法,特别是基于CLIP等预训练视觉-语言模型的零样本分类技术,在准确性上已经取得了显著进展,但这些方法往往缺乏足够的解释性。这意味着,尽管模型能够识别图像中的疾病,但它们难以提供关于其决策过程的透明度或解释,这在医学领域是非常重要的。
  • 现在的解法:通过整合ChatGPT来自动生成关于疾病的额外线索和知识,本文提出的方法不仅关注于提升诊断的准确性,还强调了解释性。这种方式模拟了医生在做出诊断决策时的思考过程,提供了一个更加透明和可解释的诊断框架。

2. 自动化生成额外线索和知识:

  • 以前的解法:以往的零样本诊断方法主要依赖于图像本身和有限的类别标签信息,这在处理复杂的医学图像时可能不足以提供全面的诊断。
  • 现在的解法:通过利用大型语言模型(如ChatGPT),当前解决方案能够自动化地生成与特定疾病相关的额外线索和知识,如症状描述、可能的并发症等。这为CLIP提供了更丰富的上下文信息,有助于提高模型在零样本诊断任务中的性能。

3. 提升文本描述的质量:

  • 以前的解法:在早期方法中,文本描述通常限于简单的疾病名称或者是直接从训练集中抽取的标签,这限制了模型理解和识别图像的能力。
  • 现在的解法:本文提出的框架通过设计特定的提示来增强ChatGPT生成的文本描述质量,使之能够更准确地反映出医学图像的视觉特征。这样的高质量文本描述不仅有助于模型更好地理解图像内容,还能提升最终诊断的准确率和解释性。

4. 训练自由的零样本诊断流程:

  • 以前的解法:传统方法往往需要大量的标注数据来训练模型,这在医学领域是一个重大挑战,因为高质量的医学图像标注既昂贵又耗时。
  • 现在的解法:本文提出的方法不需要额外的训练过程,即可直接应用于零样本医学图像诊断。这种训练自由的方法大大降低了实施零样本诊断技术的门槛,使其更容易被医疗机构采纳和使用。

总的来说,当前的解决方案通过增强解释性、自动生成额外的疾病相关信息、提升文本描述的质量,并实现一个无需额外训练的零样本诊断流程,在准确性、解释性以及易用性方面对以往的方法进行了显著。

在这里插入图片描述
这张图展示的是一个零样本医学图像分类的可视化比较,对比了两种方法下模型的注意力图(Attention maps)。

注意力图,用于显示模型在处理数据时关注的区域。

在顶部行,你可以看到两个例子:

  • 在左边,一个脑部MRI图像被标记出来,仅用了“Glioblastoma Multiforme”(一种脑肿瘤)作为诊断类别输入到CLIP模型中。

    生成的注意力图显示模型关注的区域不是很明确,可能分散在整个图像上。

  • 在右边,有一个眼底图像,同样地,仅用“Proliferative Retinopathy”(一种眼病)作为输入。

    这里的注意力图也显示出模型关注的区域并不集中。

    在底部行,展示的是本文提出的方法,通过结合ChatGPT生成的病症描述来增强模型的注意力:

  • 在左边的脑部MRI图像中,除了疾病类别,还加入了由ChatGPT提供的额外病症信息,如“Presence of contrast enhancement”(对比度增强的存在)和“Presence of necrosis”(坏死的存在)。

    在结合了这些额外信息后,生成的注意力图显示模型现在更集中地关注在图像的特定区域上,这可能对于诊断该类型的脑肿瘤是关键的。

  • 在右边的眼底图像中,同样地,结合了ChatGPT生成的病症描述,如“Vitreous hemorrhage”(玻璃体出血)和“Neovascularization”(新生血管)。

    加入了这些描述后,注意力图更集中于眼底图像的相关区域,这对于诊断增殖性视网膜病变是重要的。

这张图的主要目的是说明通过将ChatGPT生成的详细病症描述结合到CLIP模型中,可以显著提高模型的注意力集中度,进而可能提高医学图像分类和诊断的准确性。

 
虽然传统的大型模型(如GPT)具有一定程度的解释性,但这种解释性主要体现在模型输出的语言部分,而不足以直接应用于图像数据的解释性。

  1. 专业领域的语境:医学领域的术语和概念非常专业和复杂。

    传统的大型语言模型虽然能够产生解释性文本,但这些解释可能不足以覆盖或准确地反映医学图像中的具体病理特征。

    因此,需要专门设计的方法来确保生成的文本与医学诊断的专业性和准确性相匹配。

  2. 视觉和语言的结合:在零样本医学图像分类任务中,需要模型不仅理解文本描述,还要理解图像内容,并将两者结合起来进行准确的分类。

    传统的语言模型不直接处理图像数据,因此需要与视觉模型(如CLIP)结合,以实现跨模态的理解。

  3. 解释性的具体化:传统的大型语言模型可能能够解释语言任务中的决策,但在图像诊断中,解释需要与特定的视觉标记和生理结构相联系。

    通过加入医学图像中的具体病理特征描述,可以提高诊断的可解释性,使医疗专业人员更容易理解模型的决策过程。

  4. 可靠性和准确性的提升:在医学图像分析中,准确性至关重要。

    通过结合特定的医学知识和病理特征,可以提高模型对于医学图像的理解,从而提高分类和诊断的准确性。

  5. 可操作的解释:医生和医疗专业人员需要的不仅仅是模型能给出分类结果,还需要明白为什么会这样分类。

    提供详细的病理特征描述,可以帮助医疗专业人员理解模型的判断依据,这种操作层面的解释在实际应用中非常有价值。

 


零样本带解释性的医学大模型

面对零样本医学图像分类问题,误区是认为每个类别都需要大量标注样本才能进行有效的分类。

实际上,预训练的模型可以借助其已经学习到的丰富特征表示来弥补样本的不足。

结合VLMs来获取图像的视觉表示,同时利用LLMs生成有关的症状文本描述,并通过相似度计算实现精确的医学图像分类。

特征1: 使用CLIP的视觉编码器获取图像的视觉表示。

  • 使用原因: 视觉编码器能够捕捉图像的关键视觉特征。

特征2: 利用ChatGPT根据设计好的提示生成诊断类别的主要症状描述。

  • 使用原因: 症状描述增加了文本信息,有助于模型理解和识别图像中的医学特征。

特征3: 使用CLIP的文本编码器将症状描述转换为文本表示。

  • 使用原因: 文本编码器将自然语言转换成机器可处理的编码,使之可以与视觉表示相结合进行相似度比较。

特征4: 定义一个评分函数来计算图像-文本对的相似度。

  • 使用原因: 通过量化图像与文本描述的相似性,可以为分类提供依据。

如何使用CLIP模型和ChatGPT来进行零样本医学图像分类

在这里插入图片描述

  1. 文本输入:首先,将医学诊断类别(如"proliferative retinopathy")和设计的提示输入到ChatGPT模型。
  2. ChatGPT输出:ChatGPT根据输入生成与诊断类别相关的主要症状描述列表,如图中的1到m个不同的症状。
  3. 视觉输入:同时,医学图像作为视觉输入,通过CLIP的视觉编码器处理,生成视觉特征表示f。
  4. CLIP文本编码器:生成的症状描述(如图中的neovascularization,vitreous hemorrhage等)通过CLIP的文本编码器转换为文本特征表示g。
  5. 相似性计算:图像的视觉表示f和每个症状描述的文本表示g计算点积,得到一个相似性得分。
  6. 输出:所有相似性得分进行平均,最终得到的得分最高的类别(如图中显示的"No Apparent Retinopathy")被认为是图像的预测诊断类别。

这个方法提供了一个无需训练的框架,可以直接利用预训练的VLM和LLM进行医学图像的诊断。

通过结合图像的视觉特征和文本描述的症状,该方法可以识别出图像所代表的医学类别,从而实现零样本分类。

用特定提示查询ChatGPT所生成的医学视觉特征描述

在这里插入图片描述

这些描述用于帮助区分不同的诊断类别,例如肺炎、多形性胶质母细胞瘤、正常肺、没有明显的视网膜病变和结核病。

每个诊断类别下面都列出了ChatGPT根据文献生成的几个关键视觉特征。

相似性得分在不同症状上的可视化,用于解释模型的预测

在这里插入图片描述
图中的不同颜色条形表示图像与每个症状描述之间的相似度。

通过比较正确类别和CLIP错误推理的类别的相似度,展示了该框架准确性的来源。

注意力图的可视化

在这里插入图片描述
这些注意力图结合了医学图像和ChatGPT生成的文本描述。

它们展示了模型在识别不同病症时关注图像的哪些区域,例如在诊断增生性视网膜病变时关注到了纤维增生、新生血管形成、牵拉性视网膜脱离和玻璃体出血等特征。

对比使用设计的提示和基线提示时的注意力图


可以看到,不同提示生成的注意力焦点有所不同,说明提示设计对于模型关注的区域和诊断有显著影响。

关键点

  • 特征1:使用预训练的视觉-语言模型(如CLIP),利用其强大的图像和文本联合理解能力。
  • 特征2:结合大型语言模型(如ChatGPT)自动生成的文本描述,增加了对未见类别的描述性知识。
  • 特征3:设计特定的提示来优化ChatGPT生成的文本描述,提高其与医学图像相关性和准确性。

为ChatGPT选择和设计提示的细节

  1. 设计原则:设计提示时,首先确保使用医学领域内精确的术语。例如,如果是关于肺炎的提示,我们会使用“渗透”、“结节”等具体术语,而不是笼统的“异常”。

    此外,提示应该引导生成具体可见的病理特征描述,这些描述能够直观反映在图像上。

  2. 优化过程:通过逐步细化提示的语言,我们优化ChatGPT的输出。开始可能是一个简单的提示,如“描述肺炎的X射线图像特点”,然后根据生成的描述的质量,我们可能会添加更多具体性,如“描述细菌性肺炎在X射线图像上的表现”。

  3. 实际例子:在处理肺结核的分类任务时,我们可能会设计这样一个提示:“列出在肺结核患者的胸部X射线图像中可能观察到的特征”。

    ChatGPT可能会响应:“典型的肺尖部阴影和空洞形成”。

CLIP模型的视觉和文本编码器处理医学图像的方式

  1. 视觉编码器:CLIP的视觉编码器采用深度卷积网络,它通过学习大量图像数据,能够从医学图像中提取出代表性的特征,如肺部的阴影区域、肺纹理的变化等。

  2. 文本编码器:文本编码器则将ChatGPT生成的描述转化为与视觉特征相匹配的文本表示。

    它通过语义理解,将“空洞形成”等词汇编码为模型可以与视觉特征对比的形式。

  3. 特征整合:CLIP通过注意力机制,将视觉特征与文本特征相结合。

    例如,如果文本描述提到“肺尖部阴影”,模型的注意力机制会特别关注图像中相应区域的特征,以确保高度的匹配度。

多模态处理能力

图像与文本的融合:在CLIP中,视觉和文本的融合通过一个多模态变换器实现,它允许模型理解文本描述中的医学信息,并与图像中的相应视觉特征相结合。

注意力机制

注意力分配:在处理包含肺结核特征的X射线图像时,模型的注意力分配可能集中在图像的上部区域,因为肺结核往往在肺尖更容易表现出来。

注意力可视化:我们可以通过生成的热图看到,模型在肺尖区域的注意力明显增强,这与医学知识是一致的。

特征激活与识别

特征激活图:特征激活图展示了在识别含有肺结核特征的图像时,哪些卷积层被激活,反映出模型如何识别肺尖阴影和空洞等关键特征。

病理特征的自动标识:模型通过训练学会识别典型的肺结核病理特征,例如通过增强的边缘检测网络来自动标识空洞形成的区域。

决策过程的解释性

解释模型输出

通过将模型的分类决策与生成的文本描述和注意力机制的可视化相结合,我们能够提供一个全面的解释框架。

这种方法允许我们不仅展示模型如何“看到”图像中的特定病理特征,还能解释它为何将这些特征与特定的医学诊断相联系。

  1. 生成文本描述的利用:当ChatGPT生成的文本描述被用作模型分类的一部分时,这些描述本身就提供了关于模型决策过程的直接见解。

    例如,如果模型将一张X射线图像分类为显示肺炎特征,生成的文本可能包括“双肺见散在斑片状阴影”,这直接指向了模型识别的特定病理标记。

  2. 注意力机制的可视化:通过将注意力机制的输出以热图的形式可视化,我们可以展示模型在图像中关注的区域。

    这种可视化直观地证明了模型是如何根据文本描述中的关键词(如“阴影”或“增厚”)来定位图像中的相应区域。

  3. 与医学知识库的结合:将模型的预测与现有的医学知识库相结合,可以进一步增强解释性。

    例如,模型识别的图像特征和病理标记可以与医学数据库中的类似案例进行比较,从而为模型的决策提供额外的验证。

模型调整与优化

  1. 超参数调整:通过调整模型的超参数,如学习率或正则化因子,我们可以改变模型的学习过程和最终的注意力分配。

    这一调整过程需要基于模型在验证集上的表现来进行,以确保找到最优的参数设置,从而提高模型在新图像上的准确性和解释性。

  2. 模型微调:对于具体的医学图像分类任务,模型可能需要针对特定的数据集进行微调。

    这一过程包括在特定医学图像数据集上继续训练模型,以调整其权重,使之更好地适应任务。微调后的模型能够更准确地识别特定病理特征,同时也可能提供更加直观的解释。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1467353.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高级FPGA开发之PCIe IP Core(三)

高级FPGA开发之PCIe IP Core(三) 一、PCIe IP核简介 通过阅读PCIe spec文档,可以看到UltraScale器件Integrated Block For PCI Express解决方案IP核是具备高带宽、高可缩放性和高可靠串行互联的解决方案,适用于UltraScale器件。赛灵思在 UltraScale 架…

Android 相机启动流程笔记

和你一起终身学习,这里是程序员Android 经典好文推荐,通过阅读本文,您将收获以下知识点: 一、Camera 框架介绍: Camera的框架分为Kernel部分和hal部分,其中kernel部分主要有两块: image sensor driver&…

并发锁机制之深入理解synchronized

并发锁机制之深入理解synchronized Synchronized基础知识 i的JVM字节码指令 getstatic i // 获取静态变量i的值 iconst_1 // 将int常量1压入操作数栈 iadd // 自增 i–的JVM字节码指令 getstatic i // 获取静态变量i的值 iconst_1 // 将int常量1压入操作数栈 isub // 自减…

性能优化——canvas 加载海量图

背景 公司的在线设计稿平台的画板列表页开发时由于数据量不足,未能测出关于画板列表页性能问题,在经过用户一段时间的使用后出现了关于初始化卡顿、缩放卡顿等问题,画板列表页采用了vue-konva 原因 关于画板列表为何卡顿有如下几点原因 1、…

2月24日(周六)比赛前瞻:曼联 VS 富勒姆、拜仁 VS 莱比锡

大家好,博主将持续更新胜负14场前瞻,此处每日赛事间歇更新,胃信号每日更新。 精选赛事:曼联 VS 富勒姆 曼联近期状态显著提升,上一轮联赛客场2-1战胜卢顿,连续7场正赛取得6胜1平的成绩,保持不败…

6.网络游戏逆向分析与漏洞攻防-游戏网络架构逆向分析-通过逆向分析确定游戏明文发送数据过程

内容参考于:易道云信息技术研究院VIP课 上一个内容:测试需求与需求拆解 在开始之前要了解一个小知识,在逆向开始之前要很清楚知道要找的东西是什么,大概长什么样子,只有这样才能看到它第一眼发现它,现在我…

Qt+VTK鼠标拾取点生成拉伸闭合三维体

程序示例精选 QtVTK鼠标拾取点生成拉伸闭合三维体 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《QtVTK鼠标拾取点生成拉伸闭合三维体》编写代码,代码整洁,规则&…

ES6内置对象 - Map

Map(Map对象保存键值对,键值均不限制类型) 特点: 有序(Set集合是无序的);键值对(键可以是任意类型);键名不能重复(如果重复,则覆盖&…

从ViT到MAE,transformer架构改造Autoencoder

Vision Transformer (ViT) 论文出处[2010.11929] An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (arxiv.org) 传统的卷积神经网络(CNN)在图像分类、目标检测等任务上表现出色,但其局限性也逐渐显露&#xf…

【大数据】Flink 内存管理(二):JobManager 内存分配(含实际计算案例)

Flink 内存管理(二):JobManager 内存分配 1.分配 Total Process Size2.分配 Total Flink Size3.单独分配 Heap Size4.分配 Total Process Size 和 Heap Size5.分配 Total Flink Size 和 Heap Size JobManager 是 Flink 集群的控制元素。它由三…

virtualenv env_name 使用 virtualenv 创建 python 虚拟环境

为什么要用这个 win7 32 环境下 pycharm 只能用低版本的,比如 2016,2018 此时pycharm 图形界面创建的 虚拟环境版本很低,有些包不兼容,因此用 virtualenv 模块,可以创建 20 版本以上的虚拟环境 virtualenv env_name官方文档 http…

全面解析企业财务报表系列之四:财务报表的真实性和可靠性

全面解析企业财务报表系列之四:财务报表的真实性和可靠性 一、什么是会计方法二、选择会计方法三、会计方法的重要性四、会计报表常用的造假手段五、财务报表经常被遗漏的重要事件六、财务报告造假的资信敏感性七、财务报告审计的重要性八、审计报告 一、什么是会计…

nginx重新编译添加模块或去除不需要的模块

在使用nginx中,我们可能需要对已经安装的nginx进行添加或者删除模块 1、先查看nginx安装了哪一些模块 nginx -V2、来到nginx源码目录,根据如下规则,自行根据需求更改命令 如果要去掉nginx自带的模块,就是用–without做为前缀进…

Stable Diffusion 绘画入门教程(webui)-ControlNet(IP2P)

上篇文章介绍了深度Depth,这篇文章介绍下IP2P(InstructP2P), 通俗理解就是图生图,给原有图加一些效果,比如下图,左边为原图,右边为增加了效果的图: 文章目录 一、选大模型二、写提示词三、基础参…

Siamfc论文中文翻译(详细!)

Fully-Convolutional Siamese Networks for Object Tracking 用于对象跟踪的Siamese网络 说明 建议对照siamfc(2021版)原文阅读,翻译软件翻译出来的效果不好,整体阅读体验不佳,所以我对译文重新进行了整理&#xff0…

5分钟JavaScript快速入门

目录 一.JavaScript基础语法 二.JavaScript的引入方式 三.JavaScript中的数组 四.BOM对象集合 五.DOM对象集合 六.事件监听 使用addEventListener()方法添加事件监听器 使用onX属性直接指定事件处理函数 使用removeEventListener()方法移除事件监听器 一.JavaScript基础…

悄悄话花费的时间(C语言)【二叉树各结点统计求和】

题目描述 给定一个二叉树,每个节点上站着一个人,节点数字表示父节点到该节点传递悄悄话需要花费的时间。 初始时,根节点所在位置的人有一个悄悄话想要传递给其他人,求二叉树所有节点上的人都接收到悄悄话花费的时间。 输入描述 …

element导航菜单el-menu添加搜索功能

element导航菜单-侧栏&#xff0c;自带的功能没有搜索或者模糊查询。 找了找资料 找到一个比较可行的&#xff0c;记录一下&#xff1a; //index.vue的代码 <div style"overflow:auto"><el-menu :default-active"$route.path":default-openeds&…

如何在 Tomcat 中为 Web 应用程序启用和配置缓存?

在Tomcat中为Web应用程序启用和配置缓存通常涉及到对Tomcat的连接器&#xff08;Connector&#xff09;进行配置&#xff0c;以及可能的话&#xff0c;配置Web应用程序本身以支持缓存。 1. 配置Tomcat连接器以启用缓存 Tomcat的连接器可以通过其配置来启用各种…

开源免费的NTFS for mac工具mounty

开源免费的NTFS for mac工具mounty 安装依赖 brew install gromgit/fuse/ntfs-3g-macbrew install --cask macfuse安装mounty 如果已经安装macFUSE和ntfs-3g-mac&#xff0c;可以直接点击下载的dmg安装包&#xff0c;安装升级。第一次启动mounty&#xff0c;你需要接受一系列…