当前位置:网站首页>【医学分割】attention-unet
【医学分割】attention-unet
2022-07-07 14:17:00 【可乐大牛】
概述
attention-unet主要的贡献就是提出了attention gate,它即插即用,可以直接集成到unet模型当中,作用在于抑制输入图像中的不相关区域,同时突出特定局部区域的显著特征,并且它用soft-attention 代替hard-attention,所以attention权重可以由网络学习,并且不需要额外的label,只增加少量的计算量。
细节
结构
核心还是unet的结构,但是在做skip-connection的时候,中间加了一个attention gate,经过这个ag之后,再进行concat操作。因为encoder中的细粒度信息相对多一点,但是很多是不需要的冗余的,ag相当于是对encoder的当前层进行了一个过滤,抑制图像中的无关信息,突出局部的重要特征。
attention gate
两个输入分别是encoder的当前层 x l x^l xl和decoder的下一层 g g g,他们经过1x1的卷积(将通道数变为一致之后),再做逐元素的相加,然后经过relu,1x1的卷积(将通道数降为1)和sigmoid得到注意力系数,然后再经过一个resample模块将尺寸还原回来,最后就可以使用注意力系数对特征图进行加权了。
注:这里是3D的,2D理解的话,直接去掉最后一个维度就好了。
一些解释
:为什么要两个输入做加法而不是直接根据encoder的当前层得到注意力系数呢?
可能是因为,首先处理完成之后的两张相同尺寸和通道数的特征图,提取的特征是不同的。那么这么操作能够使相同的感兴趣区域的信号加强,同时各自不同的区域也能作为辅助,两份加起来辅助信息也会更多。或者说是对核心信息的进一步强调,同时又不忽视那些细节信息。为什么需要resample呢?
因为 x l 与 g x^l与g xl与g的尺寸是不相同的,显然 g g g的尺寸是 x l x^l xl的一半,他们不可能进行逐元素的相加,所以需要将两个尺寸变得一致,要么大的下采样要么小的上采样,实验出来是大的下采样效果好。但是这个操作之后得到的就是注意力系数了,要和 x l x^l xl做加权肯定要尺寸相同的,所以还得重新上采样。
attention
Attention函数的本质可以被描述为一个查询(query)到一系列(键key-值value)对的映射
在计算attention时主要分为三步:
- 第一步是将query和每个key进行相似度计算得到权重,常用的相似度函数有点积,拼接,感知机等;
- 第二步一般是使用一个softmax函数对这些权重进行归一化;
- 最后将权重和相应的键值value进行加权求和得到最后的attention。
hard-attention
:一次选择一个图像的一个区域作为注意力,设成1,其他设为0。他是不能微分的,无法进行标准的反向传播,因此需要蒙特卡洛采样来计算各个反向传播阶段的精度。 考虑到精度取决于采样的完成程度,因此需要其 他技术(例如强化学习)。
soft-attention
:加权图像的每个像素。 高相关性区域乘以较大的权重,而低相关性区域标记为较小的权重。权重范围是(0-1)。他是可微的,可以正常进行反向传播。
边栏推荐
- Communication mode between application program and MATLAB
- thinkphp3.2.3中设置路由,优化url
- Xcode Revoke certificate
- 【C 语言】 题集 of Ⅹ
- PyTorch 中的乘法:mul()、multiply()、matmul()、mm()、mv()、dot()
- laravel 是怎么做到运行 composer dump-autoload 不清空 classmap 映射关系的呢?
- Common training data set formats for target tracking
- hellogolang
- Rongyun won the 2022 China Xinchuang digital office portal excellence product award!
- Notification uses full resolution
猜你喜欢
记录Servlet学习时的一次乱码
AutoLISP series (3): function function 3
[C language] question set of X
模仿企业微信会议室选择
95. (cesium chapter) cesium dynamic monomer-3d building (building)
Talk about the cloud deployment of local projects created by SAP IRPA studio
Leetcode-231-2的幂
95.(cesium篇)cesium动态单体化-3D建筑物(楼栋)
删除 console 语句引发的惨案
Good news! Kelan sundb database and Hongshu technology privacy data protection management software complete compatibility adaptation
随机推荐
Geoserver2.18 series (5): connect to SQLSERVER database
分类模型评价标准(performance measure)
Set the route and optimize the URL in thinkphp3.2.3
Odoo integrated plausible embedded code monitoring platform
Laravel post shows an exception when submitting data
three. JS create cool snow effect
Three singleton modes of unity (hungry man, lazy man, monobehavior)
pycharm 终端部启用虚拟环境
[Android -- data storage] use SQLite to store data
Power of leetcode-231-2
Laravel service provider instance tutorial - create a service provider test instance
删除 console 语句引发的惨案
PHP中exit,exit(0),exit(1),exit(‘0’),exit(‘1’),die,return的区别
Asyncio concept and usage
Balanced binary tree (AVL)
Odoo集成Plausible埋码监控平台
laravel post提交数据时显示异常
leetcode 241. Different ways to add parentheses design priority for operational expressions (medium)
目标跟踪常见训练数据集格式
分步式监控平台zabbix