안녕하세요, KDST팀 학부연구생 이원준입니다.
2023년 6월 30일에 진행하였던 논문 세미나 내용 간단하게 전달드리겠습니다.
본 논문에서 제안하는 내용은 다음과 같습니다.
- 저자는 vision transformer가 image task에서 이미지를 확인하는 long-range dependency로 인해 성공적으로 적용되고 있다고 말합니다. 하지만 논문에서 기존의 cnn과 vision transformer 사이의 성능과 computational cost 사이의 gap이 존재하는데 이러한 서로간의 장단점을 극복하기 위해 CMT라는 새로운 아키텍쳐를 제안합니다
- Vision transformer의 long-range dependency 뿐만 아니라, CNN의 Local Feature의 장점을 활용한 하이브리드 네트워크, 기존의 Vision transformer에서 CNN 모델만큼 높은 성능을 자랑하는 모델인 CMT를 제안한다.
- Vision transformer가 우수한 성능을 보임에도 불구하고, 그 성능은 여전히 유사한 크기의 CNN에 비해 크게 떨어진다. 이러한 이유의 원인을 3가지라고 논문의 저자는 설명한다.
- 첫번째, 일반적으로 이미지를 패치로 분할하게 되는데, 이렇게 하면 patch-sequence를 transforemer에 직접 입력하기 때문에 patch들 간의 long range dependency를 효과적으로 찾아낸다. 하지만 이는 sequence 기반인 NLP와 이미지 기반의 Vision(각 패치 내의 2D 구조 및 로컬 공간 정보) 간의 근본적인 차이를 무시하게 되는 것이다.
- 두번째, 고정된 patch 크기로 인해 저해상도 및 Multi scale Feature Map 추출에 어려움을 겪는다.
- 세번째, Vision transformer의 연산량은 $ O(N^2C) $인 반면, CNN은 $ O(NC^2) $의 형태이므로, COCO와 같이 높은 해상도 등을 학습시키는데 무리이다.
구체적인 아키텍쳐의 구성은 다음과 같습니다.
- CMT에 도입된 CMT Block은 depth-wise convolution에 의해 local information이 향상된 Block이다.
- 또한, sequence 길이를 점진적으로 줄이고 차원을 증가시키기 위해 stride 2가 있는 4개의 Conv layer를 사용하여 CNN과 유사한 아키텍쳐를 구현하였다. 이로 인해 multi-scale feature를 추출하고 고해상도로 인한 cost 부담을 줄일 수 있다.
- CMT Block의 LPU(Local Perception Unit)와 IRFFN(Inverted Residual Feed-Forward Network)은 로컬과 글로벌 구조 정보를 모두 캡처하고 네트워크의 표현 능력에 도움이 된다.
- 마지막으로, average pooling은 더 나은 분류 결과를 위해 Vision transformer의 class token을 대체하는데 사용된다.
- CNN과 Transformer의 장점을 모두 활용하기 위해 hybrid 방식의 network를 구성한다.
실험 결과는 아래 사진과 같습니다.
Imagenet classification 결과를 보면 동일한 flop에서 accuracy가 기존의 방법보다 상당히 좋고 cnn인 efficientnet보다 상당히 잘나오는것을 볼 수 있습니다. 그리고 flop이 더 높은 것들이랑 비교를 해도 훨씬 좋은 성능을 보여주는걸 확인할 수 있습니다.
자세한 내용은 논문을 참고해주시면 감사하겠습니다.
감사합니다.