콘텐츠로 건너뛰기

Meituan YOLOv6

개요

2022년에 출시된 Meituan YOLOv6는 속도와 정확도 사이의 강력한 균형을 제공하여 실시간 애플리케이션에 인기 있는 선택입니다. 이 모델은 양방향 연결(BiC) 모듈, 앵커 지원 훈련(AAT) 전략, 그리고 COCO 데이터셋에서 높은 정확도를 위한 개선된 백본 및 넥 디자인을 포함하여 아키텍처 및 훈련 방식에 여러 주목할 만한 개선 사항을 도입했습니다.

Meituan의 YOLOv6 객체 탐지 모델YOLOv6 아키텍처 다이어그램YOLOv6 개요. 재설계된 네트워크 구성 요소와 학습 전략을 보여주는 모델 아키텍처 다이어그램으로, 상당한 성능 향상을 가져왔습니다. (a) YOLOv6의 neck (N 및 S 표시). M/L의 경우 RepBlocks가 CSPStackRep으로 대체됩니다. (b) BiC 모듈의 구조. (c) SimCSPSPPF 블록. (소스)입니다.

주요 기능

  • 양방향 연결 (BiC) 모듈: YOLOv6는 detector의 neck에 BiC 모듈을 도입하여 localization 신호를 강화하고 속도 저하를 최소화하면서 성능 향상을 제공합니다.
  • Anchor-Aided Training (AAT) 전략: 이 모델은 추론 효율성을 저해하지 않으면서 anchor-기반anchor-free 패러다임의 이점을 모두 누릴 수 있도록 AAT를 제안합니다.
  • 향상된 백본 및 넥 디자인: YOLOv6의 백본과 넥에 한 단계를 더 추가하여 심화함으로써, 이 모델은 출시 당시 고해상도 입력에서 COCO 데이터셋에 대해 강력한 성능을 달성했습니다.
  • 자기 증류 전략: YOLOv6의 소형 모델 성능을 향상시키기 위해 새로운 자기 증류 전략이 구현되었습니다. 이는 학습 중 보조 회귀 분기를 강화하고, 추론 시에는 이를 제거하여 현저한 속도 저하를 방지합니다.

성능 지표

YOLOv6는 다양한 스케일의 사전 학습된 모델을 제공합니다:

  • YOLOv6-N: NVIDIA T4 GPU에서 1187 FPS로 COCO val2017에서 37.5% AP.
  • YOLOv6-S: 484 FPS에서 45.0% AP.
  • YOLOv6-M: 226 FPS에서 50.0% AP.
  • YOLOv6-L: 116 FPS에서 52.8% AP.
  • YOLOv6-L6: 실시간으로 최첨단 정확도.

YOLOv6는 또한 다양한 정밀도를 위한 양자화 모델과 모바일 플랫폼에 최적화된 모델을 제공합니다.

사용 예시

이 예제는 간단한6 훈련 및 추론 예시를 제공합니다. 이러한 모드 및 기타 모드에 대한 전체 문서는 예측, 훈련, 검증내보내기 문서 페이지를 참조하십시오.

예시

6 *.yaml 파일을 다음으로 전달하여 YOLO() Python에서 해당 모델을 빌드하는 클래스:

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

# Display model information (optional)
model.info()

# 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 YOLOv6n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

모델을 직접 실행하는 데 사용할 수 있는 CLI 명령은 다음과 같습니다.

# Build a YOLOv6n model from scratch and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov6n.yaml data=coco8.yaml epochs=100 imgsz=640

# Build a YOLOv6n model from scratch and run inference on the 'bus.jpg' image
yolo predict model=yolov6n.yaml source=path/to/bus.jpg

지원되는 작업 및 모드

YOLOv6 시리즈는 고성능 객체 detect에 최적화된 다양한 모델을 제공합니다. 이 모델들은 다양한 계산 요구 사항과 정확도 요구 사항을 충족하여 광범위한 애플리케이션에 다용도로 활용될 수 있습니다.

모델파일 이름태스크추론검증훈련내보내기
YOLOv6-Nyolov6n.yaml객체 감지
YOLOv6-Syolov6s.yaml객체 감지
YOLOv6-Myolov6m.yaml객체 감지
YOLOv6-Lyolov6l.yaml객체 감지
YOLOv6-Xyolov6x.yaml객체 감지

이 표는 YOLOv6 모델 변형에 대한 자세한 개요를 제공하며, 객체 detect 작업에서의 기능과 추론, 검증, 학습, 내보내기와 같은 다양한 운영 모드와의 호환성을 강조합니다. 이러한 포괄적인 지원을 통해 사용자는 광범위한 객체 detect 시나리오에서 YOLOv6 모델의 기능을 최대한 활용할 수 있습니다.

인용 및 감사의 말씀

실시간 객체 감지 분야에 크게 기여해 주신 다음 제작자들에게 감사를 표합니다.

@misc{li2023yolov6,
      title={YOLOv6 v3.0: A Full-Scale Reloading},
      author={Chuyi Li and Lulu Li and Yifei Geng and Hongliang Jiang and Meng Cheng and Bo Zhang and Zaidan Ke and Xiaoming Xu and Xiangxiang Chu},
      year={2023},
      eprint={2301.05586},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

원본 YOLOv6 논문은 arXiv에서 확인할 수 있습니다. 저자들은 자신들의 작업을 공개적으로 이용 가능하게 했으며, 코드베이스는 GitHub에서 접근할 수 있습니다. 저자들이 이 분야를 발전시키고 그들의 작업을 더 넓은 커뮤니티에 공개한 노력에 감사드립니다.

FAQ

Meituan YOLOv6는 무엇이며, 어떤 점이 독특한가요?

2022년에 출시된 Meituan YOLOv6는 실시간 애플리케이션을 위해 설계된, 속도와 정확도의 균형을 맞춘 객체 detect기입니다. 이 모델은 양방향 연결(BiC) 모듈 및 앵커 지원 훈련(AAT) 전략과 같은 주목할 만한 아키텍처 개선 사항을 특징으로 합니다. 이러한 혁신은 속도 저하를 최소화하면서 상당한 성능 향상을 제공하여 YOLOv6를 객체 detect 작업에 경쟁력 있는 선택으로 만듭니다.

YOLOv6의 Bi-directional Concatenation (BiC) 모듈은 어떻게 성능을 향상시키나요?

YOLOv6의 양방향 연결(BiC) 모듈은 detect기의 넥(neck) 부분에서 지역화 신호를 강화하여 속도에 미미한 영향을 미치면서 성능 향상을 제공합니다. 이 모듈은 서로 다른 특징 맵을 효과적으로 결합하여 객체를 정확하게 detect하는 모델의 능력을 향상시킵니다. YOLOv6의 기능에 대한 자세한 내용은 주요 기능 섹션을 참조하십시오.

Ultralytics를 사용하여 YOLOv6 모델을 어떻게 학습시킬 수 있나요?

Ultralytics를 사용하여 간단한 python 또는 CLI 명령으로 YOLOv6 모델을 학습시킬 수 있습니다. 예를 들어:

예시

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

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

자세한 내용은 Train 페이지를 참조하십시오.

YOLOv6의 다양한 버전과 성능 지표는 무엇인가요?

YOLOv6는 다양한 성능 요구 사항에 최적화된 여러 버전을 제공합니다:

  • YOLOv6-N: 1187 FPS에서 37.5% AP
  • YOLOv6-S: 484 FPS에서 45.0% AP
  • YOLOv6-M: 226 FPS에서 50.0% AP
  • YOLOv6-L: 116 FPS에서 52.8% AP
  • YOLOv6-L6: 실시간 시나리오에서 최첨단 정확도

이 모델들은 NVIDIA T4 GPU를 사용하여 COCO 데이터셋에서 평가되었습니다. 성능 지표에 대한 자세한 내용은 성능 지표 섹션을 참조하십시오.

Anchor-Aided Training (AAT) 전략은 YOLOv6에 어떤 이점을 제공하나요?

YOLOv6의 앵커 지원 학습(AAT)은 앵커 기반 및 앵커 프리 접근 방식의 요소를 결합하여 추론 효율성을 저해하지 않으면서 모델의 detect 기능을 향상시킵니다. 이 전략은 학습 중에 앵커를 활용하여 바운딩 박스 예측을 개선함으로써 YOLOv6가 다양한 객체 detect 작업에서 효과적으로 작동하도록 합니다.

Ultralytics의 YOLOv6 모델에서 지원되는 운영 모드는 무엇인가요?

YOLOv6는 추론, 검증, 학습, 내보내기를 포함한 다양한 운영 모드를 지원합니다. 이러한 유연성을 통해 사용자는 다양한 시나리오에서 모델의 기능을 최대한 활용할 수 있습니다. 각 모드에 대한 자세한 개요는 지원되는 작업 및 모드 섹션을 참조하십시오.



5; 2 년 전에 생성됨 ✏️ 2 전에 업데이트됨
glenn-jocherpderrengerLaughing-qY-T-GMatthewNoyceRizwanMunawar

댓글