I'm Lim

[논문 요약] ZFNet 본문

Classification/Paper

[논문 요약] ZFNet

imlim 2022. 11. 6. 00:30

1. Paper

  Zeiler, Matthew D., and Rob Fergus. "Visualizing and understanding convolutional networks." European conference on computer vision. Springer, Cham, 2014.

2. Introduction

  이 논문은 ILSVRC 2012 우승을 차지한 AlexNet 모델을 분석합니다. AlexNet 모델의 성능이 굉장히 좋은 것은 사실이지만, 왜 그런지에 대한 설명은 없고, 그렇기 때문에 성능 개선시킬 수 있는지도 알 수 없습니다. 이 논문에서는 그 이유에 대해 분석하고, 모델을 개선시킴으로써 AlexNet보다 우수한 성능을 달성했습니다.

3. Visualization with a Deconvnet

1 ) DeconvNet (Transposed Convolution)

 

  Convolution 연산이 filtering, pooling으로 이루어지는 것을 역으로 연산하여 원래의 feature map 크기로 되돌려놓는 연산입니다. 실제로는 역연산이 아니라 Transpose 과정을 거치기 때문에 torch에서는 ConvTranspose라는 이름으로 구현이 되어있습니다.

 

i ) Unpooling

   

  Max-pooling은 역연산이 가능한 것이 아니므로 미리 Pooling 연산시 Max값을 따로 switch 변수에 저장해 놓습니다. 그리고, unpooling 연산시 이 switch를 이용하여 정보의 위치를 복원합니다.

 

ii ) Rectification

 

  ReLU와 동일한 연산을 수행합니다.

 

iii ) Filtering

 

  Convolution 연산 시 얻었던 feature map에 transpose를 취한 후, 이를 Unpooling-Rectification을 거친 map에 적용합니다.

 

 

ConvTranspose 연산 과정

4. ConvNet Visualization

  위 Deconvolution 연산을 이용하여 시각화시킨 결과로 초반부 레이어에서는 low-level feature가 나타나고, 후반부 레이어에서는 high-level feature가 나타나는 것을 보여주었습니다. 

 

AlexNet을 시각화 시켰을 때, 첫 번째 레이어에는 극단적인 High frequency information과 Low frequency information이 섞여있었다고 합니다. 또한, 두 번째 레이어에서는 Alias 현상이 발생했다고 합니다.

이러한 문제를 해결하기 위해, ZFNet은 첫 번째 레이어의 kernel size를 11에서 7로 줄이고, stride를 4에서 2로 감소시켰습니다.

5. Model Architecture

 

  kernel_size stride padding in_channel out_channel input_shape
conv (LRN) 7 2 1 3 96 (3, 224, 224)
MaxPool 3 2 1     (96, 110, 110)
conv (LRN) 5 2   96 256 (96, 55, 55)
MaxPool 3 2 1     (256, 26, 26)
conv 3 1 1 256 512 (256, 13, 13)
conv 3 1 1 512 1024 (256, 13, 13)
conv 3 1 1 1024 512 (384, 13, 13)
Maxpool 3 2       (256, 13, 13)
linear (Dropout)       512 * 6 * 6 4096 (256 * 6 * 6, )
linear (Dropout)       4096 4096 (4096, )
linear       4096 1000 (4096, )

※ 표는 최고성능을 보인 모델 기준입니다.

6. Result

  AlexNet에서 약간만 수정시킨 ZFNet 모델은 AlexNet보다 뛰어난 성능을 보였다. 

7. Experiment

1 ) ImageNet Dataset

 

  모델 학습을 위해 본 논문에서는 ImageNet 데이터셋을 사용하였고, AlexNet의 전처리 과정을 그대로 사용하였습니다.

 

2 ) Feature Generalization

 

  이 논문에서는 Pre-trained 기법을 적극 활용하였습니다. 데이터 셋에 맞게 마지막 layer의 out_features만을 수정함으로써 (데이터 셋의 크기에 맞게) 빠르게 학습을 시킬 수 있었다고 합니다. 그 결과 Caltech 데이터 셋에서는 SOTA를 기록하였다고 합니다.

그러나, PASCAL 데이터 셋에서는 SOTA 모델에 비해 3.2% 낮은 mean performance를 보였는데 이는 PASCAL 데이터 셋이 Pre-trained에 사용되었던 ImageNet 데이터 셋과 차이가 있어서라고 합니다.


Discussion

  본 논문은 AlexNet 모델이 각 레이어에서 어떤 feature를 추출하는지 시각화하였고, 이를 통해 모델을 적절히 개선시켰다는 점에서 의미가 있습니다.

'Classification > Paper' 카테고리의 다른 글

[논문 요약] AlexNet  (0) 2022.10.31
[논문 요약] LeNet  (0) 2022.10.30
Comments