MedCLIP:CLIP + 医学语义匹配策略,解决模型误将不同患者同病症视为不相关

news2024/10/6 6:55:19

MedCLIP:CLIP + 医学语义匹配策略,解决模型误将不同患者同病症视为不相关

    • 提出背景
    • 流程图
    • 解法拆解
      • 子解法1:知识提取
      • 子解法2:视觉和文本编码器
      • 子解法3:语义匹配损失

 


提出背景

论文:https://arxiv.org/pdf/2210.10163v1

代码:https://github.com/RyanWangZf/MedCLIP

现有的视觉-文本对比学习,如CLIP的目标是匹配配对的图像和标题嵌入,同时将其他嵌入推开,这改善了表示的可转移性并支持零样本预测。

然而,医学图像-文本数据集的数量远低于互联网上的普通图像和标题。

此外,以前的方法遇到了许多假阴性,即来自不同患者的图像和报告可能具有相同的语义,但错误地被视为阴性。

医生们使用X光图来诊断肺炎。

现在,我们有两张X光图,每张都显示了肺炎的特征,但这两张X光图来自不同的患者。

在使用CLIP这样的传统对比学习模型时,这种模型会试图找出图像和相对应的文本(比如诊断报告)之间的匹配关系。

但如果这些图像和文本来自不同的数据集(比如不同的患者),即使它们显示的是相同的病症(如肺炎),模型也会认为它们是不相关的。

这就是所谓的“假阴性”——实际上它们是相关的,因为都显示了肺炎,但模型错误地将它们归类为不相关。

这样的错误会影响模型的判断效果,使得模型在实际应用中的准确性和有用性下降。

因此,医学领域在使用这种模型时需要特别小心,以确保不会因为这种假阴性错误而错过正确的诊断信息。

我们用基于医学知识的语义匹配损失替换InfoNCE损失,以消除对比学习中的假阴性。

此外,我们为多模态对比学习解耦图像和文本,从而以低成本将可用训练数据扩展到组合量级。

目前在医学图像分析领域存在两个主要问题:

  1. 可用数据有限:许多医学图像数据集只提供了疾病的标签(比如“肺炎”),而没有提供详细的诊断报告。

    因为有些研究方法需要同时使用图像和对应的详细文本报告,所以如果只有图像没有文本,或者只有文本没有图像,这些数据就不能被这些方法使用。

  • 解耦图像和文本:MedCLIP方法不需要每个图像都必须有对应的文本报告,反之亦然。

    这样就可以使用更多原本因为不是成对的而无法使用的图像和文本数据,大大增加了可以用于训练的数据量。

  • 基于医学知识的多模态学习:这个方法通过利用医学知识,而不是单纯增加数据量,来提升模型对医学图像和文本的理解能力。

MedCLIP 方法通过一种创新的方式,使得我们可以使用更多以前无法使用的数据,同时减少了假阴性错误判断的情况,从而提高了医学图像分析的准确性和效率。

流程图

在这里插入图片描述

这张图展示了MedCLIP模型的工作流程。

MedCLIP是一个用于处理医学图像和文本数据的对比学习系统。下面是该图描述的各个步骤:

  1. 实体提取

    • 从医学文本中提取关键实体(如图中示例文本“Small, nodular opacity in the right upper lobe”中提取了"Lung Lesion"和"Lung Opacity"作为关键词)。
    • 这些实体用于进一步分析和构建知识库。
  2. 目标构建与知识提取

    • 使用提取的实体构建目标,即知识提取器,它将帮助识别和关联图像和文本数据集中的相关信息。
  3. 医学图像与标签

    • 同时,系统从医学图像数据集中采样一批图像(图中的示例包括标记为“Normal: 0”和“Pneumonia: 1”的图像)。
  4. 编码器与嵌入提取

    • 文本编码器和图像编码器分别处理文本数据和图像数据,将它们转化为嵌入(即数学表达形式),便于机器处理。
  5. 语义相似性矩阵的构建

    • 根据提取的文本实体和图像标签构建一个语义相似性矩阵,该矩阵衡量不同医学实体之间的相似性。
  6. 语义匹配损失计算

    • 利用预测的相似性矩阵计算语义匹配损失,以优化模型的性能。这涉及比较实际的相似性(从知识提取器得出)和模型预测的相似性。

这个工作流程旨在通过构建和利用语义相似性矩阵,使得MedCLIP能够灵活地配对任意采样的图像和文本,无论它们是否原本是配对的。

 

解法拆解

MedCLIP由以下几个部分组成:

(1)构建语义相似性矩阵的知识提取;

(2)提取嵌入的视觉和文本编码器;

(3)训练整个模型的语义匹配损失。

子解法1:知识提取

MedCLIP利用知识提取组件构建语义相似性矩阵。

  • 之所以使用知识提取,是因为需要从大量的非配对数据中提取有用信息,这有助于处理医学领域中数据配对困难的问题。

子解法2:视觉和文本编码器

MedCLIP包括一个视觉编码器和一个文本编码器,用于提取图像和文本的嵌入。

  • 之所以使用视觉和文本编码器,是因为在对比学习中,精确的嵌入向量是必需的,它们能够有效地表示视觉和文本数据的特征。

子解法3:语义匹配损失

MedCLIP通过语义匹配损失来训练整个模型,优化模型对医学图像和文本的匹配准确性。

  • 之所以使用语义匹配损失,是因为它可以直接针对医学语义相似性进行优化,这对于提高模型在实际医学应用中的性能至关重要。

这些子解法构成了解决问题的逻辑链条,每个子解法都针对特定的特征或问题提供了解决方案。

例如,在解决数据非配对的问题时,知识提取和语义匹配损失相结合,能够充分利用现有的医学图像和文本数据,无论它们是否配对。

这种方法不仅提高了数据的利用率,也增强了模型的适应性和准确性。

MedCLIP 的目标是利用医学专业知识提高 CLIP 模型在医学领域的适用性和准确性,特别是在处理医学图像和相关文本数据时,如X光图和病历报告。这使得 MedCLIP 特别适用于如自动病理检测、医学教育和临床决策支持等任务。

MedCLIP 的架构和方法同样适用于处理眼底数据,如光学相干断层扫描(OCT)和眼底照相(fundus images)。

MedCLIP的输入主要包括两部分:医学图像和相关的医学文本(诊断报告、治疗方案)。

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

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

相关文章

【SkiaSharp绘图15】SKPath属性详解:边界、填充、凹凸、类型判断、坐标、路径类型

文章目录 SKPath 构造函数SKPath 属性Bounds 边界(宽边界)TightBounds紧边界FillType填充方式IsConcave 是否凹/ IsConvex 是否凸IsEmpty是否为空IsLine是否为线段IsRect是否为矩形IsOval是否为椭圆或圆IsRoundRect是否为圆角矩形Item[] 获取路径的坐标LastPoint最后点的坐标Po…

JavaScript——while类型

目录 任务描述 相关知识 while类型 编程要求 任务描述 质数的定义如下:大于1的自然数,且除了1和本身外没有别的因数。如2、3、5、7。 本关任务:利用循环结构求质数的和。 相关知识 在选择结构中,条件会被测试一次&#xff…

第一百四十三节 Java数据类型教程 - Java Boolean包装类

Java数据类型教程 - Java Boolean包装类 布尔类的对象包装一个布尔值。 Boolean.TRUE和Boolean.FALSE是布尔类型的两个常量,用于表示布尔值true和false值。 我们可以使用构造函数或valueOf()工厂方法创建一个布尔对象。 当解析字符串时,此类将处理“t…

复现centernet时,报错RuntimeError: CUDA error: out of memory

运行 python test.py ctdet --dataset coco --exp_id coco_dla --load_model /root/CenterNet/exp/ctdet/coco_dla/model_last.pth --gpus 0 --test_scales 1 报错下面: RuntimeError: CUDA error: out of memory明明显存是够用的 解决办法: 找到自己…

RK3568平台(opencv篇)ubuntu18.04上安装opencv环境

一.什么是 OpenCV-Python OpenCV-Python 是一个 Python 绑定库,旨在解决计算机视觉问题。   Python 是一种由 Guido van Rossum 开发的通用编程语言,它很快就变得非常流行,主要是 因为它的简单性和代码可读性。它使程序员能够用更少的代码行…

LVS-DR负载均衡

LVS-DR负载均衡 LVS—DR工作模式 原理 客户端访问调度器的VIP地址,在路由器上应该设置VIP跟调度器的一对一的映射关系,调度器根据调度算法将该请求“调度“到后端真实服务器,真实服务器处理完毕后直接将处理后的应答报文发送给路由器&#xf…

[Redis]哨兵机制

哨兵机制概念 在传统主从复制机制中,会存在一些问题: 1. 主节点发生故障时,进行主备切换的过程是复杂的,需要人工参与,导致故障恢复时间无法保障。 2. 主节点可以将读压力分散出去,但写压力/存储压力是无法…

二、基础—常用数据结构:列表、元祖、集合、字典、函数等(爬虫及数据可视化)

二、基础—常用数据结构:列表、元祖、集合、字典、函数等(爬虫及数据可视化) 1,字符串2,最常用的是列表(重点掌握)3,元组4,字典(重要)5&#xff0…

卫星IoT产品发展前景

卫星IoT产品发展前景 一、概述 卫星IoT产品是指利用卫星通信技术实现物联网设备互联互通的解决方案。随着卫星互联网技术的快速发展,卫星IoT产品正逐渐成为解决偏远地区、海洋、航空等场景下物联网连接问题的重要手段。 二、性能特点 广泛覆盖: 卫星…

搜维尔科技:如何使用 SenseGlove Nova 加速手部运动功能的恢复

District XR 的VR 培训 5 年多来,District XR 一直在为最大的工业公司创建 VR 和 AR 项目。 客户:District XR 客户代表:尼古拉沃尔科夫 他的角色:District XR 首席执行官 面临解决的挑战 该公司正在寻找一种方法来加速身体伤…

k8s离线安装安装skywalking9.4

目录 概述资源下载Skywalking功能介绍成果速览实践rbacoapoap-svcuiui-svc 结束 概述 k8s 离线安装安装 skywalking9.4 版本,环境:k8s版本为:1.27.x 、spring boot 2.7.x spring cloud :2021.0.5 、spring.cloud.alibab&#xff1…

搜维尔科技:【研究】Scalefit人体工程学测量系统为预防肌肉骨骼疾病提供生物力学分析

与工作相关的肌肉骨骼疾病(MSE)是工作生活中的一个持续的伴侣。总部位于科隆的Scaleit公司生产的移动生物力学测量系统Industrial Athlete有助于在工作场所立即发现疾病,伤害和损伤的原因。 Scalefit是一个跨学科网络的一部分,在德国科隆体育大学和职业…

Linux手动安装JDK1.8

1、下载要安装的jdk安装包文件 官网下载地址:https://www.oracle.com/cn/java/technologies/downloads/ 2、上传jdk安装包至要安装服务器 3、在要安装jdk位置使用命令解压安装包 安装路径: /usr/local/java 解压安装包,解压命令 tar -zxvf /install…

2024攻防演练:亚信安全新一代WAF,关键时刻守护先锋

实网攻防 网络安全如同一面坚固的盾牌,保护着我们的信息资产免受无孔不入的威胁。而其中,WAF就像网络安全的守门员,关键时刻挺身而出,为您的企业筑起一道坚实的防线。 攻防不对等 防守方实时应答压力山大 在攻防对抗中&#xf…

字符设备驱动程序

简单做个模板框架 字符设备开发流程 确定设备号dev_t,动态分配 alloc_chrdev_region() 或静态分配 register_chrdev_region()定义file_opeartion 结构体*fops *,在结构体成员中实现对应的 *open()、read()*等函数。cdev_init() 将 fops 与 cdev 绑定&…

如何在 Selenium Python 中解决验证码 | 2024 完整指南

由于在进行网络自动化时遇到验证码是让许多人感到不知所措的问题。这些验证码专为区分人类用户和自动化脚本而设计,对于使用Selenium进行网络爬虫或自动化任务而言,无疑是一个巨大的挑战。2024年的完全指南将为您提供全面的解决方案,帮助您高…

Mac本地部署大模型-单机运行

前些天在一台linux服务器(8核,32G内存,无显卡)使用ollama运行阿里通义千问Qwen1.5和Qwen2.0低参数版本大模型,Qwen2-1.5B可以运行,但是推理速度有些慢。 一直还没有尝试在macbook上运行测试大模型&#xf…

ARIES,数据恢复算法,万变不离其宗...

今天来聊两个问题: 1. 如果缓冲池(buffer pool)满了,哪些数据页(page)要刷盘,哪些数据页不刷盘? 2. 数据库崩了,怎么利用检查点(checkpoint)与预写…

MATLAB环境下4种噪声生成

生成噪声包括: 1)粉红色(闪烁)噪声-功率谱密度斜率-3 dB/oct。, - 10db /dec 2)红色(布朗)噪声-功率谱密度斜率-6 dB/oct。, - 20db /dec 3)蓝色噪声-功率谱密度斜率3 dB/oct。, 10db /dec 4)紫色(紫色)噪声-功率谱密度斜率 6db /oct。&…