MoblieNetV2: Inverted Residuals and Linear Bottlenecks. (CVPR 2018)
Authors: Mark Sandler, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, Liang-Chieh Chen.
- 본 논문에서는 Google에서 제안한 MobileNetV1의 다음 버전인 MobileNetV2로 모바일이나 임베디드에서도 real-time으로 작동할 수 있게 모델을 경량화하고, 성능 또한 유지한 네트워크이다.
- Linear Bottleneck block. 본 논문에서는 이전 MobileNetV1의 구조였던 Depthwise Separable Convolution에서 Depthwise Convolution과 Pointwise Convolution에서 Pointwise Convolution의 연산량이 많아지기 때문에 이러한 계산량 부담을 인식하고 이전 layer인 Depthwise Convolution에 연산 비중을 올리는 테크닉을 제안한다. 본 논문에서는 Manifold라는 개념을 제안하며 이를 통해 고차원의 채널이 저차원의 채널로 표현할 수 있다는 가설을 통해서 1x1 pointwise convolution을 먼저 수행한 후 depthwise convolution을 수행한다. 이를 통해 Expansion layer(pointwise conv)으로 채널 수를 늘리고 depthwise convolution을 수행한 후 projection layer을 통해 다시 input의 channel 개수로 줄이는 bottleneck block의 구조를 가진다. 이는 아래의 그림을 통해서 확인할 수 있다.
- ReLU6 activation. ReLU6는 positive region에서 Maximum value가 6을 넘어가지 못하게 하는 activation function이다. 이는 기존의 ReLU는 Positive region에서 상한선이 없기 때문에 이를 표현하기 위해서 bit수를 정할 때 risk가 있었다. 하지만 ReLU6는 결과값이 6이하기 때문에 integer의 bit를 3bit로 고정하며 연산량 감소의 효과가 있다.)
- ReLU6 activation. 본 논문에서는 기존의 ReLU는 필연적으로 정보손실을 야기하기 때문에 이를 방어해야 한다고 말한다. 아래 Figure 3을 통해 ReLU의 문제를 확인할 수 있다. 즉 ReLU는 필연적으로 정보손실을 야기하기 때문에 차원이 적을 때 ReLU를 사용하면 성능을 저하시킨다. Figure 4를 통해서 이를 해결할 수 있는데 즉 채널이 많을수록 ReLU가 정보 손실을 발생시켜도 다른 채널에서 정보가 유지될 수 있기 때문에 채널이 많을 때는 ReLU를 사용하는 것이 가능하다고 한다.
- Inverted Residual connections. Depthwise Separable Convolution과 Linear Bottleneck 을 합친 것이다. 기존의 residual connection을 반대로 뒤집은 형태라서 inverted residual라고 부른다. 위에서 말했듯이 ReLU는 채널수가 많을 때 사용해야하기 때문에, 먼저 input에 1x1 pointwise convolution으로 채널수를 확장하고 ReLU6가 포함된 Depthwise convolution을 진행한다. 그리고 마지막으로 projection layer(linear bottleneck)을 통해 기존 input의 채널수와 동일하게 채널수를 줄인다. 더불어 Figure 6에서 확인할 수 있듯이 stride가 1일때는 shortcut이 있지만 stride가 2일때는 존재하지 않다. 이는 이미지의 크기가 줄어들면 정보의 선형성이 보장되지 않기 때문이라고 생각한다.
'논문리뷰' 카테고리의 다른 글
Drop an Octave: Reducing Spatial Redundancy in Convolutional Neural Networks with Octave (CVPR 2020) (0) | 2020.06.01 |
---|---|
Aggregated Residual Transformations for Deep Neural Networks (IEEE 2017) (0) | 2020.06.01 |
Deep Pyramid Residual Networks. (CVPR 2017) (0) | 2020.06.01 |
Densely Connected Convolutional Networks. (CVPR 2017) (0) | 2020.06.01 |
Squeeze and Excitation Network (CVPR 2018) (0) | 2020.06.01 |
댓글