Ultralytics YOLO27:
Get Started

YOLOX와 YOLOv7 비교#

실시간 객체 탐지의 발전은 지속적인 아키텍처 혁신을 통해 이루어졌습니다. 이 과정의 중요한 이정표 두 가지는 YOLOX와 YOLOv7입니다. 두 모델은 1년 이내의 간격을 두고 출시되었으며, 표준 객체 탐지 패러다임에 새로운 접근법을 도입해 속도와 정확도 사이의 절충점을 크게 개선했습니다.

이 페이지에서는 YOLOX와 YOLOv7의 아키텍처, 성능 지표, 이상적인 사용 사례를 심층적으로 기술 분석하고 비교하여, 개발자가 컴퓨터 비전 배포에 적합한 도구를 선택할 수 있도록 돕습니다.

YOLOX: 앵커 프리 탐지의 선구자#

2021년 7월 Megvii 연구진이 발표한 YOLOX는 기존의 앵커 기반 설계에서 벗어나 큰 변화를 이끌었습니다. 학술 연구와 산업 응용 사이의 간극을 해소하며 YOLOX는 탐지 헤드를 단순화하고 전반적인 성능을 개선했습니다.

주요 모델 정보:

아키텍처 혁신#

YOLOX는 앵커 프리 접근법을 도입해 사용자 지정 데이터셋에서 필요한 설계 파라미터와 휴리스틱 조정을 크게 줄였습니다. 분리형 헤드를 구현해 분류와 회귀 작업을 나누었으며, 이를 통해 수렴 속도와 정확도를 개선했습니다. 또한 모델의 견고성을 높이기 위해 MixUp과 Mosaic 같은 고급 데이터 증강 전략을 활용했습니다.

YOLOX에 대해 자세히 알아보기

앵커 프리 방식의 이점

앵커 상자를 제거함으로써 YOLOX는 학습 중 예측값과 정답값 사이의 교집합 대비 합집합(IoU)을 계산하는 데 필요한 연산 오버헤드를 줄여 CUDA 메모리 요구량을 낮추고 학습 시간을 단축합니다.

YOLOv7: 학습 가능한 무료 성능 향상 기법 모음#

2022년 7월 대만 중앙연구원 정보과학연구소 연구진이 출시한 YOLOv7은 실시간 객체 탐지의 한계를 한층 더 넓혔습니다. YOLOv7은 "학습 가능한 bag-of-freebies" 개념을 도입했으며, 출시 당시 MS COCO 데이터셋에서 새로운 최고 성능 벤치마크를 세웠습니다.

주요 모델 정보:

아키텍처 혁신#

YOLOv7 아키텍처는 확장 효율적 계층 집계 네트워크(E-ELAN)를 기반으로 합니다. 이 구조는 그래디언트 경로를 저하시키지 않으면서 모델이 더 다양한 특징을 지속적으로 학습할 수 있도록 합니다. 또한 YOLOv7은 모델 재매개변수화 기법을 활용해, 복잡한 다중 분기 학습 네트워크를 추론 중 더 빠른 단일 경로 네트워크로 단순화합니다.

YOLOv7에 대해 자세히 알아보기

성능 비교#

실제 애플리케이션에서 이러한 모델을 평가할 때는 다양한 규모에서의 성능을 파악하는 것이 중요합니다. 아래 표는 YOLOX와 YOLOv7의 여러 크기 모델에 대한 표준 지표를 비교합니다.

모델크기
(픽셀)
mAP검증
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

분석#

  • 정확도: YOLOv7은 일반적으로 동급 YOLOX 모델보다 높은 mAP를 달성합니다. 예를 들어 YOLOv7x는 53.1 mAP를 달성해 YOLOXx의 51.1보다 높습니다.
  • 속도: 두 모델 모두 TensorRT를 사용한 GPU 실행에 최적화되어 있지만, YOLOv7의 E-ELAN 아키텍처는 고급 애플리케이션에서 처리량을 조금 더 높여줍니다. 반면 YOLOX는 소형 엣지 장치에서 뛰어난 지연 시간을 유지합니다.
  • 다용도성: YOLOv7은 인스턴스 분할과 자세 추정 가중치를 기본으로 제공해 경계 상자 이외의 기능까지 확장했으며, 기본 YOLOX 저장소보다 활용성이 높습니다.

실제 애플리케이션#

이러한 모델 중 무엇을 선택할지는 대개 구체적인 배포 환경에 따라 결정됩니다.

엣지 컴퓨팅 및 IoT#

Raspberry Pi나 구형 모바일 프로세서처럼 리소스가 제한된 엣지 장치에는 YOLOX-Nano와 YOLOX-Tiny가 매우 매력적인 선택입니다. 파라미터 수가 적고 앵커 프리 방식이므로 기본적인 움직임 추적이나 스마트 초인종 애플리케이션 등의 작업을 저전력 환경에 더 쉽게 배포할 수 있습니다.

고정밀 비디오 분석#

산업용 결함 탐지나 복잡한 교통 모니터링에서 고해상도 스트림을 처리할 때는 YOLOv7이 더 뛰어납니다. 견고한 특징 집계 기능 덕분에 객체가 부분적으로 가려지거나 크기가 크게 달라져도 높은 정확도를 유지할 수 있습니다.

사용 사례 및 권장 사항#

YOLOX와 YOLOv7 중 무엇을 선택할지는 구체적인 프로젝트 요구 사항, 배포 제약 조건, 생태계 선호도에 따라 달라집니다.

YOLOX를 선택해야 하는 경우#

YOLOX는 다음과 같은 경우에 적합합니다.

  • 앵커 프리 탐지 연구: 새로운 탐지 헤드나 손실 함수를 실험하기 위한 기준 모델로 YOLOX의 간결한 앵커 프리 아키텍처를 사용하는 학술 연구입니다.
  • 초경량 엣지 장치: YOLOX-Nano 변형의 매우 작은 풋프린트(0.91M 파라미터)가 중요한 마이크로컨트롤러 또는 구형 모바일 하드웨어에 배포하는 경우입니다.
  • SimOTA 레이블 할당 연구: 최적 수송 기반 레이블 할당 전략과 해당 전략이 학습 수렴에 미치는 영향을 조사하는 연구 프로젝트입니다.

YOLOv7을 선택할 경우#

YOLOv7은 다음과 같은 경우에 권장됩니다.

  • 학술 벤치마킹: 2022년 당시의 최첨단 결과를 재현하거나 E-ELAN 및 학습 가능한 bag-of-freebies 기법의 효과를 연구하는 경우입니다.
  • 재파라미터화 연구: 계획된 재파라미터화 컨볼루션과 복합 모델 스케일링 전략을 조사하는 경우입니다.
  • 기존 커스텀 파이프라인: YOLOv7의 특정 아키텍처를 중심으로 구축되어 쉽게 리팩터링할 수 없는 맞춤형 파이프라인을 사용하는 프로젝트입니다.

Ultralytics(YOLO26)를 선택해야 하는 경우#

대부분의 신규 프로젝트에는 성능과 개발자 경험을 가장 잘 조합한 Ultralytics YOLO26을 권장합니다.

  • NMS가 필요 없는 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관된 저지연 추론이 필요한 애플리케이션입니다.
  • CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 빠른 CPU 추론은 결정적인 이점을 제공합니다.
  • 작은 객체 탐지: 항공 드론 이미지나 IoT 센서 분석과 같이 작은 객체의 정확도를 ProgLoss와 STAL이 크게 높여 주는 까다로운 시나리오입니다.

Ultralytics의 강점#

YOLOX와 YOLOv7은 모두 강력한 연구 구현이지만, 연구 저장소에서 확장 가능한 프로덕션 환경으로 전환하는 일은 부담스러울 수 있습니다. 이때 Ultralytics Platform이 큰 도움이 됩니다.

Ultralytics 모델은 통합 Python API를 제공하며, 모델 학습, 검증, 배포를 간소화되고 표준화된 작업으로 처리합니다. 복잡한 서드파티 종속성이나 구형 아키텍처에서 흔히 사용하는 사용자 지정 C++ 연산자를 관리하는 번거로움을 피할 수 있습니다.

또한 Ultralytics YOLO 모델은 RT-DETR과 같은 Transformer 기반 탐지기보다 학습 중 CUDA 메모리를 훨씬 적게 사용합니다. 따라서 사용자는 더 큰 배치 크기를 활용해 학습을 안정화하고 사용자 지정 데이터셋에서 수렴을 가속할 수 있습니다.

지원되는 통합 기능

Ultralytics는 단일 format 인수로 ONNX, OpenVINO, CoreML과 같은 업계 표준 형식으로 모델을 내보내는 기능을 기본 지원해 모델 배포 절차를 크게 간소화합니다.

코드 예제: Ultralytics를 사용한 학습#

Ultralytics Python 패키지는 YOLOv7 .pt 체크포인트를 기본적으로 학습하거나 실행하지 않습니다(YOLOv7 문서에서 내보낸 ONNX 또는 TensorRT 모델을 실행하는 방법을 확인할 수 있습니다). 하지만 YOLO26과 같은 최신 아키텍처는 코드 몇 줄만으로 불러오고 학습하며 실행할 수 있습니다.

from ultralytics import YOLO

# 사전 학습된 YOLO26 모델 로드
model = YOLO("yolo26n.pt")

# 사용자 지정 데이터셋(예: COCO8)으로 모델 학습
# API가 데이터 로딩, 증강, 메모리 관리를 자동으로 처리합니다
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# 테스트 이미지에서 추론을 실행합니다.
predictions = model("path/to/image.jpg")
predictions[0].show()

미래를 위한 선택: Ultralytics YOLO26#

YOLOv7과 YOLOX는 중요한 역사적 이정표이지만, 최신 기술은 빠르게 발전합니다. 2026년 1월에 출시된 Ultralytics YOLO26은 이전 모델을 뛰어넘는 획기적인 패러다임을 도입했습니다.

  • 엔드투엔드 NMS 프리 설계: YOLO26의 선택적 일대일 헤드(nms=False)는 비최대 억제(NMS) 후처리를 생략합니다. 이를 통해 지연 시간 병목 현상을 크게 줄이고 다양한 하드웨어 구성에서 결정론적인 실행 시간을 보장합니다.
  • 최대 43% 더 빠른 CPU 추론: Distribution Focal Loss (DFL)를 제거하고 네트워크 깊이를 최적화함으로써 YOLO26은 전용 GPU 하드웨어가 없는 엣지 장치에 맞게 고도로 최적화되었습니다.
  • MuSGD 옵티마이저: 고급 LLM 학습 기법에서 영감을 받은 MuSGD 옵티마이저(SGD와 Muon의 하이브리드)는 탁월한 학습 안정성과 빠른 수렴을 제공합니다.
  • 소형 객체 탐지 개선: ProgLoss + STAL 손실 함수의 통합은 작고 멀리 있는 객체의 인식 성능을 크게 향상합니다. 이는 드론 매핑과 보안 감시에 매우 중요합니다.
  • 기본 작업 지원: YOLO26은 간소화된 동일한 API에서 회전 경계 상자(OBB), 인스턴스 분할, 자세 추정을 포괄적으로 기본 지원합니다.

오늘날 새로운 컴퓨터 비전 프로젝트를 시작하는 현대적인 개발자라면 속도, 정확도, 배포 간편성의 최적 균형을 달성하기 위해 Platform에서 Ultralytics YOLO26을 평가하는 것을 권장합니다. YOLO11이나 YOLOv8과 같은 이전 세대에서 업그레이드할 때는 모델 문자열만 변경하면 되므로, 즉시 더 뛰어난 기능을 활용할 수 있습니다.

댓글