图像分割模型LViT-- (Language meets Vision Transformer)

news2024/11/16 13:02:17

参考:LViT:语言与视觉Transformer在医学图像分割-CSDN博客

背景

  • 标注成本过高而无法获得足够高质量标记数据
  • 医学文本注释被纳入以弥补图像数据的质量缺陷
  • 半监督学习:引导生成质量提高的伪标签
  • 医学图像中不同区域之间的边界往往是模糊的,边界附近的灰度值差很小,很难提取出高精度的分割边界

贡献

  • 指数伪标签迭代机制(EPI):帮助像素级注意模块(PLAM)----在半监督LViT设置下保持局部图像特征
  • LV (Language-Vision)损失被设计用来直接使用文本信息监督未标记图像的训练
  • 构建了包含x射线和CT图像的三个多模态医学分割数据集(图像+文本)
  • 模型
    • CNN (卷积神经网络):处理输入的图像,提取局部特征。
    • ViT (视觉Transformer):利用Transformer结构,处理从CNN提取的特征,并结合来自文本嵌入的特征。
    • BERT-Embed (BERT嵌入):利用BERT模型对输入的文本进行嵌入,提取语义信息。
  • 如何利用已有的图像-文本信息提高分割性能
    • 使用嵌入层代替文本编码器获得文本特征向量(减少模型中参数的数量)
    • 具有像素级注意模块(PLAM)的混合CNNTransformer结构能够更好地合并文本信息(CNN:局部特征;transformer:全局特征)
  • 如何充分利用文本信息,保证伪标签的质量
    • 伪标签迭代机制(Exponential Pseudo label Iteration mechanism, EPI)
      • 利用标记数据的标签信息和未标记数据的潜在信息
      • EPI间接结合文本信息,以指数移动平均线(EMA)的方式逐步完善伪标签[10]
    • LV (Language-Vision) loss的设计目的是直接利用文本信息来监督未标记医学图像的训练。

模型

双u型结构:u型CNN支路+u型Transformer支路

左面的红方框是Transformer支路,右面的红方框是CNN支路。

  • CNN分支作为信息输入源和预测输出的分割头
  • ViT分支用于图像和文本信息的合并(Transformer处理跨模态信息的能力)
  • u型CNN分支的跳接位置设置一个像素级注意模块(PLAM)----保留图像的局部特征信息

U形CNN分支

  • 每个CNN模块:Conv、BatchNorm(BN)和ReLU激活层
  • Maxpool对图像特征进行下采样(老规矩了) 
  • CNN-ViT交互模块:使用了上采样等方法来对齐来自ViT的特征。重构后的ViT特征通过残差与CNN特征连接,形成CNN-ViT交互特征。
  • 提高局部特征的分割能力:跳接处设计了PLAM,将CNN-ViT交互特征输入到PLAM中,再将交互特征传递到UpCNN模块,逐层向上给出信息。

U形Vit分支

  • 用于合并图像特征和文本特征
  • 第一层DownViT模块接收BERT-Embed输入的文本特征和第一层DownCNN模块输入的图像特征。
  • BERT-Embed的预训练模型是BERT_12_768_12模型,它可以将单个单词转换为768维的单词向量。
  • 跨模态特征合并操作
    • CTBN块还包括Conv层、BatchNorm层和ReLU激活层,用于对齐x_{img}、1和x_{text}的特征维度。
    • ViT由多头自注意组成
    • LN表示归一化层
    • 第2层、第3层和第4层的后续DownViT模块既接收上层DownViT模块的特征,又接收相应层的DownCNN模块的特征

PLAM 

  • 旨在保留图像的局部特征,并进一步融合文本中的语义特征
  • 并行分支:Global Average Pooling (GAP),Global Max Pooling (GMP) 
    • 加法操作:合并具有相似语义的相应通道特征并节省计算
    • 连接操作:更直观地整合特征信息,并有助于保留每个部分的原始特征
  • 使用MLP结构和乘法操作来帮助对齐特征大小
  • PLAM通过增强局部特征来缓解Transformer带来的对全局特征的偏好
  • PLAM采用通道注意和空间注意相结合的方式(我的理解是通道注意力机制:PLAM,空间注意力机制:Transformer)

指数伪标签迭代机制

更新后的伪标签将用于无标签数据的训练,使得无标签数据可以像有标签数据一样为模型提供监督信息。这种方式能够有效利用大量的无标签数据,提高模型的泛化能力和鲁棒性。 

  1. 初始生成

    • 使用有标签数据训练初始模型,生成伪标签。初始模型可以通过图中的Down CNN和Up CNN部分进行训练。
  2. 预测和更新

    • 在每一轮训练中,使用当前模型(例如图中的LViT模型)对无标签数据进行预测,生成新的伪标签。
    • 通过EPI机制更新伪标签,逐步提高其质量。这一过程在图中没有具体表示,但它是数据处理的一部分。
  3. 再训练

    • 使用更新后的伪标签对模型进行再训练。模型结构可以包括图中的Down ViT和Up ViT部分,以及中间的PLAM模块。

LV (Language-Vision) Loss 

  • 结构化的文本信息来形成相应的掩码(对比标签)
  • 计算文本之间的余弦相似度
    • x_{text},p表示伪标签对应的文本特征向量
    • x_{text},c表示对比标签对应的文本特征向量


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

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

相关文章

数据复制的艺术:深拷贝与浅拷贝在JavaScript中的实现方式

前言 📫 大家好,我是南木元元,热爱技术和分享,欢迎大家交流,一起学习进步! 🍅 个人主页:南木元元 目录 赋值和拷贝 浅拷贝与深拷贝区别 浅拷贝的实现方式 1.Object.assign() 2.…

6月来得及!考研数学120分复习规划:660/880/1000/1800怎么刷?

首先,120分是个什么概念? 如果目标120,历年真题就要135以上。这是因为: 1. 习题册里都是历年真题改编,很多题型见过了; 2. 考场发挥有不确定因素,所以需要安全边界。 总体规划 那么&#xff…

yolox-何为混合精度计算AMP?

何为AMP? 全称:Automatic mixed precision自动混合精度。 功能:在神经网络推理过程中,实现针对不同层采用不同的数据精度进行计算,从而实现节省显存和加速训练的目的。 此处提到的不同数据精度包括:32位浮…

SpringBoot搭建OAuth2

背景 前几天自己从零开始的搭建了CAS 服务器,结果差强人意(反正是成功了)。这几天,我躁动的心又开始压抑不住了,没错,我盯上OAuth2了,大佬们都说OAuth2比CAS牛批,我就想知道它有多牛…

FFmpeg编解码的那些事(1)

看了网上很多ffmpeg的编解码的文章和代码,发现有很多文章和代码都过时了,主要还是ffmpeg有很多接口都已经发生变化了。 这里简单说一下,什么是编码和解码。 1.视频编码 对于视频来说,可以理解为多张(rgb或者yuv&…

【SCAU操作系统】实验四实现FCFS、SSTF、电梯LOOK和C-SCAN四种磁盘调度算法python源代码及实验报告参考

需求分析 设计一个程序将模拟实现FCFS(先来先服务)、SSTF(最短寻道时间优先)、电梯LOOK和C-SCAN(循环扫描)四种磁盘调度算法,并通过图形可视化界面动态展示每种算法的调度过程。 程序所能达到…

消费增值的真面目!绿色积分的合理运用!

各位朋友,大家好!我是吴军,来自一家备受瞩目的软件开发企业,担任产品经理一职。今天,我非常荣幸能有机会与大家分享一种在市场上备受瞩目的新型商业模式——消费增值模式。 随着环保和可持续发展理念日益深入人心&…

网络、HTTP、HTTPS、Session、Cookie、UDP、TCP

OSI 七层模型 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 TCP/IP 五层模型 应用层:为用户的应用进程提供网络通信服务(协议:域名系统DNS协议,HTTP协议,SMTP协议)传输层:负…

Gopher的Rust第一课:第一个Rust程序

经过上一章[1]的学习,我想现在你已经成功安装好一个Rust开发环境了,是时候撸起袖子开始写Rust代码了! 程序员这个历史并不算悠久的行当,却有着一个历史悠久的传统,那就是每种编程语言都将一个名为“hello, world”的示…

【渗透测试】|基于dvwa的CSRF初级,中级,高级

一、渗透测试 二、渗透测试过程中遇到的问题和解决 在初级csrf中&#xff0c;想要通过伪造一个404页面&#xff0c;达到修改密码的效果 伪造404页面的html代码如下&#xff1a; <html> <head> </head> <body> <img src"http://192.xx.xx.xx/…

python PyQt5 数字时钟程序

效果图&#xff1a; 概述 本文档将指导您如何使用Python的PyQt5库创建一个简单的时钟程序。该程序将显示当前时间&#xff0c;并具有以下特性&#xff1a; 始终在最前台显示。窗口可拖动。鼠标右键点击窗口可弹出退出菜单。时间标签具有红色渐变效果。窗口初始化时出现在屏幕…

解析智慧物流园区系统的多方位优势

智慧物流园区系统是基于物联网、大数据、人工智能等先进技术的应用系统&#xff0c;旨在实现物流园区的高效、智能化管理。随着物流行业的快速发展&#xff0c;传统物流园区已经无法满足日益增长的需求。智慧物流园区系统的出现填补了现有物流园区管理的空白&#xff0c;带来了…

Windows11系统安装QEMU虚拟化软件

Windows11系统安装QEMU虚拟化软件 QEMU软件是一个通用的开源机器模拟器和虚拟机。本文档适用于在Windows 11系统平台上安装QEMU软件。 1. 安装准备 1.1 安装平台 Windows 11 1.2. 软件信息 软件名称软件版本安装路径QEMUQEMU-8.2.93D:\qemu 1.3软件下载 QEMU官网官网下…

AI办公自动化:kimi批量新建文件夹

工作任务&#xff1a;批量新建多个文件夹&#xff0c;每个文件夹中的年份不一样 在kimi中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个编写关于录制电脑上的键盘和鼠标操作的Python脚本的任务&#xff0c;具体步骤如下&#xff1a; 打开文件夹&…

【鸟叔的Linux私房菜】2-主机规划与磁盘分区

文章目录 2.1 Linux与硬件的搭配各硬件设备在Linux的文件名使用虚拟机学习 2.2 磁盘分区磁盘连接方式和设备文件名的关系MBR(MS-DOS)与GPT磁盘分区表MBR(MS-DOS)GPT磁盘分区表 启动流程的BIOS与UEFI启动检测程序BIOS搭配MBR/GPT的启动流程UEFI BIOS搭配 GPT启动的流程 Linux安装…

解决SSH客户端远程连接CentOS7虚拟机时加载过慢问题

1、编辑 /etc/ssh/sshd_config 文件&#xff0c;将 useDNS 中的 yes 改为 no &#xff0c;关闭UseDNS加速&#xff1a; vi /etc/ssh/sshd_config2、重启ssh服务: systemctl restart sshd

构建php环境、安装、依赖、nginx配置、ab压力测试命令、添加php-fpm为系统服务

目录 php简介 官网php安装包 选择下载稳定版本 &#xff08;建议使用此版本&#xff0c;文章以此版本为例&#xff09; 安装php解析环境 准备工作 安装依赖 zlib-devel 和 libxml2-devel包。 安装扩展工具库 安装 libmcrypt 安装 mhash 安装mcrypt 安装php 选项含…

【Linux】22. 线程控制

Linux线程控制 POSIX线程库 与线程有关的函数构成了一个完整的系列&#xff0c;绝大多数函数的名字都是以“pthread_”打头的 要使用这些函数库&#xff0c;要通过引入头文<pthread.h> 链接这些线程函数库时要使用编译器命令的“-lpthread”选项 线程创建 pthread_cr…

成都爱尔眼科蔡裕主任解说什么是近视性黄斑病变

近视性黄斑病变&#xff0c;属于黄斑病变的其中一种。 黄斑是眼内一个部位&#xff0c;它位于眼底的后极部&#xff0c;视网膜的中心部&#xff0c;管理着光、形、色。黄斑变性是指由于年龄、遗传、不良环境、慢性光损伤等各种因素的影响&#xff0c;使眼部视网膜处的黄斑发生…

kafka-主题创建(主题操作的命令)

文章目录 1、topic主题操作的命令1.1、创建一个3分区1副本的主题1.1.1、获取 kafka-topics.sh 的帮助信息1.1.2、副本因子设置不能超过集群中broker的数量1.1.3、创建一个3分区1副本的主题1.1.4、查看所有主题1.1.5、查看主题详细描述 1、topic主题操作的命令 kafka发送消息会存…