当前位置: 首页 > news >正文

基于Vision Transformer的迁移学习在乳腺X光图像分类中的应用

乳房X线摄影(MG)在乳腺癌的早期发现中起着重要作用。MG可以在早期阶段发现乳腺癌,即使是感觉不到肿块的小肿瘤。基于卷积神经网络(CNN)的DL最近吸引了MG的大量关注,因为它有助于克服CAD系统的限制(假阳性、不必要的辐射暴露、无意义的活组织检查、高回调率、更高的医疗费用和更多的检查次数)。

当其应用在整个乳房X光图像时,由于在不同特征级别的多重卷积,CNN的计算代价很高。首先聚焦于图像的特定区域,而不是整个图像,逐渐为整个图像建立特征。

CNN缺乏在没有增强的情况下处理旋转和比例不变性的能力,并且无法对相对空间信息进行编码。

为解决此类问题,使用基于块的乳房图像分类器,而其中使用潜在的感兴趣区域(ROI)而不是整个乳房图像,这种方法有一定的局限性。基于CNN深度学习模型用于乳房X光摄影乳腺癌检测的第一个挑战是肿瘤定位。

大多数基于CNN的深度学习模型使用基于块的方法:

裁剪乳房X光照片上的可疑肿瘤区域并将其送入模型。这会导致整个乳房X光检查的信息丢失,导致出现假阳性结果

同时其性能根据图像中病变的大小而不同

CNN需要相当大的预处理来处理糟糕的图像质量。由于能见度降低、对比度低、清晰度差和噪音,相当大比例的异常被误诊或忽视

CNN对于不平衡的数据集的性能很差,训练数据集中正类和负类之间的不平等被称为数据集不平衡。直接在不平衡的数据集上训练CNN模型可能会使预测偏向于具有更多观测数量的类别。

弥补图像数据集不足的方法

数据增强和迁移学习

数据增强使得能够使用原始图像创建重新排列的图像数据,从而增加训练图像数据集的数量和种类。它包括噪波添加、旋转、平移、对比度、饱和度、色彩增强、亮度、缩放和裁剪等操作。

迁移学习利用来自所选数据集的预先训练的权重作为在另一数据集上训练的起点。这使得能够从先前任务中学到的知识用于目标任务。几乎所有基于CNN的用于乳房X光摄影的DL方法都使用迁移学习方法来弥补大型数据集的不足,并利用具有先验特征知识的优化模型来执行新任务。

基于Vision Transformer的迁移学习

  1. 图像数据平衡模块,用于解决乳房X光数据集中的类不平衡问题
  2. 设计了一种基于视觉变换的乳房X光片分类迁移学习方法。利用Transformer的自我注意力方法,改进了基于CNN的迁移学习方法的缺点
  1. 源图像被分成称为视觉标记的图像块的集合。
  2. 视觉标记被合并到固定维度编码向量的集合中。实质上与负责处理文本输入的网络相同的Transformer编码器网络与编码后的矢量一起被馈送图像中的块的位置。
  3. VIT编码器由多个模块组成,每个模块都有三个主要处理部件:层归一化、多头注意力网络(MSP)和多层感知器(MLP)。

该模型通过层归一化对训练图像的差异性进行调整,使训练过程保持在正轨上。多头注意力网络从提供的嵌入式视觉token创建attention map,其帮助网络将注意力集中在图像最关键的区域。

多视图Transformer

使用多视图Transformer模型(MVT)来检测乳房X光照片上的乳腺癌。MVT由两个主要部分组成:局部和全局Transformer。局部Transformer分析来自每个视图图像的数据。相比之下,全局Transformer结合来自四-视图乳房X光照片的数据。

自注意力机制、多头自注意力和多层感知器是局部和全局Transformer的三个主要组成部分。

乳房X光照片的像素大小差异很大;我们将所有图像的大小调整为224*224像素,从输入图像到生成补丁的首选大小。

Vision Transformer架构

视觉转换器模型将图像分割成更小的二维块,并将这些块作为单词标记输入,如原始NLP转换器模型所执行的那样。高度H、宽度W和通道数C的输入图像被分成较小的二维块,以类似于输入在NLP域中的结构的方式排列输入图像数据。

产生N=\frac{HW}{P^{2}}个像素大小为P\times P的块。每个块被展平为P^{2}\times C的向量X_{p}^{n}

使用可训练的线性投影E将展平的块映射到D维度,产生一系列嵌入的图像块,

嵌入的图像块序列以嵌入X_{class}的可学习类为前缀,X_{class}值得对应分类结果为Y,

最后将在训练过程中学习到的一维位置嵌入Epos添加到块嵌入中,从而向输入中添加定位信息。

我们将Z_{0}反馈到Transformer-encoder网络结构中,该网络是由L个相同的层堆叠而成,从而进行分类。在编码器输出的第 L 层向分类前馈X_{class}的值。在预训练过程中,采用单隐藏层MLP(多层感知机)实现分类;在精调过程中,采用单线性层实现分类;MLP实现 GELU 非线性进行分类。


总体而言,视觉转换器使用了原始NLP转换器架构的编码器组件。编码器接收大小为16×16的嵌入图像块序列作为输入,连同位置数据,以及挂起到该序列的可学习类嵌入。补丁越小,性能就越高,计算成本也就越高。

Swin Transformer架构

 金字塔 vision Transformer(PVT)

PVT使用一种被称为空间减少注意(SRA)的自我注意类型,其特征是键和值的空间减少,以获得注意机制的二次方复杂性。SRA逐渐降低了整个模型中特征的空间维度。此外,它还将位置嵌入应用于所有变压器块,强化了顺序的思想。

相关文章:

基于Vision Transformer的迁移学习在乳腺X光图像分类中的应用

乳房X线摄影(MG)在乳腺癌的早期发现中起着重要作用。MG可以在早期阶段发现乳腺癌,即使是感觉不到肿块的小肿瘤。基于卷积神经网络(CNN)的DL最近吸引了MG的大量关注,因为它有助于克服CAD系统的限制(假阳性、不必要的辐射暴露、无意义的活组织检查、高回调…...

WebGIS 地铁交通线网数据可视化监控平台

数字孪生技术在地铁线网的管理和运维中的应用是一个前沿且迅速发展的领域。随着物联网、大数据、云计算以及人工智能技术的发展,地铁线网数字孪生在智能交通和智慧城市建设中的作用日益凸显。 图扑软件基于 HTML5 的 2D、3D 图形渲染引擎,结合 GIS 地图&…...

批量导入svg文件作为图标使用(vue3)vite-plugin-svg-icons插件的具体应用

目录 需求svg使用简述插件使用简述实现安装插件1、配置vite.config.ts2、src/main.ts引入注册脚本3、写个icon组件4、使用组件 需求 在vue3项目中,需要批量导入某个文件夹内数量不确定的svg文件用来作为图标,开发完成后能够通过增减文件夹内的svg文件&a…...

X服务器远程连接问题解决:Bad displayname ““‘或Missing X server or $DISPLAY

X服务器远程连接问题 报错1 ImportError: this platform is not supported: (failed to acquire X connection: Bad displayname "", DisplayNameError()) Try one of the following resolutions: * Please make surethat you have an X server running, and that …...

matlab:五点中心差分求解Navier边界的Biharmonic方程(具有纳维尔边界的双调和方程)

我们考虑如下形式的双调和方程的数值解 其中,Ω是欧氏空间中的多边形或多面体域,在其中,d为维度,具有分段利普希茨边界,满足内部锥条件,f(x) ∈ L2(Ω)是给定的函数,∆是标准的拉普拉斯算子。算…...

详细介绍微信小程序app.js

这一节,我们详细介绍app.js 这个文件。这个文件的重要性我就不再赘述,前面已经介绍了。 一、app.js是项目的主控文件 任何一个程序都是需要一个入口的,就好比我们在学c的时候就会有一个main函数,其他语言基本都是一样。很明确的…...

【六 (2)机器学习-EDA探索性数据分析模板】

目录 文章导航一、EDA:二、导入类库三、导入数据四、查看数据类型和缺失情况五、确认目标变量和ID六、查看目标变量分布情况七、特征变量按照数据类型分成定量变量和定性变量八、查看定量变量分布情况九、查看定量变量的离散程度十、查看定量变量与目标变量关系十一…...

Java集合——Map、Set和List总结

文章目录 一、Collection二、Map、Set、List的不同三、List1、ArrayList2、LinkedList 四、Map1、HashMap2、LinkedHashMap3、TreeMap 五、Set 一、Collection Collection 的常用方法 public boolean add(E e):把给定的对象添加到当前集合中 。public void clear(…...

Python TensorFlow 2.6 获取 MNIST 数据

Python TensorFlow 2.6 获取 MNIST 数据 2 Python TensorFlow 2.6 获取 MNIST 数据1.1 获取 MNIST 数据1.2 检查 MNIST 数据 2 Python 将npz数据保存为txt3 Java 获取数据并使用SVM训练4 Python 测试SVM准确度 2 Python TensorFlow 2.6 获取 MNIST 数据 1.1 获取 MNIST 数据 …...

EChart简单入门

echart的安装就细不讲了,直接去官网下,实在不会的直接用cdn,省的一番口舌。 cdn.staticfile.net/echarts/4.3.0/echarts.min.js 正入话题哈 什么是EChart? EChart 是一个使用 JavaScript 实现的开源可视化库,Echart支持多种常…...

阿里云8核32G云服务器租用优惠价格表,包括腾讯云和京东云

8核32G云服务器租用优惠价格表,云服务器吧yunfuwuqiba.com整理阿里云8核32G服务器、腾讯云8核32G和京东云8C32G云主机配置报价,腾讯云和京东云是轻量应用服务器,阿里云是云服务器ECS: 阿里云8核32G服务器 阿里云8核32G服务器价格…...

设计模式,工厂方法模式

工厂方法模式概述 工厂方法模式,是对简单工厂模式的进一步抽象和推广。以我个人理解,工厂方法模式就是对生产工厂的抽象,就是用一个生产工厂的工厂来进行目标对象的创建。 工厂方法模式的角色组成和简单工厂方法相比,创建了一个…...

WPF中嵌入3D模型通用结构

背景:wpf本身有提供3D的绘制,但是自己通过代码描绘出3D是比较困难的。3D库helix-toolkit支持调用第三方生成的模型,比如Blender这些,所以在wpf上使用3D就变得非常简单。这里是一个通过helix-toolkit库调用第三方生成的3d模型的样例…...

举个例子说明联邦学习

学习目标: 一周掌握 Java 入门知识 学习内容: 联邦学习是一种机器学习方法,它允许多个参与者协同训练一个共享模型,同时保持各自数据的隐私。 联邦学习概念(例子): 假设有三家医院,它们都希望…...

【Python】免费的图片/图标网站

专栏文章索引:Python 有问题可私聊:QQ:3375119339 这里是我收集的几个免费的图片/图标网站: iconfont-阿里巴巴矢量图标库icon(.ico)INCONFINDER(.ico)...

Pytorch中的nn.Embedding()

模块的输入是一个索引列表,输出是相应的词嵌入。 Embedding.weight(Tensor)–形状模块(num_embeddings,Embedding_dim)的可学习权重,初始化自(0,1)。 也就是…...

WebSocketServer后端配置,精简版

首先需要maven配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId><version>2.1.3.RELEASE</version></dependency> 然后加上配置类 这段代码是一个Spri…...

Python程序设计 多重循环(二)

1.打印数字图形 输入n&#xff08;n<9)&#xff0c;输出由数字组成的直角三角图形。例如&#xff0c;输入5&#xff0c;输出图形如下 nint(input("")) #开始 for i in range(1,n1):for j in range(1,i1):print(j,end"")print()#结束 2.打印字符图形 …...

前端面试题--CSS系列(一)

CSS系列--持续更新中 1.CSS预处理器有哪些类型&#xff0c;有什么区别2.盒模型是什么&#xff0c;有哪两种类型3.css选择器有哪些&#xff0c;优先级是怎样的&#xff0c;哪些属性可以继承4. 说说em/px/rem/vh/vw的区别5.元素实现水平垂直居中的方法有哪些&#xff0c;如果元素…...

VSCode好用插件

由于现在还是使用vue2&#xff0c;所以本文只记录vue2开发中好用的插件。 美化类插件不介绍了&#xff0c;那些貌似对生产力起不到什么大的帮助&#xff0c;纯粹的“唯心主义”罢了&#xff0c;但是如果你有兴趣的话可以查看上一篇博客&#xff1a;VSCode美化 1. vuter 简介&…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应&#xff0c;这是一种非线性光学现象&#xff0c;主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场&#xff0c;对材料产生非线性响应&#xff0c;可能…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、&#x1f468;‍&#x1f393;网站题目 二、✍️网站描述 三、&#x1f4da;网站介绍 四、&#x1f310;网站效果 五、&#x1fa93; 代码实现 &#x1f9f1;HTML 六、&#x1f947; 如何让学习不再盲目 七、&#x1f381;更多干货 一、&#x1f468;‍&#x1f…...

iview框架主题色的应用

1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题&#xff0c;无需引入&#xff0c;直接可…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...

Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?

Pod IP 的本质与特性 Pod IP 的定位 纯端点地址&#xff1a;Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址&#xff08;如 10.244.1.2&#xff09;无特殊名称&#xff1a;在 Kubernetes 中&#xff0c;它通常被称为 “Pod IP” 或 “容器 IP”生命周期&#xff1a;与 Pod …...

游戏开发中常见的战斗数值英文缩写对照表

游戏开发中常见的战斗数值英文缩写对照表 基础属性&#xff08;Basic Attributes&#xff09; 缩写英文全称中文释义常见使用场景HPHit Points / Health Points生命值角色生存状态MPMana Points / Magic Points魔法值技能释放资源SPStamina Points体力值动作消耗资源APAction…...