CBAM - Convolutional Block Attention Module
Paper link : https://arxiv.org/abs/1807.06521
기존 BAM(Bottleneck Attention Module)과 같은 저자께서 작성한 논문
Method
- 기존 BAM(Bottleneck Attention Module)과 유사하게 channel attention branch와 spatial attention branch로 구성
- channel attention과 spatial attention을 같이 진행하던 네트워크에서 순차적으로 진행하도록 모듈을 수정
- \(F \in \mathbb{R}^{C\times H \times W}\) 로 Feature map이 주어지면 Refined Feature map \(F''\) 은 아래와 같음
-
Channel Attention Module
- 각 채널 간 relationship을 이용하여서 channel attention map을 생성
- 채널에서 정보를 squeeze 해서 데이터를 뽑는데 MaxPoolingrhk AvgPooling을 사용
- BAM에서는 Avg만 썻지만 이번에는 둘다 사용 -> 나중에 실험적으로 둘다 사용하는 것이 성능이 좋음을 보임
- 각 pooling에서 뽑은 데이터를 모으기 위해서 weight가 share 되는 shared network(MLP)를 사용하여 합침
-
Spatial Attention Module
- Spatial한 정보를 얻기 위해서 channel과 유사하게 MaxPool, AvgPool을 사용함
- input feature로 부터 pooling 값을 구한 뒤, 2d conv를 이용하여서 spatial한 attention map을 생성
-
Arrangement of attention modules**
- 2개의 attention module을 순차적으로 attention을 적용하여 사용
댓글남기기