当前位置:网站首页>[medical segmentation] attention Unet
[medical segmentation] attention Unet
2022-07-07 16:36:00 【Coke Daniel】
summary
attention-unet The main contribution is to propose attention gate, It's plug and play , It can be directly integrated into unet In the model , The function is to suppress irrelevant areas in the input image , At the same time, highlight the remarkable characteristics of specific local areas , And it uses soft-attention Instead of hard-attention, therefore attention Weights can be learned online , And there's no need for extra label, Only a small amount of calculation is added .
details
structure
The core or unet Structure , But doing skip-connection When , In the middle there's a attention gate, After this ag after , Proceed again concat operation . because encoder There is relatively more fine-grained information in , But many are unnecessary redundancy ,ag Quite so encoder The current layer of is filtered , Suppress irrelevant information in the image , Highlight important local features .
attention gate
The two inputs are encoder Current layer of x l x^l xl and decoder The next layer of g g g, They passed by 1x1 Convolution of ( After making the number of channels consistent ), Then add elements by elements , And then pass by relu,1x1 Convolution of ( Reduce the number of channels to 1) and sigmoid Get the attention coefficient , And then there's another resample The module restores the size , Finally, the attention coefficient can be used to weight the feature map .
notes : Here is 3D Of ,2D If you understand , Just remove the last dimension .

Some explanations : Why add two inputs instead of directly based on encoder The current layer of gets the attention coefficient ?
Probably because , First, two characteristic graphs with the same size and number of channels are processed , The extracted features are different . Then this operation can strengthen the signal of the same region of interest , At the same time, different areas can also be used as auxiliary , The two copies add up to more auxiliary information . Or the further emphasis on the core information , At the same time, don't ignore those details .
Why resample Well ?
because x l And g x^l And g xl And g The size of is different , obviously g g g Its size is x l x^l xl Half of , They cannot add element by element , So we need to make the two dimensions consistent , Either large down sampling or small up sampling , The experiment shows that the effect of large down sampling is good . But what you get after this operation is the attention coefficient , Want to be with x l x^l xl The weight must be the same size , So we have to re sample .
attention
Attention The essence of a function can be described as a query (query) To a series of ( key key- value value) Mapping to
In the calculation attention It is mainly divided into three steps :
- The first step is to query And each key Calculate the similarity to get the weight , The common similarity function is a little product , Splicing , Perceptron, etc ;
- The second step is usually to use a softmax Function normalizes these weights ;
- Finally, the weight and the corresponding key value value Weighted sum to get the final attention.
hard-attention: Select one area of an image at a time as attention , set 1, Others are set to 0. He can't differentiate , Standard back propagation is not possible , Therefore, Monte Carlo sampling is needed to calculate the accuracy of each back-propagation stage . Considering that the accuracy depends on the completion of sampling , Therefore, its Other technology ( For example, reinforcement learning ).
soft-attention: Each pixel of the weighted image . Multiply the high correlation area by a larger weight , Low correlation areas are marked with smaller weights . The weight range is (0-1). He is differentiable , Back propagation can be carried out normally .
边栏推荐
- 【DesignMode】享元模式(Flyweight Pattern)
- 二叉搜索树(特性篇)
- Multiplication in pytorch: mul (), multiply (), matmul (), mm (), MV (), dot ()
- MySQL数据库基本操作-DQL-基本查询
- 分类模型评价标准(performance measure)
- 【知识小结】PHP使用svn笔记总结
- AutoLISP series (2): function function 2
- [vulnhub range] thales:1
- 记录Servlet学习时的一次乱码
- Notification uses full resolution
猜你喜欢

Odoo integrated plausible embedded code monitoring platform

Balanced binary tree (AVL)

【MySql进阶】索引详解(一):索引数据页结构

二叉搜索树(特性篇)

Have fun | latest progress of "spacecraft program" activities

Power of leetcode-231-2

记录Servlet学习时的一次乱码

2022 the 4th China (Jinan) International Smart elderly care industry exhibition, Shandong old age Expo

Logback日志框架第三方jar包 免费获取

Multiplication in pytorch: mul (), multiply (), matmul (), mm (), MV (), dot ()
随机推荐
Three. JS series (1): API structure diagram-1
模拟Servlet的本质
ThinkPHP URL 路由简介
Prediction - Grey Prediction
AutoLISP series (1): function function 1
修改配置文件后tidb无法启动
Spark Tuning (III): persistence reduces secondary queries
【Android -- 数据存储】使用 SQLite 存储数据
php 自带过滤和转义函数
121. The best time to buy and sell stocks
Laravel changed the session from file saving to database saving
pycharm 终端部启用虚拟环境
three. JS create cool snow effect
应用程序和matlab的通信方式
spark调优(三):持久化减少二次查询
Logback日志框架第三方jar包 免费获取
Introduction to ThinkPHP URL routing
What else can an ordinary person do besides working in a factory to make money?
Three. JS series (3): porting shaders in shadertoy
Leetcode-136- number that appears only once (solve with XOR)