새소식

반응형
Vision AI/Paper review

[논문 읽기] RegNet: Self-Regulated Network for Image Classification

  • -
반응형

간단하게 요약하면 ResNet의 shortcut block에 ConvRNN을 붙여 사용하는 형태인 것 같습니다.

논문에서 말하는 시공간 정보라는 것이 조금 추상적인 표현이라 100% 와닿지는 않았습니다. 하지만 Feature visualization으로 기존 ResNet보다 더 많은 정보를 가진 feature를 얻을 수 있는 부분은 좋은 아이디어 같습니다.

시공간이라는 표현을 쓴 것은 sequence classification이 가능한 RNN을 적용해보기 위해 쓴 표현일까? 라는 생각이 들었습니다.

 

 

abstract

Resnet은 다양한 computer vision task에서 놀라운 성공을 이루었다. 하지만 shortcut connection 구조는 잠재적이고 보완적인 특징을 재탐색하는 능력을 제한한다. 이 이슈를 해결하기 위해 특징을 추출하기 위해 기억하는 방법으로서 Resnet에 추가로 공급되는 regulator module을 제안한다.

특히 regulator module은 시공간 정보를 잘 추출하는 convolutional RNN으로 구성된다. 우리는 새로운 조절 네트워크를 RegNet으로 이름 붙였다.

regulator module은 어떤 ResNet 아키텍처에나 잘 구현되고 첨가될 수 있다. 또한, 이 방법의 일반화 능력을 보여주기 위해 Squeeze-Excitation ResNet에 regulator module을 적용한다.

3개 image classification dataset과 기본 ResNet, SE-ResNet, 다른 SOTA 아키텍처를 사용하여 비교한 실험 결과는 제안한 아키텍처의 성능을 증명했다.

 

 

Introduction

Resnet은 shortcut connection으로 더 깊은 네트워크 학습을 가능하게 했기 때문에 큰 성공을 이루었다. 하지만 residual 학습에 치중한 나머지 이전 block에서 학습했던 재사용가능한 정보가 다음 블록에서 잊혀지는 경향이 있다. 이걸 아래 그림으로 설명한다.

그림(a)의 ResNet에서 Oi들의 feature map들을 보면 매우 비슷하게 보이고, block 들이 새로운 정보를 덜 학습했다는 것을 나타낸다.

이 문제의 잠재적 해결법은 파라미터 증가를 제약하면서 block 사이의 시공간적 의존성(spatio-temporal dependency)을 포착하는 것이다.

시공간 메모리를 인코딩 하기 위해 convolution RNN을 사용하여 block에 붙일 것이고, 이것을 RegNet이라고 칭했다.

그림(a)의 RegNet에서는 ResNet보다 더 풍부한 edge 정보와 더 의미있는 정보를 얻은 것을 볼 수 있다. >> 좀 추상적인 말이라 visualization 해서 설명하는듯

그림(b)에서 볼 수 있듯이 ResNet보다 의미있는 feature들을 사용해 RegNet에서는 더 높은 정확도를 얻었음을 확인할 수 있다.

 

 

Method

Fig3(a)는 RegNet module이고, (b)는 bottleneck RegNet block이다.

RegNet module은 기존 ResNet block 형태에서 ConvRNN을 병렬로 같이 둔 형태이다. 기존 ResNet convolution이 진행되는 중간에 ConvRNN에 feature를 넘겨주고, 이전 block의 ConvRNN 출력도 같이 받는다. ConvRNN의 출력은 다음 block의 ConvRNN의 입력이 되고 같은 block의 3x3 conv+BN+RELU의 아웃풋과 concat 된다.

Bottleneck RegNet block은 큰 이미지를 처리하기 위해 만들어진 형태이다.

ConvRNN은 시공간 문제를 해결하기 위해 기존 RNN에서 FC layer를 conv layer로 대체하여 설계한 네트워크이다.

 

CIFAR-10/100 experiments

CIFAR10/100에서 vanilla ResNet-20보다 더 낮은 분류 error rate를 보여준다.

 

ConvGRU와 ConvLSTM은 layer 수가 20일 때 파라미터를 적게 증가시키지만 vanilla ResNet-32, 56 같은 모델과 비슷한 error rate를 보여준다.

 

 

이전 연구(J. Yosinski, J. Clune, Y. Bengio, and H. Lipson, “How transferable are features in deep neural networks?” CoRR, vol. abs/1411.1792, 2014.)에서 input에 가까운 layer일수록 일반적인 feature를 보여주고 output에 가까운 layer일수록 분류에 더 구체적인 feature를 보여준다.

아래 RegNet 괄호의 숫자는 위의 TABLE 2에서 보듯이 vanilla ResNet에서 conv_1 layer만 convRNN으로 적용했을 때 RegNet(1), conv_2 layer만 convRNN을 적용했을 때는 RegNet(2) 이런식으로 표기했다.

 

위의 결과는 더 일반화된 feature를 제공하는 RegNet(1) network을 사용할 때 vanilla ResNet에서 파라미터가 0.007M 증가할 때 error rate가 제일 크게 줄어들고, 파라미터 증가 대비 성능 증가 효율이 제일 좋다고 말한다. 그에 비해 RegNet(2)와 (3)은 효율이 떨어진다.

제안한 ConvRNN module 기능을 융합하여 새로운 특징을 만들어냈고, input에 가까운 layer가 더 중요한 일반화 feature를 제공한다.

 

ImageNet-1k experiments

ResNet에 별이 붙은 것은 기존 ResNet을 재현한 결과이다.

Table VI 에서는 기존 ResNet보다 성능이 뛰어나다는 것을 보여주고 있다.

Table VII는 ResNet-101보다 RegNet-50이 레이어수와 파라미터가 적음에도 불구하고 성능이 더 좋다는 것을 나타내고 있다.

WRN-18, DenseNet, SE-ResNet-50은 실험을 한건 아니고 수치만 비교하도록 적어놓은 것 같다. 실험을 직접 했다는 부은 찾지 못했다.

리소스 문제로 ResNet에서 발전된 network에 적용은 다음으로 넘긴다고 한다. 뭔가 시원하진 않은 느낌..

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감과 광고 클릭 부탁드립니다~