研读论文之Image Quality-aware Diagnosis via Meta-knowledge Co-embedding

研读论文之 Image Quality-aware Diagnosis via Meta-knowledge Co-embedding

  • 前言
  • 一、简介
  • 二、主要内容
    • 2.1. 图像退化
    • 2.2. 图像质量感知诊断(IQAD)
    • 2.3. 元知识协同嵌入网络(MKCNet)
  • 三、实现过程
    • 3.1. IQAD问题
    • 3.2. 元知识协同嵌入网络 (MKCNet)
      • 3.2.1功能
      • 3.2.2优化策略
      • 3.2.3 Task Net的设计
      • 3.2.4 Meta Learner的设计
  • 四、优缺点
    • 4.1. 优点
    • 4.2. 缺点

前言

最近看了一篇医学图像论文,来分享下相关的内容。
在这里插入图片描述

一、简介

题目Image Quality-aware Diagnosis via Meta-knowledge Co-embedding
作者单位香港科技大学
论文地址https://arxiv.org/abs/2303.15038
代码地址https://github.com/chehx/MKCNet
发布时间2023 年 3 月 27 日

文章先抛出了一个问题,在进行医学图像处理的时候会出现图像退化问题,因此产生了许多低质量图像,过去的研究中主要工作就是剔除这些低质量图像,而本文提出了一个新的方法,也就是题目的中文翻译基于元知识协同嵌入的图像质量感知诊断,它有效地利用低质量图像及其质量标签,将其加入模型中,助模型识别可能的误差,从而提高诊断的准确性。

二、主要内容

2.1. 图像退化

文章用图1向我们解释了图像退化给诊断结果带来的影响;首先看第一列是正常眼底的高质量(HQ)图像,第二列是患病眼底的HQ图像,第三列是正常眼底的低质量(LQ)图像;
这里会发现明明是正常眼底,但是由于图像退化导致的低质量图像显示的却和患病眼底的图像相似,这很容易给疾病诊断带来很大的误差。

图1 图像退化对眼底(上)和OCTA(下)图像诊断语义的影响。第一行:退化使部分血管结构模糊不清,呈现病变样斑点;第二行:退化导致中央凹无血管区(中央圆形区域)扩大。

因此,过去的实验中往往是选择相对HQ的图像而舍弃相对LQ的图像;然而,LQ图像存在很大的潜在价值,在此基础上本文重新考虑了LQ图像和相应图像质量标签的价值,并提出了图像质量感知诊断(IQAD)问题。

2.2. 图像质量感知诊断(IQAD)

        IQAD旨在使模型能够利用LQ图像,同时学习图像质量标签,以实现准确和稳健的诊断。然而,对于多任务学习框架来说,有效地利用质量标签进行诊断并非易事。具体来说,图像质量评估可以被认为是与疾病诊断“无关”的任务,因为它侧重于捕捉图像退化,而诊断侧重于识别病变。
        为了实现IQAD,本文提出了一种新的元知识协同嵌入网络(MKCNet),它由任务网络(Task Net)和元学习器(Meta Learner)两个子网组成。

2.3. 元知识协同嵌入网络(MKCNet)

它由任务网络(Task Net)和元学习器(Meta Learner)两部分组成。

  • Task Net的主要功能是进行诊断预测。为了充分利用图像质量的信息,它通过知识协同嵌入特征进行预测,这些特征结合了图像质量和疾病诊断的知识。
  • 这些知识协同嵌入特征是通过Meta Learner学习辅助标签嵌入来构建的。具体来说,Meta Learner提供了一种辅助的标签嵌入方法,这种方法可以帮助Task Net进行优化,并鼓励其学习有效的知识协同嵌入特征。
  • 为了确保辅助标签嵌入的有效性和语义性,并避免获取精细的图像质量标签的困难,引入了元学习和联合编码掩码。联合编码掩码通过结合质量标签和诊断标签的方式,从Meta
    Learner的输出中选择一部分作为辅助标签嵌入。

三、实现过程

本节首先介绍了IQAD,并介绍了一个初步的实验,以及所涉及的挑战。然后介绍本文提出的解决方案MKCNet,它有效地解决了这些挑战。

3.1. IQAD问题

问题抽象化:对于给定的图像x,其对应的疾病诊断标签是y_d,而图像质量标签是y_q。IQAD的目标是通过同时利用高质量(HQ)和低质量(LQ)图像以及它们对应的诊断和质量标签,训练一个模型F来实现稳健和准确的诊断。

初步实验:直观地说,将图像质量评估(IQA)视为多任务学习框架中的一个辅助分支似乎是一个简单直接的解决方案。为了探索这种方法,作者对VGG16(Vanilla)进行了一个初步的实验。图2结果显示,利用LQ图像对模型学习是有益的。但出乎意料的是,尽管这些标签包含错误的异常信息并提供额外的有用的诊断信息,但将它们纳入模型中只会略微增强或甚至阻碍诊断性能。这表明,有效地利用质量标签并非易事。
在这里插入图片描述

图 2. LQ 图像和IQA模块的影响。对于Vanilla来说,利用LQ图像是很有用的,但是 IQA 模块只有很小的改进,或者会损害性能。

在多任务学习的背景下,本文认为IQAD的挑战是双重的。

  1. 第一个挑战:图像质量和疾病诊断之间的关系并不直接。通常,为疾病诊断训练的模型会关注损伤区域和解剖结构,而图像质量评估则需要模型捕捉图像退化。这两个任务的焦点不同,因此需要一个专门的设计来使模型能够有效地利用质量信息。为了解决这个问题,作者设计了Task
    Net,它包括一个明确的使用机制,用于利用知识协同嵌入特征进行诊断。
  2. 第二个挑战:二分类或多分类的质量注释的粒度有限,无法捕获图像退化的多样性和程度。这导致了模型缺乏可以指导其的详细信息,并使得建立图像质量如何影响疾病诊断的固定模式变得具有挑战性。此外,确定图像级别的标签准则用于关联质量和诊断是复杂的,而为退化提供像素级信息的标注是昂贵的。由于标签的局限性,即使存在明确的使用机制,模型也可能无法有效地利用质量信息。为了解决这个问题,作者采用了一个元学习范式,其中Meta Learner被训练为提供表示图像质量和疾病诊断标签之间自适应关联的辅助标签嵌入,从而允许模型有效地利用质量信息。

3.2. 元知识协同嵌入网络 (MKCNet)

组成:如图3所示,MKCNet由两个子网组成,分别是Task Net(表示为M_θ)和 Meta Learner(表示为M_Φ)。
在这里插入图片描述

图3. MKCNet 架构

3.2.1功能

给定一个图像x及其对应的图像质量和疾病诊断标签y_q和y_d,Meta Learner 从其输出向量中获取一个辅助标签嵌入y_ω。Task Net对于y_q、y_d和y_ω的预测分别表示为M_θ^q (x)、M_θ^d (x)和M_θ^ω (x)。

3.2.2优化策略

作者采用了两阶段的学习范式来优化MKCNet。第一阶段中,Task Net 使用y_q、y_d和y_ω进行训练。在第二阶段,Meta Learner通过元学习学习提供y_ω,以优化Task Net中的知识协同嵌入特征。这两个阶段在每个训练周期中都是迭代的,这导致了两个子网之间的端到端交互。

3.2.3 Task Net的设计

Task Net先从backbone提取出包含综合语义的特征图F_θ,然后通过三个基于全局注意块(GAB)的分支,分别对应监督信号y_q、y_d和y_ω,用于解耦包含诊断相关信息的特征f_θd,包含图像质量评估相关信息f_θq,包含了疾病诊断和图像质量的联合语义的知识协同嵌入特征f_θ^ω。
此外,作者还设计了元知识辅助块(MAB)来明确探索f_θω在疾病诊断中的潜在帮助。MAB首先通过一个通道式注意块过滤与疾病诊断无关的f_θω通道,然后使用包含诊断相关信息的特征f_θd和滤波后的f_θω进行最后的诊断。
Task Net〖 M〗_θ的目标函数L_θ表示为
在这里插入图片描述

3.2.4 Meta Learner的设计

Meta Learner的目的是提供一个与图像质量和疾病诊断都相关的监督信号y_ω,并通过联合编码掩码和元辅助学习确保了f_θ^ω的语义约束和有效性。
联合编码掩码的过程:
(1)基于疾病诊断标签y_d和图像质量标签y_q,进行联合编码以生成y_(d,q)。这个联合编码实际上是将两者的标签组合在一起,形成一个新的编码,代表了诊断和图像质量的联合信息。
(2)基于这个联合编码,创建一个二进制掩码B_(y_(d,q) )。这个掩码为与y_(d,q)相关的位置分配值1,为其他位置分配值0。例如,考虑y_q和y_d都属于{0,1},并且〖 M〗Φ (x)的长度为 4。在这种情下,联合标签编码将是y(d,q)∈{00,01,10,11} ,而B_(y_(d,q) )将分别为[1,0,0,0], [0,1,0,0], [0,0,1,0]和[0,0,0,1]。
(3)进一步,从〖 M〗Φ (x)中派生出y_ω为:y_ω=B(y_(d,q) )⊙〖 M〗_Φ (x)。
在每个优化步骤中,Meta Learner 使用特定的切片y_ω优化〖 M〗_Φ (x),鼓励在不同的标签组合中构建有区分性的辅助嵌入。这种机制将f_θ^ω与图像质量和疾病诊断的联合语义信息绑定在一起。元辅助学习的任务是优化φ以最小化Task Net M_θ的目标函数L_θ,过程为:
(1)首先,执行一步伪更新,使用学习率α来模拟y_ω对θ的影响,得到θ ̃。在这里插入图片描述

(2)然后,使用第二导数技巧来更新。
(3)为了避免辅助标签嵌入崩溃,通过增加〖 M〗_Φ (x)的熵来引入一个正则化项R(∙) 。
在这里插入图片描述

四、优缺点

4.1. 优点

(1)提出了图像质量感知诊断(IQAD)问题,并通过探讨该问题的价值和挑战性来解决实际应用中的难题。
(2)借鉴了多任务学习框架,提出了Meta-Knowledge Co-Embedding Network (MKCNet),通过有效地利用低质量图像及其质量标签来提高模型的准确性和鲁棒性。
(3)MKCNet包含两个子网络:Task Net和Meta Learner。Task Net构建了一个明确的质量信息利用机制,通过知识嵌入特征增强诊断;而Meta Learner则通过元学习和联合编码屏蔽确保这些特征的有效性和语义约束。
(4)MKCNet在五个数据集上进行了广泛的实验验证,结果表明其具有较高的效果和泛化能力。

4.2. 缺点

(1)复杂度:由于该方法涉及到两个子网络(Task Net 和 Meta Learner)以及元学习技术,这可能会导致模型的复杂度增加,从而对计算资源的需求更高。
(2)质量标签的挑战:本文提到,由于图像质量和疾病诊断之间的目标关系较浅,因此有效利用质量标签来辅助诊断仍然是具有挑战性的。这意味着该方法的成功与否取决于如何设计有效的机制来处理这种相关性。
(3)算法解释性:虽然该方法可以在一定程度上提高模型的准确性,但如何解释模型为何能够做出这样的决策仍然需要进一步研究。这对于医疗应用来说非常重要,因为医生需要了解模型是如何得出诊断结论的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

虽迟但到,Postman终于支持Websocket接口了

01 WebSocket 简介 WebSocket是一种在单个TCP连接上进行全双工通信的协议。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接…

基于8086家具门安全控制系统设计

**单片机设计介绍,基于8086家具门安全控制系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 # 8086家具门安全控制系统设计介绍 8086家具门安全控制系统是一种用于保护家具和保证室内安全的系统。该系统基于808…

1.Netty概述

原生NIO存在的问题(Netty要解决的问题) 虽然JAVA NIO 和 JAVA AIO框架提供了多路复用IO/异步IO的支持,但是并没有提供给上层“信息格式”的良好封装。JAVA NIO 的 API 使用麻烦,需要熟练掌握 ByteBuffer、Channel、Selector等 , 所以用这些API实现一款真正的网络应…

数字化时代,数据仓库是什么?有什么用?

在激烈的市场竞争和全新的数字经济共同作用下,数字化转型成为了大多数企业的共识,也是获取数字经济的最佳方式。在整个数据价值生产链路中,数据仓库的主要作用就是中心化分发,将原始数据与数据价值挖掘活动隔离。 所有的原始数据…

GPT学习笔记

百度的文心一言 阿里的通义千问 通过GPT能力,提升用户体验和产品力 GPT的出现是AI的iPhone时刻。2007年1月9日,第一代iPhone发布,开启移动互联网时代。新一轮的产业革命。 GPT模型发展时间线: Copilot - 副驾驶 应用&#xf…

RT-Thread内核移植

目录 前言一、实验平台简介1.1 W601简介1.2 RT-Thread简介1.3 开发环境 二、W601的SDK移植三、RT-Thread内核移植四、下载验证4.1 串口下载程序4.2 ST-Link下载 前言 本文以正点原子W601开发板为基础,讲解如何移植RT-Thread,本文所用资料见附件资源 一、…

基于ssm车位租赁系统+vue(2023年☆全网唯一)【附开发文档|表结构|万字文档(LW)和搭建文档】

主要功能 前台登录: 注册用户:用户账号、密码、姓名、手机号、身份证号、性别、邮箱 用户: ①首页、车位展示、公告展示、查看更多 ②车位类型、车位介绍、车位收藏、留言、我要租赁、公告、留言板 ③个人中心、车位收藏、车位租赁订单、已到…

C++ AVL树 c语言版本

引入平衡树 假设我们有两个节点:当我们插入第三个节点,就失衡了:此刻我们就要把它平衡一下。 为什么要变平衡 为什么说它失衡了呢,又为什么要把它变平衡? 如图a,假设我们要查找30这个节点就要查3次才能…

Docker网络模式_Docker常用命令_以及Docker如何给运行的镜像内容连接互联网_Docker网络模式原理---Docker工作笔记004

然后我们来看一下docker的网络模式: 这个docker我们先看一下电脑上的网络,有两个,1个是lo是测试用的一个是enp0s3这个是我们以太网地址,然后我们去: 安装docker 安装后我们再去ip address可以看到多出来一个网络是docker0 这里ip地址是172.17.0.1这个是私有地址外部无法访问 这…

pytorch dropout 置零 + 补偿性放缩

一句话概括:(训练过程中)Dropout 操作 随机置零 非置零元素进行后补偿性放缩。以保证dropout前后数据scale不变。 详细解释(来自chatgpt): 在 PyTorch 中,dropout 的操作不仅仅是将某些元素置零。为了确保期望输出在训练和测试…

MES与ERP系统集成的一些探讨

什么是MES软件? 制造执行系统 (MES) 是一种用于控制车间复杂制造操作和数据的软件。MES软件有助于提高生产过程的质量,使制造商能够轻松响应需求和客户偏好的变化。 MES软件有什么作用? 制造执行系统允许企业跟踪、…

SpringCloud-Alibaba之OSS对象存储服务

阿里云的 OSS 服务进行云端的文件存储 用户认证需要上传图片、首页轮播需要上传图片&#xff0c;OSS分布式文件服务系统可以提供服务。 一、依赖 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>aliyun-oss-spring-boot-starter</…

Java实现驼峰命名的字符串转化

目录 一、场景描述 二、代码示例 1、下划线大写方式命名的字符串转换为驼峰式 2、驼峰式命名的字符串转换为下划线大写的方式 3、完整代码 一、场景描述 在开发场景中&#xff0c;我们会遇到一些涉及字符串的转化。例如&#xff1a;数据库字段的名称叫TYPE_NAME&#xff0c…

Android MVI架构的深入解析与对比

什么是MVI&#xff1f; M&#xff1a;model&#xff0c;此处的model并不是传统的数据模块&#xff0c;它是指用来存储视图状态UI State的一个模块 。比如请求数据时的loading、请求失败的提示页面等UI层面的变化状态。 V&#xff1a;view&#xff0c;视图模块 I&#xff1a;…

Android---彻底掌握 Handler

Handler 现在几乎是 Android 面试的必问知识点&#xff0c;大多数 Adnroid 工程师都在项目中使用过 Handler。主要场景是子线程完成耗时操作的过程中&#xff0c;通过 Handler 向主线程发送消息 Message&#xff0c;用来刷新 UI 界面。 下面我们来了解 Handler 的发送消息和处…

网络性能瓶颈分析,让我来说给你听!

在性能测试中&#xff0c;谈到网络问题&#xff0c;其实&#xff0c;在没有特别说明的情况下&#xff0c;我们一般讲的都是 HTTP 协议下的网络瓶颈问题&#xff0c;那&#xff0c;对于这个问题&#xff0c;我们如何来分析呢&#xff1f;计算机中的网络&#xff0c;跟我们现实生…

npm的使用

package.json 快速生成package.json npm init -y “version”: “~1.1.0” 格式为&#xff1a;「主版本号. 次版本号. 修订号」。 修改主版本号是做了大的功能性的改动 修改次版本号是新增了新功能 修改修订号就是修复了一些bug dependencies "dependencies": {&…

陕西某小型水库雨水情测报及大坝安全监测项目案例

项目背景 根据《陕西省小型病险水库除险加固项目管理办法》、《陕西省小型水库雨水情测报和大坝安全监测设施建设与运行管理办法》的要求&#xff0c;为保障水库安全运行&#xff0c;对全省小型病险水库除险加固&#xff0c;建设完善雨水情测报、监测预警、防汛道路、通讯设备、…

Spring源码编译步骤

Spring源码学习 一、Gradle 为什么下载gradle呢&#xff1f;我们平时不都是用maven吗&#xff1f;原因只有一个&#xff0c;spring源码是用gradle构建的&#xff0c;所以&#xff0c;你想看spring源码必须安装和学会使用gradle&#xff0c;那么&#xff0c;让我们开始gradle之…

windows 用vs创建cmake工程并编译opencv应用项目生成exe流程简述

目录 前言一、安装opencv&#xff08;1&#xff09;下载&#xff08;2&#xff09;双击安装&#xff08;3&#xff09;环境变量和system文件夹设置 二、打开vs创建项目三、编辑cpp&#xff0c;.h&#xff0c;cmakelist.txt文件&#xff08;1&#xff09;h文件&#xff08;2&…