KnoBo:医书学习知识,辅助图像分析,解决分布外性能下降和可解释性问题

news2024/9/25 9:40:49

KnoBo:从医书中学习知识,辅助图像分析,解决分布外性能下降问题

    • 提出背景
    • KnoBo 流程图
      • KnoBo 详解
        • 问题构成
        • 结构先验
        • 瓶颈预测器
        • 参数先验
    • 解法拆解
      • 逻辑链
      • 对比 CLIP、Med-CLIP
        • CLIP
        • Med-CLIP
        • KnoBo
    • 训练细节
      • 预训练过程
        • OpenCLIP的微调
      • 构建医学语料库
        • 文档收集
        • 文档管理
      • KnoBo实施细节
        • 概念生成
        • 概念固定
        • 训练与评估

论文:A Textbook Remedy for Domain Shifts: Knowledge Priors for Medical Image Analysis

代码:https://yueyang1996.github.io/knobo/

提出背景

在医学成像领域应用深度学习模型时面临的主要问题:当数据来源(如不同的医院或患者群体)发生变化时,模型的表现往往会大幅下降,这种现象被称为“域移动”。

由于医学数据集通常规模较小,且存在许多未被标识的混淆因素,这些都可能导致模型预测性能急剧下降,从而减弱了医疗专业人员对这些模型的信任。

为了解决这个问题,研究人员提出了一种新的模型设计方法,灵感来源于医学教育过程。

在医学教育中,学生首先通过教科书学习基础知识,然后在实际操作中进一步学习。

模型的设计模仿了这一学习过程:首先利用医学文献来识别和整合关键的医学知识,然后通过实例数据进行学习

具体来说,研究者开发了一种名为“知识增强瓶颈”(KnoBo)的模型结构,它在概念瓶颈模型(CBMs)的基础上进行扩展。

KnoBo的模型,它不仅分析图像的视觉特征,还结合了从医学教科书中提取的具体医学知识来提高其准确性和可靠性。

这种模型使用从医学教科书中提取的概念(如“图像中是否存在玻璃磨砂阴影?”)来帮助模型判断X光片是否显示出呼吸道感染的特征。

在一系列测试中,KnoBo模型在处理数据来源变化时显示出较传统模型更好的性能,尤其是在“分布外”(OOD,即模型未见过的新场景)的情况下,性能提升明显。

此外,研究还发现使用PubMed等医学数据库作为知识来源可以进一步提高模型的预测性能和信息多样性。

这项研究显示,将深入的医学知识整合到模型中,可以显著提高医学成像模型在面对数据变化时的鲁棒性,有助于在医疗实践中更广泛地应用这些先进的人工智能工具。

传统的方法(事后可解释性)可能无法提供真实可靠的解释。本研究采用了一种固有的可解释方法,即通过概念瓶颈模型(CBMs),这种模型通过组合预先定义的概念来作出预测,这些概念是由人类设计的,更易于理解。

本研究不是为每个案例单独检索知识,而是构建了一个全局的知识先验,这个先验是基于一个广泛的医学文档语料库,可以在所有案例中共享使用。

 

KnoBo 流程图

在这里插入图片描述

这幅图是一个关于“知识增强瓶颈”(KnoBo)系统的示意图,这是一种用于医学图像分类的模型。

  1. 结构先验(Structure Prior)

    • 这部分涉及利用医学文献(如PubMed、教科书等)构建一个可信的知识瓶颈。
    • 例如,它会从文献中提取出与COVID-19相关的胸部X光特征,如“玻璃磨砂阴影”。
  2. 瓶颈预测器(Bottleneck Predictor)

    • 这部分使用上述结构先验中的概念来评估输入的医学图像。
    • 系统会询问诸如“肺部是否有塌陷?”、“气管是否在中线位置?”等问题,通过这些问题的回答来分析图像。
  3. 参数先验(Parameter Prior)

    • 这里,线性层的学习受到预定义参数的约束,这些参数可能由医生或语言模型(LLMs)提前定义,以确保模型的预测与医学专业知识一致。

总体流程是:

  • 首先,对于一个具体的查询(如诊断X射线图中的COVID-19),系统从医学文献库中检索相关文档。
  • 使用这些文档来生成和确认关于图像中可能存在的病理特征的问题。
  • 输入的医学图像将被评估这些特征,如图中的X光图示例。
  • 最后,系统基于评估结果生成一个临床报告,表明测试是阳性还是阴性。

这种方法的目的是通过结合丰富的医学知识和深度学习技术,提高医学图像分析的准确性和可靠性。

 


没问题,我会尽量简化解释:

KnoBo 详解

整体概念

  • **知识增强瓶颈(KnoBo)**是一种机器学习模型,它将医学知识以“概念”的形式直接融入模型中,使得模型在处理医学图像时更加精准和可靠。
问题构成
  • 基本理念:模型通过两个步骤进行预测。

    首先,它将图像转换成一系列的“概念”,然后基于这些概念来预测图像的标签(如病情分类)。

  • 目标:目标是通过加入关于概念结构的先验知识(即在建模前就已知的信息)来优化模型的学习过程。

结构先验
  • 操作方法:首先定义需要的概念(如肺炎、肿瘤等医学特征),然后使用大型语言模型从大量文档中寻找与这些概念相关的信息,迭代地精细化这些概念。
  • 迭代过程:通过不断地从文档中提取信息并更新概念库,模型逐步构建一个能够高效识别和分类医学图像的概念结构。
瓶颈预测器
  • 功能:将输入的医学图像映射到概念空间(即识别图像中的医学概念),然后这些概念被用来预测图像的医学标签。
  • 概念固定:这一步骤涉及训练模型识别图像中是否存在特定的医学概念,比如通过分析图像与文本描述(如临床报告)之间的关系来学习。
参数先验
  • 目的:调整模型的参数以确保它们反映出医学知识中的概念与疾病标签之间的正确关联。
  • 实现方式:通过设定参数的先验分布,并在训练过程中调整参数使其不仅符合数据特征,也符合这些先验知识。

总结
通过这种方式,KnoBo模型不仅基于图像的视觉特征进行学习,还整合了丰富的医学知识,使得模型在进行医学图像分析时更为准确和可解释。

这种方法特别适用于需要高度精确诊断的医学领域。

解法拆解

KnoBo(知识增强瓶颈)模型旨在提高医学图像分类的准确性和鲁棒性,特别是在面对数据集中的混淆因素时。为达到这一目的,KnoBo采用了一系列子解法,结合了多个技术和方法来构建和优化模型。下面根据逻辑关系拆解KnoBo的具体解法和子解法:

  1. 概念瓶颈构建(子解法1)

    • 特征:需要一种方法来将医学专业知识直接整合到模型中,增强模型对医学图像的理解。
    • 原因:通过构建概念瓶颈,模型可以在预测时显式地参考医学领域的关键知识,这提高了模型的解释性和准确性。
    • 例子:如果模型识别出X光图像中的“肺部阴影”这一概念,它可以更准确地判断是否为肺炎。
  2. 知识驱动的特征提取(子解法2)

    • 特征:模型需要在处理图像时能够辨识出与医学诊断直接相关的视觉特征。
    • 原因:使用从医学文献中提取的知识来指导特征提取,可以使模型更好地识别与病理状态相关的图像特征,从而提高分类的精确度。
    • 例子:通过分析与“骨折”相关的医学文献,模型可以学习到在X光图像中识别特定类型的骨折线的视觉特征。
  3. 鲁棒性优化(子解法3)

    • 特征:需要提高模型对于数据集中混淆因素的抵抗能力。
    • 原因:通过在模型训练中考虑和评估混淆因素,可以让模型在遇到变化或异常情况时仍保持高准确率,即提高其鲁棒性。
    • 例子:在混淆数据集上训练时,模型学习区分年龄、性别等因素与疾病标签之间的假相关,从而在实际应用中减少误诊。

逻辑链

逻辑链结构如下:

  • 主解法:KnoBo模型
    • 子解法1:概念瓶颈构建
      • 引入医学领域知识,提高模型的专业准确性和解释性。
    • 子解法2:知识驱动的特征提取
      • 利用医学知识指导图像特征的提取,关注与医学诊断直接相关的视觉特征。
    • 子解法3:鲁棒性优化
      • 在模型设计中考虑混淆因素,提高模型对异常情况的适应性和鲁棒性。

这些子解法形成一个链条结构,每个解法都是为了解决模型在医学图像处理中可能遇到的具体问题,共同作用以提升最终的模型性能和可靠性。

对比 CLIP、Med-CLIP


KnoBo(Knowledge-enhanced Bottlenecks)在特定场景中可以表现得比CLIP或Med-CLIP更优,尤其是在需要高度医学知识整合和强解释性的医学图像分析任务中。

在这里插入图片描述

CLIP
  • 设计与目标:CLIP(Contrastive Language–Image Pre-training)由OpenAI开发,旨在通过自然语言描述学习视觉概念。它是为了广泛的图像理解而设计,不特定于医学图像。
  • 优势:CLIP强在处理大范围的图像类型和大量未标注数据,能够通过文本描述与图像内容之间的关联来进行分类和识别。
  • 局限:在专业性较强的领域(如医学图像分析),CLIP可能不如专门针对该领域优化的模型表现出色,因为它缺乏具体领域的深入知识。
Med-CLIP
  • 设计与目标:Med-CLIP是CLIP的一个变种,针对医学图像进行了优化,通过在医学图像和相关文本上进行预训练来改进。
  • 优势:在处理医学图像时,相比于标准的CLIP,Med-CLIP通过利用医学专业的数据集提高了模型对医学内容的理解和精度。
  • 局限:虽然比普通的CLIP模型更适用于医学图像,但Med-CLIP可能还是缺乏足够的医学知识深度,特别是在具体病理特征的识别和解释方面。
KnoBo
  • 设计与目标:KnoBo专为解决医学图像分析中的高复杂性问题而设计,通过集成明确的医学知识(概念瓶颈)来增强模型的解释能力和准确性。
  • 优势:KnoBo在处理需要高度专业知识和高度解释性的医学图像分析任务时,能够提供更准确的诊断支持。它通过直接利用医学文献中的知识来改善诊断结果的相关性和准确性。
  • 局限:KnoBo的设计和实现可能比CLIP或Med-CLIP更为复杂,需要更多的定制化开发和维护。

KnoBo在需要深度医学知识和高度解释性的医学图像分析任务上可能比CLIP和Med-CLIP更强,特别是在准确性和用户信任方面。

然而,在通用图像识别任务或少量标注数据的场景中,CLIP和Med-CLIP可能更具优势。

训练细节

知识增强瓶颈(KnoBo)模型进行医学图像分类的全流程训练步骤,包括预训练、构建医学语料库和实施KnoBo细节。

预训练过程

预训练是训练深度学习模型之前的一个重要步骤,特别是在处理需要大量专业知识的领域如医学图像时。

OpenCLIP的微调
  • 模型选择:选择OpenCLIP模型,这是一个基于Transformer的大规模视觉-语言预训练模型,原本在多种数据集上训练,能理解图像内容与文本描述之间的关联。
  • 数据准备:收集医学相关的图像与其对应的临床报告。这些报告通常包含了描述图像内容的详细信息,如病变特征、诊断结果等。
  • 文本预处理:与其使用完整的临床报告,不如提取关键短语或重要信息,因为这样更能突出对图像内容的直接描述,减少噪声数据的干扰。
  • 微调:在医学专用的预训练数据上进行OpenCLIP的微调,使模型更好地适应医学图像的解读。

构建医学语料库

医学语料库是进行概念生成和检索的基础,包括以下步骤:

文档收集
  • 来源:从PubMed等医学数据库下载大量医学文章,涵盖各种医学主题和病例分析。
  • 文档整理:将下载的文章分割成较小的文本片段或摘要,以便于后续处理和检索。
文档管理
  • 索引构建:使用信息检索技术如BM25对文档片段进行索引,便于快速准确地检索相关内容。

KnoBo实施细节

KnoBo模型的实施是整个过程的核心,具体包括:

概念生成
  • 语言模型选择:采用GPT-4作为概念生成的底层语言模型。GPT-4因其强大的语言理解能力和生成能力,适合此任务。
  • 概念检索与生成:使用从医学语料库检索到的相关文档作为输入,让GPT-4生成与医学图像相关的概念。这些概念后续将用于训练和预测。
概念固定
  • 工具选择:使用Flan-T5-XXL模型来标注每个概念在具体临床报告中的存在与否,此步骤对应于从语言模型生成的文本中提取与图像对应的具体概念。
  • 成本效率:选择Flan-T5-XXL也考虑到了成本效率,以实现高效的标注。
训练与评估
  • 训练:在上述生成的概念和固定的基础上,训练KnoBo模型对医学图像进行分类。
  • 评估:在训练集、验证集和测试集上评估模型的性能,特别是在混淆和非混淆数据集上的表现。

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

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

相关文章

说说执行一条查询SQL语句时,期间发生了什么?

执行一条查询SQL语句时,期间发生了什么? 前言说说执行一条查询SQL语句时,发生了什么?连接器权限验证断开连接长连接 查询缓存查询缓存的问题 解析器词法分析语法分析 执行 SQL预处理器优化器执行器主键索引查询全表扫描索引下推 总…

轻薄鼠标的硬核选购攻略,很多人都在“高性价比”鼠标上栽跟头了

轻薄款设计的鼠标是目前鼠标市场的出货大头, 也是价格最卷的一类鼠标。 比游戏鼠标或许更卷一些。 这和当前的移动办公趋势关系很大。 这类鼠标主要跟笔记本和iPad搭配。 核心的使用场景是办公。 因此轻薄和静音是这类鼠标的核心卖点。 同时用户并不愿意付出太…

代码随想录算法训练营第三十二天|1049.最后一块石头的重量II、494.目标和、474.一和零

1049.最后一块石头的重量II 有一堆石头&#xff0c;每块石头的重量都是正整数。 每一回合&#xff0c;从中选出任意两块石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#xff0c;且 x < y。那么粉碎的可能结果如下&#xff1a; 如果 x y&#xff0c;那…

期货交易记录20240713

文章目录 期货交易系统构建步骤一、选品二、心态历练三、何时开仓3.1、开仓纪律3.2、开仓时机3.3、开仓小技巧 四、持仓纪律五、接下来的计划 2024年7月13号&#xff0c;期货交易第5篇记录。 交易记录&#xff1a;半个月多没记录了&#xff0c;这段时间分别尝试做了菜粕、棕榈油…

9.6 栅格图层符号化唯一值着色渲染

文章目录 前言多波段彩色渲染唯一值着色QGis设置为唯一值着色二次开发代码实现唯一值着色 总结 前言 介绍栅格图层数据渲染之唯一值着色渲染说明&#xff1a;文章中的示例代码均来自开源项目qgis_cpp_api_apps 多波段彩色渲染唯一值着色 以“with_color_table.tif”数据为例…

【嵌入式DIY实例-ESP8266篇】-LCD ST7789显示DS1307 RTC时间数据

LCD ST7789显示DS1307 RTC时间数据 文章目录 LCD ST7789显示DS1307 RTC时间数据1、硬件准备与接线2、代码实现本文将介绍如何使用 ESP8266 NodeMCU 板和 DS1307 RTC 集成电路构建简单的实时时钟和日历 (RTCC),其中时间和日期打印在 ST7789 TFT 显示模块上。 ST7789 TFT 模块包…

Open-TeleVision——通过VR沉浸式感受人形机器人视野:兼备远程控制和深度感知能力

前言 7.3日&#xff0c;我司七月在线(集AI大模型职教、应用开发、机器人解决方案为一体的科技公司)的「大模型机器人(具身智能)线下营」群里的一学员发了《Open-TeleVision: Teleoperation with Immersive Active Visual Feedback》这篇论文的链接&#xff0c;我当时快速看了一…

UML/SysML建模工具更新情况(2024年7月)(1)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 工具最新版本&#xff1a;Enterprise Architect 17.0 BETA 更新时间&#xff1a;2024年7月2日 工具简介 性价比很高&#xff0c;目前最流行的UML建模工具。还包含需求管理、项目估算…

AIGC专栏13——ComfyUI 插件编写细节解析-以EasyAnimateV3为例

AIGC专栏13——ComfyUI 插件编写细节解析-以EasyAnimateV3为例 学习前言什么是ComfyUI相关地址汇总ComfyUIEasyAnimateV3 节点例子复杂例子-以EasyAnimateV3为例节点文件必要库的导入载入模型节点定义Image to Video节点定义节点名称映射 __init__.py文件插件导入comfyUI 学习前…

被动的机器人非线性MPC控制

MPC是一种基于数学模型的控制策略&#xff0c;它通过预测系统在未来一段时间内的行为&#xff0c;并求解优化问题来确定当前的控制输入&#xff0c;以实现期望的控制目标。对于非线性系统&#xff0c;MPC可以采用非线性模型进行预测和优化&#xff0c;这种方法被称为非线性模型…

JS实现:统计字符出现频率/计算文字在文本中的出现次数

要实现这个功能&#xff0c;JavaScript 一个非常强大的方法&#xff0c;那就是reduce() reduce() 它用于将数组的所有元素减少到一个单一的值。这个值可以是任何类型&#xff0c;包括但不限于数字、字符串、对象或数组。 reduce() 方法接收一个回调函数作为参数&#xff0c;这个…

【C++】设计一套基于C++与C#的视频播放软件

在开发一款集视频播放与丰富交互功能于一体的软件时&#xff0c;结合C的高性能与C#在界面开发上的便捷性&#xff0c;是一个高效且实用的选择。以下&#xff0c;我们将概述这样一个系统的架构设计、关键技术点以及各功能模块的详细实现思路。 一、系统架构设计 1. 架构概览 …

截图神器Snipaste

这是我作为测试这么些年来用过的最好用的截图工具&#xff0c;让你将截图贴回到屏幕上&#xff0c;最好用的截图工具&#xff0c;推荐给同事深受好评。 snipaste是一个简单但强大的截图工具&#xff0c;也可以让你将截图贴回到屏幕上。下载打开Snipaste,按下F2来开始截图&…

【已解决】sudo: apt: command not found 或者apt-get: command not found解决方案

一、问题 在CentOS7.5运行apt-get install supervisor遇到如下报错 二、原因 CentOS的软件安装工具不是apt-get &#xff0c;而是yum&#xff0c;应该使用如下命令&#xff1a; yum install supervisor 后面命令换为yum就可以了 三、扩展&#xff1a; 一般来说linux系统…

MVC架构

MVC架构 MVC架构在软件开发中通常指的是一种设计模式&#xff0c;它将应用程序分为三个主要组成部分&#xff1a;模型&#xff08;Model&#xff09;、视图&#xff08;View&#xff09;和控制器&#xff08;Controller&#xff09;。这种分层结构有助于组织代码&#xff0c;使…

AR0132AT 1/3 英寸 CMOS 数字图像传感器可提供百万像素 HDR 图像处理(器件编号包含:AR0132AT6R、AR0132AT6C)

AR0132AT 1/3 英寸 CMOS 数字图像传感器&#xff0c;带 1280H x 960V 有效像素阵列。它能在线性或高动态模式下捕捉图像&#xff0c;且带有卷帘快门读取。它包含了多种复杂的摄像功能&#xff0c;如自动曝光控制、开窗&#xff0c;以及视频和单帧模式。它适用于低光度和高动态范…

《GroupViT: Semantic Segmentation Emerges from Text Supervision》论文解读

会议&#xff1a;CVPR 年份&#xff1a;2022 代码&#xff1a;https://github.com/NVlabs/GroupViT 研究背景与动机&#xff1a; 传统深度学习系统中&#xff0c;图像区域的Grouping通常是隐式通过像素级识别标签的自上而下监督来实现的。作者提出将Grouping机制重新引入深…

本地部署,AnimeGANv3: 将现实世界照片转化为动漫风格

目录 引言 技术背景 架构与原理 实验结果与分析 应用实例 本地部署 运行结果 Photo to Hayao Style Photo to Shinkai Style more suprise 支持多种风格 结论 参考文献 GitHub - TachibanaYoshino/AnimeGANv3: Use AnimeGANv3 to make your own animation works, …

在 PostgreSQL 里如何处理数据的跨库关联查询性能优化?

文章目录 一、了解跨库关联查询的挑战&#xff08;一&#xff09;网络延迟&#xff08;二&#xff09;数据量庞大&#xff08;三&#xff09;索引不一致&#xff08;四&#xff09;数据库配置差异 二、优化策略&#xff08;一&#xff09;合理设计数据库架构&#xff08;二&…

【C++】:继承[下篇](友元静态成员菱形继承菱形虚拟继承)

目录 一&#xff0c;继承与友元二&#xff0c;继承与静态成员三&#xff0c;复杂的菱形继承及菱形虚拟继承四&#xff0c;继承的总结和反思 点击跳转上一篇文章&#xff1a; 【C】&#xff1a;继承(定义&&赋值兼容转换&&作用域&&派生类的默认成员函数…