[논문 리뷰] You Only Look Once: Unified, Real-Time Object Detection(YOLO) - 2016 CVPR

2026. 6. 14. 19:00·AI Research Paper Review/Vision

배경과 문제의식

2016년 이전 객체 탐지는 R-CNN 계열이 지배하고 있었다. R-CNN이 작동하는 방식은 두 단계다.

먼저 Selective Search로 이미지에서 객체가 있을 법한 후보 영역 2,000개를 뽑고, 그 다음 각 영역을 잘라서 CNN에 넣고 분류한다.

즉, 이미지 한 장에 CNN을 2,000번 돌리는 셈이다.

 

Fast R-CNN은 ROI Pooling으로 속도를 개선했고, Faster R-CNN이 RPN으로 Region Proposal까지 학습 가능하게 만들었다.

그래도 한계가 존재하는데, Faster R-CNN의 처리 속도가 초당 7장 수준이었고, 실시간 처리에 필요한 30fps에는 한참 모자랐다.

더욱 근본적인 문제는 Region Proposal과 Classificaition이 분리되어 있어 모델이 전체 이미지 맥락을 한 번에 보지 못한다. 잘라낸 영역만 보기 때문에 배경을 객체로 오탐하는 경우가 잦았다. 파이프라인이 복잡해서 각 단계를 따로 학슶해야 했고, 전체를 end-to-end로 최적화하기로 어려웠다.

 

핵심 아이디어

객체 탐지를 회귀 문제로 재정의해서, 이미지 전체를 단 한 번만 보고 바운딩 박스 좌표와 클래스 확률을 동시 예측한다.

 

기존 방식이 “해당 영역에 강아지가 있는가?”라는 분류 질문을 수천 번 반복했다면, YOLO는 “강아지가 어디에 얼마나 큰 크기로 있는가?”라는 회귀 질문을 이미지 전체에 대해 단 한 번 던진다.

 

x, y, w, h는 이산적인 레이블이 아니라 연속적인 실수이기 때문에, 이를 예측하는 것은 분류가 아닌 회귀가 된다.

 

정리하자면, 한 번의 Forward pass로 이미지를 처리하기 때문에 본 구조명이 “You Only Look Once”이다.

 

아키텍처 구조

 

이미지를 7x7 Grid로 나누고, 객체의 중심점이 어느 셀 안에 들어오면 그 셀이 해당 객체를 담당한다.

 

각 셀은 B=2개의 바운딩 박스와 C=20개의 클래스 확률을 예측한다. 셀 하나의 출력이 5x2+20=30개 숫자다. (5는 x, y, w, h, confidence score)

 

즉, 전체 출력 텐서는 7x7x30이다.

 

24개의 Convolutional Layer로 특징을 추출하고, 2개의 Fully-Connected Layer로 7x7x30 텐서를 직접 예측한다.

 

학습은 ImageNet에서 분류 모델로 사전 학습한 뒤 Detection 태스크로 파인튜닝하는 방식으로 진행된다.

 

 

손실 함수는 (x, y), (w, h), confidence, no-object confidence, Class확률 총 다섯 파트로 구성된다.

 

전부 MSE 기반이며, 좌표와 크기 Loss에는 λ=5를 곱해 위치 오차에 더 큰 페널티를 준다.

 

크기(w, h)는 루트를 써서 작은 박스에서의 오차를 더 민감하게 반영한다.

 

직관적 이해

베테랑 경비원이 CCTV 화면을 보는 방식을 떠올려보자.

 

신입 경비원은 화면을 2,000개 구역으로 나눠서 하나씩 확인한다. "이 구역에 사람이 있나? 없나? 다음 구역. 있나? 없나?"

이게 R-CNN이다. 꼼꼼하지만 느리다.

 

베테랑은 화면 전체를 한 번 훑고 바로 말한다. "왼쪽 문 앞에 사람 하나, 오른쪽 복도에 또 하나." 화면을 잘라서 보는 게 아니라 전체 공간을 머릿속 격자로 나눠서 동시에 파악한다. 이게 YOLO다.

 

핵심은 전체를 본다는 것이다. 구역마다 따로 판단하는 게 아니라 7×7 격자 전체의 맥락을 한 번에 처리하기 때문에, 한 셀이 자기 구역 너머의 정보까지 활용할 수 있다.

 

한계

가장 큰 한계는 한 셀이 하나의 클래스만 예측한다는 구조적 제약이다. 같은 위치에 서로 다른 종류의 객체가 겹쳐 있으면 하나를 놓친다. 새 떼나 군중처럼 작은 객체들이 밀집한 상황에서 특히 취약하다.

 

그리드 크기도 문제다. 7×7이면 셀 하나가 64×64픽셀이다. 셀보다 작은 객체는 중심점이 어느 셀에 속하는지 불명확해지고, 두 작은 객체가 같은 셀에 들어오면 하나만 탐지된다.

 

바운딩 박스 예측이 불안정하다. 미리 정해진 Anchor 없이 크기를 자유롭게 예측하기 때문에 특히 학습에서 보지 못한 비율의 객체에 약하다. 이 문제는 YOLOv2에서 K-means로 뽑은 Anchor Box를 도입하면서 개선된다.

 

정확도 측면에서도 Faster R-CNN보다 mAP가 낮다. 속도와 정확도의 트레이드오프를 명시적으로 택한 논문이기 때문에 이는 의도된 결과다. 다만 실시간 처리가 필요하지 않은 상황에서는 여전히 두 단계 방식이 유리했다.

 

마지막으로 NMS는 학습 과정 밖에 있는 수동 설계 후처리다. 미분이 안 되기 때문에 최적화할 수 없다. 이 한계가 훗날 DETR에서 Hungarian Matching으로 대체되는 배경이 된다.

'AI Research Paper Review > Vision' 카테고리의 다른 글

[논문 리뷰] CLIP : Learning transferable visual models from natural language supervision - 2021 ICML  (0) 2026.06.15
[논문 리뷰] Swin Transformer: Hierarchical Vision Transformer using Shifted Windows - 2021 ICCV  (0) 2026.06.14
[논문 리뷰] An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (ViT) - 2021 ICLR  (0) 2026.06.14
Going Deeper with Convolutions (Szegedy et al.) - [2015 CVPR]  (4) 2025.08.21
VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION (Karen Simonyan & Andrew Zisserman) - [2015 ICLR]  (0) 2025.08.21
'AI Research Paper Review/Vision' 카테고리의 다른 글
  • [논문 리뷰] CLIP : Learning transferable visual models from natural language supervision - 2021 ICML
  • [논문 리뷰] Swin Transformer: Hierarchical Vision Transformer using Shifted Windows - 2021 ICCV
  • [논문 리뷰] An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (ViT) - 2021 ICLR
  • Going Deeper with Convolutions (Szegedy et al.) - [2015 CVPR]
CKtrace
CKtrace
개인 공부 내용 기록을 위한 블로그입니다.
  • CKtrace
    CKtrace's Devlog
    CKtrace
  • 전체
    오늘
    어제
    • My Traces (80)
      • AI Research Paper Review (1)
        • Basic & Milestones of DL (3)
        • Vision (7)
        • Pre-Transformer (7)
        • Post-Transformer (14)
      • Tech Experiments & Study (7)
        • Advanced (2)
        • Basic (5)
      • .etc (41)
        • Python (6)
        • Statistics (19)
        • DB (16)
        • AI (5)
  • My Links

    • GitHub
  • Categories

    langchain
    Database
    머신러닝
    인공지능
    NLP
    Vector search
    llm
    tag
    딥러닝
    기초 통계학
    Vision
    CAG
    BM25
    langgraph
  • hELLO· Designed By정상우.v4.10.4
CKtrace
[논문 리뷰] You Only Look Once: Unified, Real-Time Object Detection(YOLO) - 2016 CVPR
상단으로

티스토리툴바