Ultralytics YOLO27: 대기자 명단에 등록하세요.
Get Started
첫 YOLO 모델 학습하기·예측·레슨 3/10
강의초급

Ultralytics YOLO 모델 크기 선택하기

YOLO26 n, s, m, l, x를 비교하고 대상 하드웨어에서 벤치마크를 실행해 지연 시간 예산에 맞는 가장 작은 크기를 선택합니다.

너무 큰 크기를 선택하면 30 FPS 카메라 앱이 12 FPS로 실행되고, 너무 작은 크기를 선택하면 GPU에서 더 큰 모델을 사용했을 때 추가 비용 없이 얻을 수 있는 정확도를 포기하게 됩니다. 학습하는 크기를 그대로 배포하므로, 이 선택은 긴 학습 실행 전에 해야 합니다.

YOLO26은 7가지 작업 모두에 n, s, m, l, x의 다섯 가지 크기로 제공됩니다: detect, segment, 의미론적 분할, classify, pose, OBB, depth. 이 강의에서는 프레임 속도를 밀리초 예산으로 환산하고, 직접 사용하는 머신에서 Benchmark 모드로 두 가지 크기를 측정한 다음 적절한 크기를 선택합니다.

학습 성과

프레임 속도 목표를 밀리초 예산으로 환산하고, 하드웨어에서 YOLO26 크기를 벤치마크한 뒤 첫 번째 선택과 대안을 한 줄로 설명할 수 있습니다.

속성 과정
이미 사용법을 알고 계신다면, 간단히 요약해 드리겠습니다.
  1. 예산 = 1000 ÷ 목표 FPS입니다. 30 FPS라면 모든 작업에 프레임당 33ms가 주어집니다.

  2. 대상 머신에서 yolo benchmark ... format=onnx를 사용해 yolo26n과 yolo26s을 벤치마크합니다.

  3. 여유 시간을 확보하면서 예산에 맞는 가장 작은 크기를 선택하고, coco8의 벤치마크 mAP는 무시합니다.

  4. 해당 모델을 학습하고, 자체 검증 세트의 정확도가 부족한 경우에만 한 단계 큰 크기로 올립니다.

실습형

모델 라인업 파악하기#

Ultralytics Platform 모델 페이지의 Overview 탭으로, 학습된 모델의 요약 지표와 세부 정보를 표시합니다.

다음은 YOLO26 문서에 수록된 공식 COCO 검출 수치이며, 모두 640픽셀 기준입니다:

모델파라미터(M)FLOPs(B)mAP50-95CPU ONNX(ms)T4 TensorRT10(ms)
yolo26n2.45.540.938.91.7
yolo26s9.520.948.687.22.5
yolo26m20.468.453.1220.04.7
yolo26l24.886.855.0286.26.2
yolo26x55.7194.457.5525.811.8

모든 작업에 모든 크기가 제공됩니다. yolo26s-seg.pt, yolo26s-sem.pt, yolo26s-depth.pt, yolo26s-cls.pt, yolo26s-pose.pt, yolo26s-obb.pt처럼 접미사를 바꾸면 됩니다. 이전 프로젝트를 마이그레이션하시나요? YOLO11과 YOLO26 비교에서 변경 사항을 확인하세요.

표를 "다음 크기를 선택하면 비용이 얼마나 들까?"라는 관점으로 읽어 보세요:

단계증가한 mAP추가 FLOPsCPU 지연 시간 배수
n → s+7.7×3.8×2.2
s → m+4.5×3.3×2.5
m → l+1.9×1.3×1.3
l → x+2.5×2.2×1.8

첫 번째 단계의 비용 대비 효과가 가장 좋습니다. m 이후에는 COCO 정확도를 한 점 올리는 데 드는 비용이 커집니다. 다양한 80개 클래스를 포함하는 COCO는 대부분의 실제 프로젝트보다 어렵습니다. 컨베이어 위의 제품 한 종류처럼 범위가 좁은 작업에서는 n과 s가 m보다 정확도가 한 점 이내로 낮은 경우가 많습니다.

예산부터 시작하기#

추론 지연 시간 예산은 1000ms ÷ 목표 FPS이며, 모델은 디코딩, 그리기, 자체 로직과 이 예산을 나눠 써야 합니다. 일반적인 시작점:

목표시작 크기
휴대폰, Raspberry Pi, 브라우저 또는 기타 소형 엣지 AI 장치n
노트북 또는 데스크톱 CPU, 10–30 FPSn부터 시작하고, 여유가 있으면 s을 사용합니다.
단일 GPU, 실시간 동영상s 또는 m
오프라인 배치 처리, 정확도 우선l 또는 x

예제: 두 가지 크기 측정하기#

벤치마크 모드는 모델을 내보내고 coco8에서 검증한 다음, 사용자의 머신에서 추론 시간을 측정합니다. format=onnx을 지정하면 실행이 하나의 형식으로 제한되어 몇 초 안에 완료됩니다. 모든 내보내기 형식을 비교하려면 이 옵션을 생략하세요.

yolo benchmark model=yolo26n.pt imgsz=640 format=onnx
yolo benchmark model=yolo26s.pt imgsz=640 format=onnx

Apple M5 Pro 노트북 CPU에서 측정한 실제 결과:

|     Format   Status❔   Size (MB)   metrics/mAP50-95(B)   Inference time (ms/im)   FPS   |
| 1   ONNX     ✅         9.5         0.6693                13.87                    72.08 |   <- yolo26n
| 1   ONNX     ✅         36.5        0.6654                30.87                    32.39 |   <- yolo26s

30 FPS(33 ms) 예산을 기준으로 살펴보면:

  • yolo26n, 13.87 ms: 디코딩과 그리기에 19 ms가 남아 여유 있게 예산에 들어옵니다.
  • yolo26s, 30.87 ms: 이론상 예산에 들어오지만 다른 작업을 처리할 여유는 없습니다. 같은 벤치마크도 머신에서 다른 작업이 실행 중일 때는 60 ms가 걸렸습니다.
  • Size (MB): 앱 다운로드와 모바일 메모리에 영향을 주는 ONNX 파일 크기입니다.
  • metrics/mAP50-95(B): 여기서는 무시하세요. coco8에는 검증 이미지가 4장뿐이므로 내보내기가 제대로 작동하는지는 확인할 수 있지만, 정확도를 비교하기에는 턱없이 부족합니다.

결정: 먼저 yolo26n을 학습하고, 대안으로 yolo26s을 더 낮은 imgsz로 유지합니다.

이런 실수는 피하세요#

잘못된 장치에서 벤치마크하기

증상: 노트북에서 70 FPS로 실행되던 모델이 엣지 장치에서는 8 FPS로 실행됩니다. 해결 방법: 실제 부하(다른 프로세스, 카메라 디코딩, 실제 런타임 형식)를 적용해 모델을 실행할 장치에서 벤치마크하세요.

서로 다른 설정에서 모델 크기 비교하기

증상: 메모에 "s가 n보다 빨랐다"고 적혀 있습니다. 원인: 한 번은 imgsz=480을 사용했거나 형식이 달랐습니다. 해결 방법: 동일한 imgsz, 형식, 배치에서 모델 크기를 비교하고, 한 번에 하나의 변수만 변경하세요.

배포할 크기로 학습하기

더 작은 아키텍처를 사용하려면 다시 학습해야 하므로, x을 학습하고 나중에 n로 줄이기 위해 모델 가지치기나 양자화를 사용할 계획은 세우지 마십시오. 먼저 모델 크기를 선택하고, 양자화는 적절한 크기를 대체하는 수단이 아니라 선택한 크기에 추가적인 속도 향상을 더하는 방법으로 사용하십시오.

배칭, 양자화, 런타임 선택 등 더 심층적인 지연 시간 개선은 Production 과정의 비용 및 지연 시간 튜닝에서 다루며, 성능 지표 가이드에서는 각 정확도 수치를 설명합니다.

사용해 보기

프로젝트의 대상 장치와 프레임 속도를 정하세요. 해당 장치(또는 보유한 장치 중 가장 유사한 머신)에서 format=onnx를 사용해 yolo26n과 yolo26s을 벤치마크한 다음, 세 줄로 크기 선택을 정리하세요. ms 예산, 측정한 두 지연 시간, 먼저 학습할 크기와 대안 크기를 적습니다.

완료 조건
다음 조건을 모두 충족하면 레슨을 완료한 것입니다.
  • 동일한 imgsz 및 형식에서 두 가지 YOLO26 크기의 이미지당 ms를 측정했습니다.

  • 프레임당 예산을 밀리초 단위로 작성했고, 각 크기에서 남는 여유 시간도 기록했습니다.

  • 먼저 학습할 크기와 대안 크기를 선택하고, 그 이유를 한 문장으로 작성했습니다.

정답 보기
Budget:   30 FPS on a laptop CPU -> 33 ms per frame, shared with decode and drawing
Measured: ONNX at 640 -> yolo26n 13.9 ms (19 ms headroom), yolo26s 30.9 ms (none; 60 ms under load)
Decision: train yolo26n first. If accuracy on our val set falls short,
          try yolo26s at imgsz=480 and re-benchmark before committing.
다음 단계

학습할 모델을 정했습니다. 다음으로 데이터를 Ultralytics YOLO에서 요구하는 폴더 및 레이블 형식으로 구성하세요.