[Review]Network In Network, 2014

redgreen·2021년 4월 11일
0

PaperReview

목록 보기
2/9

Network In Network, 2014

Min Lin, Qiang Chen, Shuicheng Yan



Introduction

  • 논문에서 기존 CNN을 generalized linear model(GLM) 이라고 언급하며, nonlinear(비선형) 함수 추정치를 사용하면 특성 추출 성능을 향상시킬 수 있을 것이라고 한다. 그래서 논문의 저자들은 multilayer perceptron을 사용하여 mlpconv layer라 불리는 micro network를 linear convolution layer 사이에 추가하였다고 한다. 그리고 일반적으로 CNN 층 뒤에 사용하는 fully-connected layer를 사용하지 않고 global average pooling layer와 softmax layer를 사용하여 바로 출력값을 만들어 내었다고 한다.

Convolutional Neural Networks

  • 기존의 CNN은 linear(선형성인)한 연산을 수행하기 때문에 input data의 nonlinear(비선형성)한 특징을 처리하기 위해서 많은 수의 filter를 사용하고, 그로 인해 다음 layer에 매우 많은 연산량을 부과하게 된다고 주장한다.
  • latent concept이 매우 복잡한 분포를 가지고 있을 때, local patch들로 부터 더욱 추상적인 특징들을 얻어낼 수 있도록 convolution layer 사이에 micro network를 도입하는 Network In Network 구조를 제시하였다.

Network In Network


MLP Convolution Layers

  • MLP를 micro network로 사용한 이유
    • mutlilayer perceptron은 convolutional neural network과 함께 역전파 학습이 가능
    • multilayer perceptron은 그 자체로 매우 깊은 모델이 될 수 있음
  • 1x1 크기 kernel을 가진 convolution layer의 연산과 동일하다고 한다.

Global Average Pooling

  • 일반적으로 CNN에서 얻은 feature vector를 fully-connected layer와 연결하여 사용하는데, 이는 over-fitting을 일으켜 신경망의 일반화 성능을 방해한다고 논문의 저자들은 주장하였다.
  • 위의 FC layer에서 발생하는 문제를 해결하기 위해 global average pooling을 사용하였다고 한다.
  • global average pooling은 쉽게 이해할 수 있고, 파라미터가 없어 over-fitting을 피할 수 있다는 장점이 있다고 주장한다. 그리고 공간 정보(spatial information)를 합치기 때문에 input의 공간번역(spatial translation)의 관점에서 robust하다고 하였다.



Experiments

  • 논문에서는 CIFAR-10, CIFA-100, SVHN, MNIST 등 여러 데이터셋을 사용하여 실험을 진행하였다.
  • 3겹의 mlpconv layer를 maxpooling과 함께 사용하였고, regularization을 위해 마지막 mlpconv layer에는 dropout을 사용하였다고 한다.
  • 앞서 나왔듯 FC layer 대신 global average pooling을 사용하였고, weight decay도 규제항으로 추가하였다고 한다.
  • 결과적으로 여러 데이터셋에서 SOTA 모델보다 좋은 성능을 거두었고, dropout을 사용했을 때 그 성능이 더 향상되었다고 한다.

Global Average Pooling as a Regularizer

  • global average pooling의 규제효과를 확인하기 위하여 Hinton의 기존 CNN모델에서 비교실험을 진행하였다고 한다.

    Conventional CNN : 17.56%
    Conventional CNN(with dropout) : 15.99%
    conventional CNN(with AGP) : 16.46%

  • dropout을 추가한 모델보다는 성능이 낮았지만, 어느정도의 규제성능을 확인할 수 있다.

Visualization of NIN

  • global average pooling을 사용하기 때문에, 위의 추출된 특성맵에서 이미지의 ground-truth에 맞는 맵이 강하게 활성화된 것을 확인할 수 있다.

총평

  • Global Average Pooling을 FC layer 대체하는 것이나 Convolution layer 사이에 micro network를 넣는 것은 최근에 사용되지 않는 것 같은데, 그 이유에 대해서 찾아보는 것도 좋을 것 같다.
  • 논문 내에서 Maxout Network가 자주 언급되는데 이 모형에 대해서도 조사를 해보면 좋을 것 같다.
profile
인공지능 꿈나무

0개의 댓글