반응형
YOLO(You Only Look Once)는 객체 탐지(Object Detection) 분야에서 가장 널리 쓰이는 모델 중 하나이고, Torch(PyTorch)·TensorFlow 같은 딥러닝 프레임워크 위에서 구현·훈련·추론됩니다.
아래는 크게 YOLO 버전별 특징과 PyTorch vs TensorFlow 버전 입니다.
1. YOLO 버전별 발전 과정
🔹 YOLOv1 (2016, Joseph Redmon)
- 최초의 단일 단계(one-stage) 객체 탐지 모델.
- 이미지를 SxS grid로 나눠 bounding box와 class를 예측.
- 속도는 매우 빠르지만 작은 객체 탐지는 약했음.
🔹 YOLOv2 (YOLO9000, 2017)
- Anchor box 도입 (Faster R-CNN 방식 차용).
- Batch normalization 적용 → 정확도 향상.
- 9000개 클래스 동시 탐지 가능(WordTree).
🔹 YOLOv3 (2018)
- Feature Pyramid Network(FPN) → 다중 스케일 탐지 가능.
- Darknet-53 backbone.
- 작은 객체 탐지 성능 개선.
🔹 YOLOv4 (2020, Alexey Bochkovskiy)
- CSPDarknet53 backbone.
- Mosaic augmentation, DropBlock, CIoU loss 등 최신 기법 집약.
- GPU 최적화 → 빠르고 정확.
🔹 YOLOv5 (2020, Ultralytics, PyTorch 기반)
- 공식 연구논문 없이 GitHub에서 공개 → 논란 있었음.
- PyTorch로 작성되어 접근성↑.
- 다양한 모델 크기 제공: v5s, v5m, v5l, v5x.
- 가장 널리 사용되는 실무형 버전.
🔹 YOLOv6 (2022, Meituan)
- 산업 적용 최적화.
- 고속/경량 모델 제공, TensorRT·ONNX 최적화 지원.
🔹 YOLOv7 (2022, Wong Kin-Yiu 팀)
- E-ELAN 구조 → 학습 안정성 향상.
- 당시 SOTA 성능 달성.
- 실시간 성능과 정확도를 동시에 만족.
🔹 YOLOv8 (2023, Ultralytics)
- Ultralytics 공식 차세대 버전.
- Classification, Detection, Segmentation, Pose estimation까지 지원.
- PyTorch 기반, API 사용 편리.
- 가벼운 edge-device부터 서버까지 활용 가능.
🔹 YOLO-NAS, RT-DETR, YOLOv9 등 (2023~2024 이후)
- Neural Architecture Search 기반(YOLO-NAS).
- Transformer 구조 접목(RT-DETR).
- YOLOv9은 연구자들이 다양한 최적화 실험 진행 중.
2. PyTorch vs TensorFlow 버전 비교
🔹 PyTorch YOLO
- 대표: YOLOv5, YOLOv8 (Ultralytics).
- Pythonic API, 직관적인 디버깅 → 연구자/개발자에게 인기.
- Torch Hub, Ultralytics API 등으로 설치·사용 편리.
- Jetson Orin, RTX GPU 등 edge/서버에서 활용 용이.
- ONNX/TensorRT 변환 쉬움.
🔹 TensorFlow YOLO
- 대표: YOLOv3, YOLOv4 TensorFlow Implementation.
- TensorFlow Object Detection API 활용 가능.
- TPU 환경에서 최적화 용이.
- 다만 최근 YOLO 최신 버전은 대부분 PyTorch 우선 개발됨.
- TensorFlow 버전은 주로 community fork에서 유지.
3. 선택 기준
- 최신성/편의성: PyTorch 버전(특히 YOLOv8)이 사실상 표준.
- 산업 적용(TensorRT, Edge Device): PyTorch → ONNX → TensorRT 변환 경로가 풍부.
- TensorFlow Ecosystem (TFX, TPU, TensorFlow Lite) 사용 중이라면 TF YOLO fork 고려.
4. 정리
- YOLO는 v1~v4까지는 Darknet(C/CUDA) 기반.
- v5부터는 PyTorch 중심으로 대세 이동.
- TensorFlow 버전은 존재하지만, 최신 버전은 대부분 PyTorch 우선 개발.
- 연구·실무에서는 YOLOv8(PyTorch), 경량화 inference에서는 TensorRT 변환 모델이 가장 많이 쓰임.
반응형
'AI > Yolo' 카테고리의 다른 글
[ Yolo ] TensorFlow Lite (TFLite) vs. TensorRT 비교하기 (0) | 2025.09.23 |
---|---|
[ Yolo ] 버전별 성능 비교하기 (0) | 2025.09.23 |
[ Yolo ] Yolo 기능 단계하게 정의 (0) | 2025.09.16 |
[ Yolo ] Python과 Yolo 모델로 간단하게 객체 인식해 보기 (0) | 2025.09.16 |
[ Yolo ] 간단하게 이미지에서 객체 분석해보기 (v5, v8) (0) | 2025.09.15 |