【论文阅读笔记】M3Care: Learning with Missing Modalities in Multimodal Healthcare Data

news2024/11/23 13:51:15

本文介绍了一种名为“M³Care”的模型,旨在处理多模态医疗保健数据中的缺失模态问题。这个模型是端到端的,能够补偿病人缺失模态的信息,以执行临床分析。M³Care不是生成原始缺失数据,而是在潜在空间中估计缺失模态的任务相关信息,利用来自具有相似未缺失模态的其他病人的辅助信息。该模型通过任务引导的模态适应性相似性度量来找到相似的病人,并据此进行临床任务。实验表明,M³Care在多种评估指标上超越了现有的基线模型,并且其发现与专家意见和医学知识一致,显示出提供有用见解的潜力。【开放源码】

一.论文概述

  1. 端到端模型设计:M³Care是一个端到端的模型,能够直接处理具有缺失模态的患者数据,补偿这些缺失信息,以执行临床分析。

  2. 任务相关信息的估计:与传统方法不同,M³Care不是直接生成原始缺失数据,而是在潜在空间中估计缺失模态的任务相关信息。这种方法避免了直接处理原始数据的不稳定性和复杂性。

  3. 利用相似患者的辅助信息:M³Care模型通过任务引导的模态适应性相似性度量来识别相似的患者,并利用这些相似患者的未缺失模态数据来估计目标患者的缺失信息。

  4. 临床任务的有效执行:模型能够利用估计出的任务相关信息来有效执行临床任务,如疾病诊断或预后预测。

  5. 实验验证:作者通过在真实世界数据集上的实验,展示了M³Care在各种评估指标上优于现有基线模型的性能,并且其发现与专家意见和医学知识一致,显示出提供有用见解的潜力。

二.模型结构

image-20231207083554870

image-20231207083613696
  • Unimodal Representation Extraction:使用不同的特征抽取模型抽取各自模态特征,图上很清楚,不赘述。

  • Similar Patients Discovery and Information Aggregation:包含如下:

    • task-guided modality-semantic-adaptive similarity metric:使用特殊的核函数方法度量,而不是传统的余弦相似度。

      k ω m (   h i m ,   h j m ) = [ ( 1 − δ m ) k ( ϕ ω m (   h i m ) , ϕ ω m (   h j m ) ) + δ m ] q (   h i m ,   h j m ) k_{\omega_{m}}\left(\mathrm{~h}_{i}^{m}, \mathrm{~h}_{j}^{m}\right)=\left[\left(1-\delta_{m}\right) k\left(\phi_{\omega_{m}}\left(\mathrm{~h}_{i}^{m}\right), \phi_{\omega_{m}}\left(\mathrm{~h}_{j}^{m}\right)\right)+\delta_{m}\right] q\left(\mathrm{~h}_{i}^{m}, \mathrm{~h}_{j}^{m}\right) kωm( him, hjm)=[(1δm)k(ϕωm( him),ϕωm( hjm))+δm]q( him, hjm)

      1. 核函数 k ω m (   h i m ,   h j m ) k_{\omega_{m}}\left(\mathrm{~h}_{i}^{m}, \mathrm{~h}_{j}^{m}\right) kωm( him, hjm):这个函数用于计算两个患者在特定模态 m m m中特征表示的相似度。这里, h i m \mathrm{h}_{i}^{m} him h j m \mathrm{h}_{j}^{m} hjm分别表示第 i i i和第 j j j 个患者在模态 m m m中的特征表示。
      2. 混合项:公式中的第一个部分 ( 1 − δ m ) k ( ϕ ω m (   h i m ) , ϕ ω m (   h j m ) ) \left(1-\delta_{m}\right) k\left(\phi_{\omega_{m}}\left(\mathrm{~h}_{i}^{m}\right), \phi_{\omega_{m}}\left(\mathrm{~h}_{j}^{m}\right)\right) (1δm)k(ϕωm( him),ϕωm( hjm)),其中 ϕ ω m \phi_{\omega_{m}} ϕωm 是一个转换函数,将原始特征空间映射到一个新的空间,以便更好地捕捉相似度。 δ m \delta_{m} δm是一个模态特定的调整参数,它决定了在核函数中保留多少原始特征空间的信息。
      3. 权重项 δ m \delta_{m} δm:这个参数调节着在相似度计算中原始特征空间和转换后空间的相对重要性。它的值在 0 和 1 之间,用于平衡两种不同的相似度计算方式。
      4. 附加项 q (   h i m ,   h j m ) q\left(\mathrm{~h}_{i}^{m}, \mathrm{~h}_{j}^{m}\right) q( him, hjm):这个项用于在相似度计算中添加额外的信息,可能是基于特定模态 m m m 的特定特征或考虑的其他因素
    • 信息聚合:

      Π ~ = ∑ 1 M Π m ⋅ mask ⁡ m ∑ 1 M mask ⁡ m + ϵ Π ~ i , j = { Π ~ i , j  if  Π ~ i , j > Λ 0  if  Π ~ i , j ≤ Λ \begin{array}{c} \tilde{\Pi}=\frac{\sum_{1}^{M} \Pi^{m} \cdot \operatorname{mask}^{m}}{\sum_{1}^{M} \operatorname{mask}^{m}+\epsilon} \\ \tilde{\Pi}_{i, j}=\left\{\begin{array}{cc} \tilde{\Pi}_{i, j} & \text { if } \tilde{\Pi}_{i, j}>\Lambda \\ 0 & \text { if } \tilde{\Pi}_{i, j} \leq \Lambda \end{array}\right. \end{array} Π~=1Mmaskm+ϵ1MΠmmaskmΠ~i,j={Π~i,j0 if Π~i,j>Λ if Π~i,jΛ

      1. Π ~ \tilde{\Pi} Π~:这代表最终聚合后的结果。
      2. ∑ 1 M Π m ⋅ mask ⁡ m \sum_{1}^{M} \Pi^{m} \cdot \operatorname{mask}^{m} 1MΠmmaskm:这里, Π m \Pi^{m} Πm 表示第 m m m 个模态的某种计算结果或特征表示,而 mask ⁡ m \operatorname{mask}^{m} maskm 是一个掩码(mask),用于指示第 m m m个模态是否可用或重要。掩码通常是二进制的(0或1),用于选择性地考虑(或忽略)特定模态。
      3. ∑ 1 M mask ⁡ m + ϵ \sum_{1}^{M} \operatorname{mask}^{m}+\epsilon 1Mmaskm+ϵ:分母是对所有模态的掩码求和,再加上一个小常数 ϵ \epsilon ϵ(通常接近0)以避免除以零的情况。这种求和确保了当某些模态缺失时,计算结果仍然是有意义的。
      4. Π ~ i , j \tilde{\Pi}_{i, j} Π~i,j:这是聚合后的结果矩阵中的一个元素,代表第 i个样本和第 j j j个样本之间的某种度量。
      5. 条件语句:这里的条件语句用于应用一个阈值 Λ \Lambda Λ。如果 Π ~ i , j \tilde{\Pi}_{i, j} Π~i,j的值大于阈值 Λ \Lambda Λ,它将被保留;如果小于或等于 Λ \Lambda Λ,则将该值设置为0。这种方法用于过滤掉那些低于特定重要性水平的元素。

​ 总体来说,这个公式描述了一个两步过程:首先是结合多个模态的信息,然后通过应用阈值来过滤和精细化结果。目标是通过合并来自相似患者的辅助信息来推断模态缺失样本。因此,为了聚合来自相似的信息,将一批患者的表示表示为每个模态中的一个图,相似度矩阵 Π ~ \tilde{\Pi} Π~作为图的邻接矩阵(即,然后使用图卷积层(GCN),利用结构信息增强表示学习。

  • Adaptive Modality Imputation:
  • Multimodal Interaction Capture:这部分没有什么好说,就是常规Transformer融合多模态特征。

三.数据集

Ocular Disease Intelligent Recognition (ODIR) Dataset and Ophthalmic Vitrectomy
(OV) Dataset 眼病智能识别(ODIR)数据集和眼科玻璃体切除术(OV)数据集

四 .实验结果

image-20231207093107412 image-20231207093320606

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

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

相关文章

【知识积累】深度度量学习综述

原文指路:https://hav4ik.github.io/articles/deep-metric-learning-survey Problem Setting of Supervised Metric Learning 深度度量学习是一组旨在衡量数据样本之间相似性的技术。 Contrastive Approaches 对比方法的主要思想是设计一个损失函数,直…

STM32——震动传感器点亮LED灯

震动传感器简单介绍 若产品不震动,模块上的 DO 口输出高电平; 若产品震动,模块上的 DO 口输出低电平,D0-LED绿色指示灯亮。 震动传感器与STM32的接线 编程实现 需求:当震动传感器接收到震动信号时,使用中断…

Ubuntu 22安装PHP环境

参考博客为《练习 0(2/2):Ubuntu 环境下安装PHP(PHP-FPM)》和《原生态Ubuntu部署LAMP环境 PHP8.1MySQLApache》 sudo apt-get install -y php7.4想要安装php7.4,发现安装的是php8.1。 完成如下图&#xf…

构思3年,巨 TM 好用的 localStorage 封装!!!

localStorage 和 sessionStorage 作为一个本地存储方案,所有的操作都是同步的,用法也非常简单,所以深受广大前端的喜爱。 但是由于 localStorage 只能存储字符串,所以存储其他数据就比较麻烦。比如我们要存储一个对象的话可能需要…

【程序人生】还记得当初自己为什么选择计算机?

✏️ 初识计算机: 还记得人生中第一次接触计算机编程是在高中,第一门编程语言是Python(很可惜由于条件限制的原因,当时没能坚持学下去......现在想来有点后悔,没能坚持,唉......)。但是&#xf…

STM32G030C8T6:使用外部晶振配置LED灯闪烁

本专栏记录STM32开发各个功能的详细过程,方便自己后续查看,当然也供正在入门STM32单片机的兄弟们参考; 本小节的目标是,使用STM32G030C8T6单片机,通过STM32CubeMX软件,配置并使用外部8MHz晶振,实…

python:五种算法(PSO、RFO、HHO、WOA、GWO)求解23个测试函数(python代码)

一、五种算法简介 1、粒子群优化算法PSO 2、红狐优化算法RFO 3、哈里斯鹰优化算法HHO 4、鲸鱼优化算法WOA 5、灰狼优化算法GWO 二、5种算法求解23个函数 (1)23个函数简介 参考文献: [1] Yao X, Liu Y, Lin G M. Evolutionary program…

git自动更新功能

确认权限 因为一般Linux系统网页用的www 或 www-data用户和用户组,所以要实现自动来去,首先要在www用户权限下生成ssh密钥,不然没有权限,其次就是,要把用root用户拉去的代码,批量改成www用户 1. 给www权…

Scrapy爬虫学习

Scrapy爬虫学习一 1 scrapy框架1.1 scrapy 是什么1.2 安装scrapy 2 scrapy的使用2.1创建scrapy项目2.2 创建爬虫文件2.3爬虫文件的介绍2.4 运行爬虫文件 3 爬取当当网前十页数据3.1 dang.py:爬虫的主文件3.2 items.py 定义数据结构3.3 pipelines.py 管道3.4 执行命令…

【教学类-06-16】20231213 (按比例抽题+乱序or先加再减后乘)X-Y之间“加法减法乘法+-×混合题”

作品展示: 背景需求: 大三班的“第一高手”对我提供的每一套的题目都只有一种反应: “这个是分合题,太简单了” “乘法,乘法我也会,11的1 22的4 33的9,,44十六……” “都太简单了&#xff0…

7个常见的jmeter压测问题

根据在之前的压测过程碰到的问题,今天稍微总结总结,以后方便自己查找。 一、单台Mac进行压测时候,压测客户端Jmeter启动超过2000个线程,Jmeter报OOM错误,如何解决? 解答:单台Mac配置内存为8G&…

快速上手linux | 一文秒懂Linux各种常用目录命令(上)

🎬 鸽芷咕:个人主页 🔥 个人专栏:《C语言初阶篇》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 一 、命令提示符和命令的基本格式1.1 如何查看主机名称及修改 二、命令基本格式2.1 命令格式示例2.2 参数的作用…

【价值几十万的仿抖音直播电商系统源码共享】

当下,传统的图文电商模式已经走向没落,以抖音为首的直播电商模式备受用户追捧,它具有实时直播和强互动的特点,是传统电商所不具备的优势。而且,当前正是直播电商的红利期,很多主播和品牌商都通过直播电商业…

【LeetCode刷题】-- 163.缺失的区间

163.缺失的区间 class Solution {public List<List<Integer>> findMissingRanges(int[] nums, int lower, int upper) {List<List<Integer>> res new ArrayList<>();for(int num : nums){if(lower < num){res.add(Arrays.asList(lower,num -…

华为OD试题二(文件目录大小、相对开音节、找最小数)

1. 文件目录大小 题目描述&#xff1a; 一个文件目录的数据格式为&#xff1a;目录id&#xff0c;本目录中文件大小&#xff0c;(子目录id 列表)。其中目录id全局唯一&#xff0c;取值范围[1,200]&#xff0c;本目录中文件大小范 围[1,1000]&#xff0c;子目录id列表个数[0,10…

考试的最大困扰度

说在前面 &#x1f388;不知道大家对于算法的学习是一个怎样的心态呢&#xff1f;为了面试还是因为兴趣&#xff1f;不管是出于什么原因&#xff0c;算法学习需要持续保持。 1、题目描述 一位老师正在出一场由 n 道判断题构成的考试&#xff0c;每道题的答案为 true &#xff…

每日一题,杨辉三角

给定一个非负整数 numRows&#xff0c;生成「杨辉三角」的前 numRows 行。 示例 1: 输入: numRows 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] 示例 2: 输入: numRows 1 输出: [[1]]

Java 语言关键字

Java关键字是电脑语言里事先定义的&#xff0c;有特别意义的标识符&#xff0c;有时又叫保留字&#xff0c;还有特别意义的变量。Java的关键字对Java的编译器有特殊的意义&#xff0c;他们用来表示一种数据类型&#xff0c;或者表示程序的结构等&#xff0c;关键字不能用作变量…

自控基础理论篇-品质因数与阻尼系数的关系

1.二阶低通滤波系数的标准形式 &#xff08;a&#xff09;与阻尼系数相关的标准形式 &#xff08;b&#xff09;与品质因数相关的标准形式 比较上式可以分析得到,当A0等于1的时候&#xff0c;阻尼比与品质因素有一个对应关系 2.二阶带通滤波系数的标准形式 &#xff08;a&…

【Java系列】详解多线程(二)——Thread类及常见方法(上篇)

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习Java的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 一…