본문 바로가기
IT/영상 처리

[논문 분석] VGGnet / Receptive filed - VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION

by 빨강자몽 2018. 10. 15.

VGGnet

  • 논문 링크 : https://arxiv.org/pdf/1409.1556.pdf
  • 2014 ILSVRC에서 GoogleNet에 밀려 2등한 network이지만 구조적 단순함 때문에 이해하기 쉽고 구조 변형이 쉬워 많이 사용되어진다.
  • GoogleNet, VGGnet 이전의 depth는 8layers 수준에서 머물렀다면 GoogleNet, VGGnet 이후 크게 깊어졌다.


  • 깊이(Network depth)의 경우 깊어지면 깊어질 수록 복잡한 문제를 해결할 수 있다는 장점이 있지만, 어느 이상 증가하게 되면 성능효과가 미비해지는 문제와 파라미터의 증가(학습시간의 증가), Vanishing / Exploding Gradient 문제가 발생하게 된다.


  • VGGNet 논문의 목적 ? 망의 깊이가 결과에 어떤 영향을 미치는가?

  • 오로지 3 * 3 filter를 stack으로 쌓아 receptive filed를 넓혀 효율적으로 깊게(more deeper)만들면 좋은 결과를 얻을 수 있다. (receptive filter 설명은 밑에)

  • 3*3 filter을 사용하여 6개의 깊이의 network를 구성하였다.



  • 테스트 결과 1  : 깊이가 깊어질 수록 error율 감소
    (19 깊이 이상에서는 error율이 더이상 감소하지 않았지만, 다른 데이터에서는 유용할 수도 있다.) 
  • 테스트 결과 2 : Single scale보다 multiple scale 에러율이 더 낮게 나왔다.
  • 테스트 결과 3 : multi-crop의 성능이 dense보다 성능이 약간 더 좋으며, 두 개를 동시에 쓰면 더 좋은 성능을 보인다.





Receprive filed

  • Filter 3 * 3를 여러개 Stack으로 여러 쌓게 되면 receptive filed를 늘릴 수 있다.
  • 예를들어 3 * 3 Filter을 stride 1로 2 stack 쌓게된다면 receptive filed 5 * 5가 된다.
  • 논문의 B구조에서 테스트 결과, 3*3의 2 stacks 구조가 5*5의 1 stacks 구조보다 top-1 error에서 약 7프로의 좋은 성능을 보였다.  
  • 장점 1 : receptive filed가 증가하게 된다면, parameter 필요 수의 감소로 학습속도를 높일 수 있다.
    (5*5 필터를 사용하게 되면 25개, 3*3 필터 2 stack을 하게 되면 18개의 parameter가 필요하다.)
  • 장점 2 : 단순한 방식을 이용하여 network를 깊게 만들어 error율을 낮출 수 있다.