ModDrop++:一种具有受试者内部协同训练的动态滤波网络,用于具有缺失模态的多发性硬化病变分割

news/2024/11/16 17:56:31/

文章目录

  • ModDrop++: A Dynamic Filter Network with Intra-subject Co-training for Multiple Sclerosis Lesion Segmentation with Missing Modalities
    • 摘要
    • 本文方法
      • Dynamic Head with Filter Scaling
      • Intra-subject Co-training
    • 实验结果

ModDrop++: A Dynamic Filter Network with Intra-subject Co-training for Multiple Sclerosis Lesion Segmentation with Missing Modalities

摘要

多发性硬化症(MS)是一种慢性神经炎症性疾病,多模态MRI通常用于监测MS病变。已经开发了许多自动MS病变分割模型,并且已经达到了人类水平的性能。然而,大多数已建立的方法需要在假设训练期间使用的MRI模态在测试期间也可用,这在临床实践中无法保证。此前,一种称为模态丢弃(ModDrop)的训练策略已被应用于MS病变分割,以在缺失模态的情况下实现最先进的性能。
本文方法

  1. 提出了一种称为ModDrop++的新方法来训练一个适用于任意数量的输入MRI序列的统一网络
  2. ModDrop++在两个关键方面升级了ModDrop的主要思想
  3. 设计了一个即插即用的动态头,并采用了滤波器缩放策略来提高网络的表现力
  4. 设计了一种协同训练策略,以利用全模态之间的主体内关系
    代码地址

本文方法

在这里插入图片描述
ModDrop++中的两个关键升级:即插即用动态头部(左)和主体内联合训练策略(右)。动态头旨在通过学习一组滤波器缩放矩阵来提高网络表现力,以针对每个缺失条件自适应地调整第一卷积层。受试者内部联合训练旨在在同一受试者的完整模态数据和缺失模态数据之间转移知识,即使在缺乏多个模态的情况下,也可以引导动态头部产生相似的特征表示

Dynamic Head with Filter Scaling

在ModDrop中,学习一组模型参数θ来处理所有可能的缺失条件。这可能会限制网络的表现力,并导致针对竞争缺失条件的次优性能。随着总模态数量的增加,这种情况可能会变得严重,因为K模态会导致2K−1缺失
为了提高网络的表现力,我们设计了一个动态头D,以自适应地生成以输入模态的可用性为条件的模型参数。我们使用二进制模态代码m∈RK,其中0/1表示每个模态的不存在/存在
为了减轻由人为归零信道引起的大输入变化,我们使用动态头来生成第一卷积层Fd的参数。假设输入通道和输出通道的数量为u和v,内核大小为p×q。通常,动态卷积层中的所有参数都是基于给定的先验单独生成的。在我们的场景中,要求动态头部学习从模态代码m生成总数量的uvpq+b参数(b个参数用于偏差)。然而,对于动态头部来说,这种映射可能太难学习了,而且我们的网络在初步实验中无法收敛。
为了解决这个问题,我们建议使用滤波器缩放策略更新我们的动态滤波器,该策略最初是为无监督的图像到图像转换而设计的[2]。我们的目标是,内核应该为具有不同退出模式的输入做出不同的贡献。然后,我们的动态头的任务变成学习为每个缺失条件生成滤波器缩放矩阵M∈Ru×v,其中M中的每个元素表示对应核在每个缺失条件下的贡献(缩放)。Fd中的核权重通过标量乘法用相应的比例因子更新。内核偏差以相同的方式更新。这种滤波器缩放策略将可学习参数的数量从uvpq+b减少到uv+b,这保留了我们网络的动态性质,但学习任务要简单得多。

Intra-subject Co-training

在这里插入图片描述

实验结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/102179.html

相关文章

为每个项目单独设置node版本

如果你同时开发多个项目,每个项目所需的node版本又不相同,那么你需要为每个项目单独设置node版本。 node官网上介绍了几种版本管理工具,有:n,nodenv, nvm。 Installing Node.js via Package Manager node…

firewall-cmd防火墙策略

--permanent 永久生效,重启后规则不消失 不执行 firewall-cmd --reload 命令配置不生效 添加单个IP为白名单 firewall-cmd --permanent --zonepublic -add-rich-rulerule family"ipv4" source address"IP" accept 删除白名单 firewall-cmd --…

【华为OD统一考试B卷 | 100分】一种字符串压缩表示的解压(C++ Java JavaScript Python)

文章目录 题目描述输入描述输出描述ACM输入输出模式用例C++javapythonjavaScript题目描述 有一种简易压缩算法:针对全部由小写英文字母组成的字符串,将其中连续超过两个相同字母的部分压缩为连续个数加该字母,其他部分保持原样不变。例如:字符串“aaabbccccd”经过压缩成为…

MySQL-5.7.19版本安装详解

MySQL-5.7.19版本安装详解 1. 软件下载 Mysql5.7地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-winx64.zip 2. 软件安装 2.1 第一步:解压 下载后会得到mysql-5.7.19-winx64的zip 安装文件,先将其解压解压的路径最好不…

【cmake 学习】cmake判断当前所处系统(CMAKE_SYSTEM_NAME)

目录 1、使用内置变量判断 2、使用变量 CMAKE_SYSTEM_NAME 判断 1、使用内置变量判断 cmake 内置了许多用于表示系统的变量,如 UNIX、WIN32、LINUX、IOS等。假设当前系统为Linux系统,那么 LINUX 变量的值为 1。 更多变量可以参考:cmake-v…

一文看懂企业性能测试,指标解析+代码演示,简洁易懂!

目录 前言: 一、性能测试流程简介 二、性能测试指标分析 三、性能测试代码演示 四、性能测试结论 五、总结 前言: 性能测试在企业应用中是非常重要的一环,它可以帮助企业对自身的应用和系统进行全面评估,提高其性能、稳定性…

Seata分布式事务AT、TCC、SAGA、XA模式

Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata将为用户提供了AT、TCC、SAGA和XA事务模式,为用户打造一站式的分布式解决方案。 AT模式 🍮实现原理 阿里SEATA独有模式,通过生成反向SQ…

服务windows服务+辅助角色服务

1、vs2022新建一个windows服务项目 2、修改服务参数 (1)AutoLog: 是否将事件写入到windows的事件日志中。 (2)canpauseandContinue:服务是否可以暂停和继续 3、添加服务安装程序 在界面内右击鼠标 新建一个服务、新建后如下图&a…