콘텐츠로 건너뛰기

YOLO12: Attention-Centric Object Detection

개요

YOLO12는 이전 YOLO 모델에서 사용된 기존 CNN 기반 접근 방식에서 벗어난 주의 중심 아키텍처를 도입했지만, 많은 애플리케이션에 필수적인 실시간 추론 속도를 유지합니다. 이 모델은 주의 메커니즘과 전체 네트워크 아키텍처의 새로운 방법론적 혁신을 통해 최첨단 객체 감지 정확도를 달성하는 동시에 실시간 성능을 유지합니다.



참고: Ultralytics 패키지로 객체 감지를 위해 YOLO12를 사용하는 방법 | YOLO12는 빠른가요, 느린가요? 🚀

주요 기능

  • 영역 어텐션 메커니즘: 큰 수용 영역을 효율적으로 처리하는 새로운 self-attention 방식입니다. 특징 맵을 수평 또는 수직으로 l개의 동일한 크기의 영역(기본값 4)으로 나누어 복잡한 연산을 피하고 큰 유효 수용 영역을 유지합니다. 이는 표준 self-attention에 비해 계산 비용을 크게 줄입니다.
  • Residual Efficient Layer Aggregation Networks (R-ELAN): ELAN을 기반으로 하는 개선된 특징 통합 모듈로, 특히 대규모 Attention 중심 모델에서 최적화 문제를 해결하도록 설계되었습니다. R-ELAN은 다음을 도입합니다.
    • 스케일링을 사용한 블록 수준 잔차 연결(레이어 스케일링과 유사).
    • 병목 유사 구조를 생성하는 재설계된 특징 집계 방법입니다.
  • 최적화된 어텐션 아키텍처: YOLO12는 YOLO 프레임워크와의 호환성 및 효율성을 높이기 위해 표준 어텐션 메커니즘을 간소화합니다. 여기에는 다음이 포함됩니다.
    • FlashAttention을 사용하여 메모리 액세스 오버헤드를 최소화합니다.
    • 더 깔끔하고 빠른 모델을 위해 위치 인코딩을 제거합니다.
    • 어텐션 레이어와 피드 포워드 레이어 간의 계산 균형을 더 잘 맞추기 위해 MLP 비율(일반적인 4에서 1.2 또는 2로)을 조정합니다.
    • 향상된 최적화를 위해 스택 블록의 깊이를 줄입니다.
    • 계산 효율성을 위해 (적절한 경우) 컨볼루션 연산을 활용합니다.
    • 위치 정보를 암묵적으로 인코딩하기 위해 어텐션 메커니즘에 7x7 분리 가능한 컨볼루션("position perceiver")을 추가합니다.
  • 포괄적인 작업 지원: YOLO12는 객체 감지, 인스턴스 분할, 이미지 분류, 자세 추정 및 방향 객체 감지(OBB)와 같은 핵심 컴퓨터 비전 작업을 지원합니다.
  • 향상된 효율성: 많은 이전 모델에 비해 더 적은 매개변수로 더 높은 정확도를 달성하여 속도와 정확도 간의 균형을 개선했음을 보여줍니다.
  • 유연한 배포: 엣지 장치에서 클라우드 인프라에 이르기까지 다양한 플랫폼에 걸쳐 배포할 수 있도록 설계되었습니다.

YOLO12 비교 시각화

지원되는 작업 및 모드

YOLO12는 다양한 컴퓨터 비전 작업을 지원합니다. 아래 표는 각 작업에 대해 활성화된 작업 지원 및 작동 모드(추론, 유효성 검사, 학습 및 내보내기)를 보여줍니다.

모델 유형 작업 추론 검증 훈련 내보내기
YOLO12 객체 탐지
YOLO12-seg Segmentation
YOLO12-pose 포즈
YOLO12-cls 분류
YOLO12-obb OBB

성능 지표

YOLO12는 모든 모델 스케일에서 상당한 정확도 향상을 보여주지만, 가장 빠른 이전 YOLO 모델에 비해 속도 면에서 약간의 절충이 있습니다. 다음은 COCO 유효성 검사 데이터 세트에서 객체 감지에 대한 정량적 결과입니다.

감지 성능 (COCO val2017)

성능

모델 크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT
(ms)
파라미터
(M)
FLOPs
(B)
비교
(mAP/속도)
YOLO12n 640 40.6 - 1.64 2.6 6.5 +2.1% /-9% (vs. YOLOv10n)
YOLO12s 640 48.0 - 2.61 9.3 21.4 +0.1% /+42% (vs. RT-DETRv2)
YOLO12m 640 52.5 - 4.86 20.2 67.5 +1.0% /-3% (vs. YOLO11m)
YOLO12l 640 53.7 - 6.77 26.4 88.9 +0.4% /-8% (vs. YOLO11l)
YOLO12x 640 55.2 - 11.79 59.1 199.0 +0.6% /-4% (vs. YOLO11x)
  • 추론 속도는 TensorRT FP16 정밀도로 NVIDIA T4 GPU에서 측정되었습니다.
  • 비교는 mAP의 상대적 개선과 속도 변화율(양수는 더 빠름, 음수는 더 느림)을 보여줍니다. 비교는 가능한 경우 YOLOv10, YOLO11 및 RT-DETR에 대해 게시된 결과를 기준으로 이루어집니다.

사용 예시

이 섹션에서는 YOLO12를 사용한 훈련 및 추론에 대한 예제를 제공합니다. 이러한 모드 및 기타 모드(유효성 검사내보내기 포함)에 대한 자세한 설명서는 전용 예측훈련 페이지를 참조하십시오.

아래 예제에서는 YOLO12 Detect 모델(객체 감지용)에 중점을 둡니다. 다른 지원되는 작업(분할, 분류, 방향 객체 감지 및 포즈 추정)에 대해서는 각 작업별 문서(Segment, Classify, OBBPose)를 참조하십시오.

예시

사전 훈련됨 *.pt 모델(다음을 사용하여 PyTorch) 및 구성 *.yaml 파일을 다음으로 전달하여 YOLO() Python에서 모델 인스턴스를 생성할 수 있습니다:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO12n model
model = YOLO("yolo12n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO12n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

명령줄 인터페이스(CLI) 명령도 사용할 수 있습니다.

# Load a COCO-pretrained YOLO12n model and train on the COCO8 example dataset for 100 epochs
yolo train model=yolo12n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO12n model and run inference on the 'bus.jpg' image
yolo predict model=yolo12n.pt source=path/to/bus.jpg

주요 개선 사항

  1. 향상된 특징 추출:

    • 영역 어텐션: 큰 수용 영역을 효율적으로 처리하여 계산 비용을 줄입니다.
    • 최적화된 균형: 어텐션 및 피드 포워드 네트워크 계산 간의 균형이 향상되었습니다.
    • R-ELAN: R-ELAN 아키텍처를 사용하여 특징 집계를 향상시킵니다.
  2. 최적화 혁신:

    • 잔차 연결: 특히 더 큰 모델에서 훈련을 안정화하기 위해 스케일링을 통해 잔차 연결을 도입합니다.
    • 개선된 기능 통합: R-ELAN 내에서 기능 통합을 위한 개선된 방법을 구현합니다.
    • FlashAttention: 메모리 액세스 오버헤드를 줄이기 위해 FlashAttention을 통합합니다.
  3. 아키텍처 효율성:

    • 매개변수 감소: 이전 모델과 비교하여 정확도를 유지하거나 향상시키면서 더 적은 매개변수 수를 달성합니다.
    • 간소화된 어텐션: 위치 인코딩을 피하면서 단순화된 어텐션 구현을 사용합니다.
    • 최적화된 MLP 비율: 계산 리소스를 보다 효과적으로 할당하기 위해 MLP 비율을 조정합니다.

요구 사항

Ultralytics YOLO12 구현은 기본적으로 FlashAttention을 필요로 하지 않습니다. 그러나 FlashAttention은 선택적으로 컴파일하여 YOLO12와 함께 사용할 수 있습니다. FlashAttention을 컴파일하려면 다음 NVIDIA GPU 중 하나가 필요합니다.

인용 및 감사의 말씀

연구에 YOLO12를 사용하는 경우, University at BuffaloUniversity of Chinese Academy of Sciences의 원본 연구를 인용해 주십시오:

@article{tian2025yolov12,
  title={YOLOv12: Attention-Centric Real-Time Object Detectors},
  author={Tian, Yunjie and Ye, Qixiang and Doermann, David},
  journal={arXiv preprint arXiv:2502.12524},
  year={2025}
}

@software{yolo12,
  author = {Tian, Yunjie and Ye, Qixiang and Doermann, David},
  title = {YOLOv12: Attention-Centric Real-Time Object Detectors},
  year = {2025},
  url = {https://github.com/sunsmarterjie/yolov12},
  license = {AGPL-3.0}
}

FAQ

YOLO12는 높은 정확도를 유지하면서 실시간 객체 감지를 어떻게 달성합니까?

YOLO12는 속도와 정확도의 균형을 맞추기 위해 몇 가지 주요 혁신 기술을 통합했습니다. 영역 주의 메커니즘은 표준 자체 주의에 비해 연산 비용을 줄이면서 큰 수용 필드를 효율적으로 처리합니다. 잔차 효율적 레이어 집계 네트워크(R-ELAN)는 특징 집계를 개선하여 더 큰 주의 중심 모델에서 최적화 문제를 해결합니다. FlashAttention 사용 및 위치 인코딩 제거를 포함한 최적화된 주의 아키텍처는 효율성을 더욱 향상시킵니다. 이러한 기능을 통해 YOLO12는 많은 애플리케이션에 중요한 실시간 추론 속도를 유지하면서 최첨단 정확도를 달성할 수 있습니다.

YOLO12는 어떤 컴퓨터 비전 작업을 지원합니까?

YOLO12는 광범위한 핵심 컴퓨터 비전 작업을 지원하는 다재다능한 모델입니다. 객체 감지, 인스턴스 분할, 이미지 분류, 포즈 추정 및 방향 객체 감지(OBB)(자세한 내용 참조)에 탁월합니다. 이러한 포괄적인 작업 지원 덕분에 YOLO12는 로봇 공학 및 자율 주행에서 의료 영상 및 산업 검사에 이르기까지 다양한 애플리케이션을 위한 강력한 도구입니다. 이러한 각 작업은 추론, 유효성 검사, 학습 및 내보내기 모드에서 수행할 수 있습니다.

YOLO12는 다른 YOLO 모델 및 RT-DETR과 같은 경쟁 모델과 어떻게 비교됩니까?

YOLO12는 YOLOv10 및 YOLO11과 같은 이전 YOLO 모델에 비해 모든 모델 스케일에서 상당한 정확도 향상을 보여주지만, 가장 빠른 이전 모델에 비해 속도 면에서 일부 절충이 있습니다. 예를 들어 YOLO12n은 COCO val2017 데이터 세트에서 YOLOv10n보다 +2.1% mAP, YOLO11n보다 +1.2% 향상된 성능을 보입니다. RT-DETR과 같은 모델과 비교했을 때 YOLO12s는 +1.5% mAP 향상과 상당한 +42% 속도 향상을 제공합니다. 이러한 지표는 YOLO12의 정확성과 효율성 간의 강력한 균형을 강조합니다. 자세한 비교는 성능 지표 섹션을 참조하십시오.

YOLO12 실행, 특히 FlashAttention 사용을 위한 하드웨어 요구 사항은 무엇인가요?

기본적으로 Ultralytics YOLO12 구현에는 FlashAttention이 필요하지 않습니다. 그러나 메모리 액세스 오버헤드를 최소화하기 위해 FlashAttention을 선택적으로 컴파일하여 YOLO12와 함께 사용할 수 있습니다. FlashAttention을 컴파일하려면 다음 NVIDIA GPU 중 하나가 필요합니다. Turing GPU(예: T4, Quadro RTX 시리즈), Ampere GPU(예: RTX30 시리즈, A30/40/100), Ada Lovelace GPU(예: RTX40 시리즈) 또는 Hopper GPU(예: H100/H200). 이러한 유연성을 통해 사용자는 하드웨어 리소스가 허용될 때 FlashAttention의 이점을 활용할 수 있습니다.

YOLO12에 대한 사용 예제와 더 자세한 문서는 어디에서 찾을 수 있습니까?

이 페이지에서는 학습 및 추론에 대한 기본적인 사용 예제를 제공합니다. 유효성 검사내보내기를 포함한 이러한 모드 및 기타 모드에 대한 포괄적인 문서는 전용 예측학습 페이지를 참조하십시오. 작업별 정보(분할, 분류, 방향 객체 감지 및 포즈 추정)는 해당 문서인 분할, 분류, OBB포즈를 참조하십시오. 이러한 리소스는 다양한 시나리오에서 YOLO12를 효과적으로 활용하기 위한 심층적인 지침을 제공합니다.



📅 6개월 전에 생성됨 ✏️ 2개월 전에 업데이트됨

댓글