논문 리뷰, 구현

5.Network in Network 논문 리뷰

jwjwvison 2022. 7. 3. 11:18

 이번 포스팅에서는 Network in Network 논문을 리뷰해보겠다. Google Net에서 NIN모델을 이용했다는데 이 점이 궁금하여 이 논문을 읽어보았다.

 

Abstract

 이 논문의 저자들은 network in network 이라는 새로운 deep network structure를 제안했다. 수용장 내에서 local patches의 모델 차별성을 향상시키기위해 전통적인 합성곱층은 input을 scan한 비선형 활성화함수 뒤에 선형 필터를 사용했다.대신 이들은 수용장 내에서 데이터를 추출하기위해 더 복잡한 구조인 micro neural network를 만들었다. 이들은 다층 퍼셉트론으로 micro neural network를 인스턴트화 했는데 이것은 potent function approximator이다. 특성맵은 CNN과 유사한 방식으로 마이크로 네트워크를 입력 위로 밀어 넣음으로써 얻을 수 있고 이들은 다음 층으로 들어간다. Deep NIN은 위에서 설명한 구조들이 여러개 쌓이면서 구현될 수 있다.micro network를 통한 향상된 local modeling으로 인해, 이 논문의 저자들은 분류층에 있는 특성맵에 걸쳐서 global average pooling을 이용할 수 있는데 이는 전통적인 완전 연결층보다 해석하기 쉽고 덜 과대적합된다.

 

Introduction

 CNN은 번갈아 가는 컨볼류션 풀링 층으로 구성된다. convolution 층은 선형 필터와 기본 수용장 내부 곱을 취한 다음 입력의 모든 로컬 부분에서 비선형 활성화 함수를 취한다. 이 결과로 나온 것을 특성맵이라고 한다. 이들은 CNN에 있는 convolution  filter는 기본 데이터 patch에 대한 일반화된 선형 모델(GLM)이며, GLM에서는 추상화 수준이 낮다고 주장한다. 추상화를 통해 이들은 특징이 동일한 개념의 변형에 대해 불변함을 의미한다.

 

 GML은 잠재 개념의 표본이 선형적으로 분리될 수 있을 떄, 즉 개념의 변형이 모두 GLM에 의해 정의된 분리 평면의 한 면에 존재하게 될 때 상당한 수준의 추상화를 달성할 수 있다. 따라서 기존의 CNN은 잠재된 개념들이 선형적으로 분리 가능하다고 암시적으로 가정한다.

 

 그러나 동일한 개념에 대한 데이터는 종종 비선형 다양체에 존재하므로 이러한 개념을 포착하는 표현은 일반적으로 입력의 고도의 비선형 함수이다.

 

 NIN 에서는 GLM은 일반적으로 비선형 함수 근사기인 micro network 구조로 대체된다. 이 연구에서 이들은 다층 퍼셉트론을 micro network의 인스턴트화로 선택했는데 이는 보편적 함수 근사치 이며 역전파에 의해 훈련이 가능한 신경망이다.

NIN의 전반적인 구조는 다층의 mlpconv layers를 stacking한 구조이다.

 

CNN에서 분류를 위해 완전히 연결된 기존의 층을 채택하는 대신 마지막 mlpconv 층의 특성맵의 공간 평균을 범주의 신뢰도로 전역 평균 풀링 층을 통해 직접 출력한 다음 결과 벡터가 소프트 맥스 층으로 공급된다.

 

 기존 CNN에서는 중간에 블랙박스 역할을 하는 완전 연결된 층으로 인해 목표 비용 층의 카테고리 수준 정보가 이전 합성곱 층으로 전달되는 방식을 해석하기 어렵다. 반대로 전역 풀링 은 특성 맵과 카테고리 간의 대응성을 적용하기 때문에 더 의미 있고 해석 할 수 있다. 이는 micro network를 사용한 보다 강력한 로컬 모델링을 통해 가능하다.

 

 완전연결층은 overfitting할 수 있으며 dropout 정규화에 크게 의존한다. 평균 풀링은 그 자체로 정규화 될 수 있고, 전체 구조에 대한 overfitting을 기본적으로 방지한다.

 

 

Network in Network

 

1. MLP Convolution Layers

 

잠재 개념(latent concepts)의 분포에 대한 사전지식이 없다면, local patches의 특칭 추출을 위해 보편 함수 근사치를 사용하는 것이 바람직하며, 이는 잠재 개념의 보다 추상적인 표현을 근사화할 수 있기 떄문이다.

 

 논문의 저자들이 multilayer perceptron을 연구에 사용한 이유는 두가지가 있다. 첫번째는 multilayer percptron은 훈련될때 역전파를 사용하는 CNN에 적합하다. 두번째는 multilayer perceptron은 그 자체로 심층 모델이 될수 있다.

 

 이 논문에서 이러한 새로운 타입의 층을 mlpconv라고 이는 GLM을 대체하는 MLP라고 한다. mlpconv layer에 의해 계산되는 공식은 다음과 같다.

n은 층의 수이고, 활성화 함수로 ReLU가 사용되었다.

 

Cross channel(cross feature map)관점에서 위 식은 normal convolutionlayer의 계단식 cross channel parametric pooling과 동일하다. 각 풀링 층은 입력 feature map에서 가중 선형 재조합을 수행한 다음 rectifier linear unit을 거친다. cross channel pooled 특성맵은 다음 레이어에서 계속해서 cross channel pooling된다. 이 cascaded cross channel parameteric pooling 구조를 통해 교차 채널 정보의 복잡하고 학습 가능한 상호 작용을 할 수 있다.

 

 cross channel parametric pooling층은 또한 1x1 convolution kernel 과 같다. 즉, 논문에서 비선형적인 잠재공간을 더 추상화할 수 있게 Micro Neural networks를 사용했고, 이것을 Mlpconv layer로 정했는데 이건 CCCP와 같다. CCCP는 또한 1x1 convolution layer와 같은것이다.

 

 이렇게 유도된 1x1 convolution은 channel reduction의 효과로 인해 훗날 GoogleNet 및 여러 논문에서 사용된다.

 

2. Global Average Pooling

 완전 연결 층은 overfitting 되기 쉽다. 따라서 전체 네트워크의 일반화 능력을 저해한다. 이 논문의 저자들은 CNN의 전통적인 완전연결층을 대체하기위해 global average pooling 이라는 다른 전략을 제안했다. 이 아이디어는 마지막 mlpconv 계층에서 분류 작업의 각 카테고리에 대해 하나의 특성 맵을 생성하는 것이다. 완전연결층을 특성맵 위에 추가하는 대신 이들은 특성맵의 평균을 측정하고 결과벡터를 softmax 층에 주입했다.

 

 Global average pooling의 장점중 하나는 특성 맵과 카테고리간에 대응성을 적용하면서 합성곱 구조에 더 native하다는 것이다. 그러므로 특성맵은 카테고리 신뢰 맵으로 쉽게 해석할 수 있다.

 다른 장점은 파라미터가 없어서 이 층에서는 overfitting이 일어나지 않는다는 것이다. 더군다나 global average pooling층은 공간적인 정보를 요약하므로 입력의 공간 변환에 더 강력하다.

 

3. Network in Network structure

 Figure 2는 3개의 mlpconv 레이어가 있는 NIN을 보여준다. 각 mlpconv 층에는 3층 지각 전자가 있다. NIN과 micro network 층의 수는 유연하며 특정 작업에 맞게 조정될 수 있다. NIN의 전체 구조는 mlpconv 층의 스택이며, 그 위에 글로벌 평균 풀링과 목표 비용 레이어가 있다.

 

Experiments

'논문 리뷰, 구현' 카테고리의 다른 글

7. DenseNet 논문 리뷰,구현  (0) 2022.07.03
6. ResNet 논문 리뷰, 구현  (0) 2022.07.03
4.GoogleNet 논문 리뷰, 구현  (0) 2022.06.29
3.VGG 논문 리뷰,구현  (0) 2022.06.29
2. AlexNet 논문 리뷰,구현  (0) 2022.06.28