상세 컨텐츠

본문 제목

[5주차/강민채/논문 리뷰] YOLOv7

2023 Summer Session/CV Team 1

by eahcnim 2023. 8. 4. 15:26

본문

 

YOLOv7 논문은 Inference cost의 증가 없이 detection accuracy를 향상시키는 것을 목표로 한다.
그 방식을 'Trainable bag-of-freebies'이라고 하며, 저자들은 구체적으로 model reparameterization & Label assginment 에 관한 방식을 제안한다.

 

0. Base

현재 Real-time object detector 중 SOTA 모델은 YOLO에 기반한 모델인데, 다음과 같은 특성 요구된다.

  • 빠르고 강한 network architecture
  • 효율적인 feature integratino method
  • 정확한 detection method
  • 탄탄한 loss function
  • 효율적인 label assignment
  • 효율적인 training method

YOLOv7은 위의 특성 중 마지막 3가지와 관련된 문제점들을 해결하기 위한 방안들을 다음과 같이 제시한다.

 

 

1. Reparameterization

기본적인 model reparameterization은, training 시에는 여러 개의 레이어를 학습하고,  inference 시에 하나의 레이어로 fusing(=reparameterization)하는 technique이다(≒앙상블).
그러나 다른 아키텍처에 완벽하게 적용될 수 있는 것이 아니기 때문에, YOLOv7은 다양한 아키텍처에 적용 가능한 전략을 새로 설계한다.

또한, 기존에 사용되던 모델 스케일링 방법 NAS는 상관관계가 크지 않은 요인들을 다루기 때문에, 연결 기반인 새 *아키텍처에 맞는 스케일링 방법을 함께 제시한다.

*Architecture

VoVNet → CSPVoVNet → ELAN을 거쳐, 장점을 그대로 살리되 ELAN의 단점(computation block을 무한대 가까이 쌓을 경우 안정성이 무너짐)을 보완하는 E-ELAN을 제안한다.

- 가장 짧고, 가장 긴 gradient path를 제어하여 네트워크가 효과적으로 학습 & 수렴한다.

- 이 과정에서 original gradient path를 파괴하지 않고 학습 능력을 지속적으로 향상시킨다.

- computation block을 많이 쌓아도 학습 능력이 뛰어나다.

- computational block만 바뀌고 transition layer는 바뀌지 않는다(group convolution 사용).


Planned re-parameterized convolution

기존 RepConv는 ResNet의 잔차와 DenseNet의 연결을 파괴한다.

→ YOLOv7에서는 RepConv without identity connection(RepConvN)으로 설계한다.
residual & concatenation이 있는 conv layer는 re-parameterized conv으로 대체된다(identity connection은 없어야 함).

 

 

2. Dynamic label assignment

기존의 label assignment는 G.T.에 따라 label을 생성했다. 하지만 최근에는 네트워크에 의한 output의 품질/분포를 사용해 최적화 방법을 사용하여 label을 고려한다.

YOLOv7은 네트워크 예측 결과를 G.T.와 함께 고려하여 label을 할당하고(label assigment), 그 방식은 다음과 같다.

[ Lead head guided label assigner ]

- lead head(최종 출력을 담당)와 auziliary head(학습을 보조)를 구분한다.
   * 기존 label assignment 방법들은 lead head와 auxiliary head가 동시에 있을 경우 soft label을 만들어내지 못함.

- lead head와 G.T.의 예측 결과를 기반으로 lead head guided label assginer를 계산한다.

- lead head guided label assigner는 최적화를 거쳐 soft label(G.T.와 bbox regression의 IOU)을 생성한다.

- 생성된 soft label은 auxiliary head와 lead head 모두에 대해 target training model로 사용된다.

 

 

[ Coarse-to-fine lead head guided label assigner ] 

마찬가지로 lead head와 G.T.를 이용해 soft label을 생성하지만, 두 가지의 soft label을 생성한다.

Fine label: lead head guided labe assigner와 같은 label. lead head의 학습에만 사용한다.
- Coarse label: grid를 더 positive taget으로 여겨지도록 생성된 label. constraint를 완화해 너무 완벽하고 섬세한 label이 만들어지는 것을 방지. auxiliary head의 학습에만 사용한다.

→ 구분하는 이유: lead head는 high recall, precision 모두 가능하나, auxiliary head는 그럴 능력이 없음. 학습해야 할 정보가 손실되지 않게 하기 위해 recall 최적화에만 집중하도록 만들어야 함(coarse label만 학습하게 만들어야 함).

 

 

3. Conclusion / Attributions

해당 methods를 통해 파라미터 수가 40% 감소하고, 계산량의 50%가 감소했다. 빠른 inference time과 높은 accuracy를 달성하였으며, 이를 바탕으로 현재의 real time object detection SOTA 모델이 개발되었다.

 

 

4. Reference

https://inni-iii.tistory.com/50

https://da2so.tistory.com/59

https://developer-wh.tistory.com/entry/%EA%BC%BC%EA%BC%BC%ED%95%98%EA%B2%8C-%EB%85%BC%EB%AC%B8-%EC%9D%BD%EA%B8%B0-yolov7-Trainable-bag-of-freebies-sets-new-state-of-the-art-for-real-time-object-detectors-1-2022

 

관련글 더보기

댓글 영역