콘텐츠로 건너뛰기

YOLO-NAS

중요 업데이트

YOLO-NAS의 원 제작자인 Deci가 NVIDIA에 인수되었다는 점에 유의하십시오. 결과적으로 이러한 모델은 더 이상 Deci에서 활발하게 관리하지 않습니다. Ultralytics는 이러한 모델의 사용을 계속 지원하지만 원래 팀의 추가 업데이트는 예상되지 않습니다.

개요

Deci AI에서 개발한 YOLO-NAS는 획기적인 객체 감지 기본 모델입니다. 이전 YOLO 모델의 한계를 해결하기 위해 세심하게 설계된 고급 신경망 아키텍처 검색 기술의 산물입니다. 양자화 지원 및 정확도-지연 시간 절충이 크게 향상된 YOLO-NAS는 객체 감지의 주요 도약을 나타냅니다.

모델 예시 이미지 YOLO-NAS 개요. YOLO-NAS는 최적의 성능을 위해 양자화 인식 블록과 선택적 양자화를 사용합니다. 이 모델은 INT8 양자화 버전으로 변환될 때 정밀도 손실이 최소화되어 다른 모델에 비해 크게 개선되었습니다. 이러한 개선 사항은 뛰어난 객체 감지 기능과 탁월한 성능을 제공하는 우수한 아키텍처로 완성됩니다.

주요 기능

  • 양자화에 적합한 기본 블록: YOLO-NAS는 이전 YOLO 모델의 중요한 제한 사항 중 하나를 해결하는 양자화에 적합한 새로운 기본 블록을 도입했습니다.
  • 정교한 훈련 및 양자화: YOLO-NAS는 고급 훈련 방식과 훈련 후 양자화를 활용하여 성능을 향상시킵니다.
  • AutoNAC 최적화 및 사전 훈련: YOLO-NAS는 AutoNAC 최적화를 활용하며 COCO, Objects365, Roboflow 100과 같은 주요 데이터 세트에서 사전 훈련되었습니다. 이러한 사전 훈련을 통해 프로덕션 환경에서 다운스트림 객체 감지 작업에 매우 적합합니다.

사전 훈련된 모델

Ultralytics에서 제공하는 사전 훈련된 YOLO-NAS 모델로 차세대 객체 감지의 강력한 성능을 경험해 보십시오. 이러한 모델은 속도와 정확성 모두에서 최고의 성능을 제공하도록 설계되었습니다. 특정 요구 사항에 맞는 다양한 옵션 중에서 선택하십시오.

성능

모델 mAP 지연 시간 (ms)
YOLO-NAS S 47.5 3.21
YOLO-NAS M 51.55 5.85
YOLO-NAS L 52.22 7.87
YOLO-NAS S INT-8 47.03 2.36
YOLO-NAS M INT-8 51.0 3.78
YOLO-NAS L INT-8 52.1 4.78

각 모델 변형은 평균 정밀도(mAP)와 지연 시간 간의 균형을 제공하도록 설계되어 성능과 속도 모두에 대해 객체 감지 작업을 최적화하는 데 도움이 됩니다.

사용 예시

Ultralytics는 YOLO-NAS 모델을 통해 Python 애플리케이션에 쉽게 통합할 수 있도록 했습니다. ultralytics python 패키지를 제공합니다. 이 패키지는 프로세스를 간소화하는 사용자 친화적인 Python API를 제공합니다.

다음 예제에서는 YOLO-NAS 모델을 사용하여 ultralytics 추론 및 유효성 검사를 위한 패키지:

추론 및 유효성 검사 예제

이 예에서는 COCO8 데이터 세트에서 YOLO-NAS-s의 유효성을 검사합니다.

예시

이 예제는 YOLO-NAS에 대한 간단한 추론 및 유효성 검사 코드를 제공합니다. 추론 결과 처리에 대해서는 다음을 참조하십시오. 예측 mode. 추가 모드를 사용하여 YOLO-NAS를 사용하려면 다음을 참조하십시오. Val내보내기. YOLO-NAS는 ultralytics 패키지는 학습을 지원하지 않습니다.

PyTorch 사전 훈련된 *.pt 모델 파일은 다음으로 전달할 수 있습니다. NAS() python에서 모델 인스턴스를 생성하는 클래스:

from ultralytics import NAS

# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")

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

# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")

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

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

# Load a COCO-pretrained YOLO-NAS-s model and validate it's performance on the COCO8 example dataset
yolo val model=yolo_nas_s.pt data=coco8.yaml

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

지원되는 작업 및 모드

Ultralytics는 YOLO-NAS 모델의 세 가지 변형인 Small(s), Medium(m) 및 Large(l)를 제공합니다. 각 변형은 다양한 컴퓨팅 및 성능 요구 사항을 충족하도록 설계되었습니다.

  • YOLO-NAS-s: 컴퓨팅 리소스가 제한적이지만 효율성이 중요한 환경에 최적화되었습니다.
  • YOLO-NAS-m: 더 높은 정확도로 범용 객체 감지에 적합한 균형 잡힌 접근 방식을 제공합니다.
  • YOLO-NAS-l: 컴퓨팅 리소스 제약이 적고 최고 수준의 정확도를 요구하는 시나리오에 적합합니다.

다음은 사전 훈련된 가중치, 지원하는 작업 및 다양한 작동 모드와의 호환성에 대한 링크를 포함하여 각 모델에 대한 자세한 개요입니다.

모델 유형 사전 훈련된 가중치 지원되는 작업 추론 검증 훈련 내보내기
YOLO-NAS-s yolo_nas_s.pt 객체 감지
YOLO-NAS-m yolo_nas_m.pt 객체 감지
YOLO-NAS-l yolo_nas_l.pt 객체 감지

인용 및 감사의 말씀

연구 또는 개발 작업에 YOLO-NAS를 사용하는 경우 SuperGradients를 인용해 주십시오.

@misc{supergradients,
      doi = {10.5281/ZENODO.7789328},
      url = {https://zenodo.org/records/7789328},
      author = {Aharon,  Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova,  Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya,  Eugene and Rubin,  Ran and Bagrov,  Natan and Tymchenko,  Borys and Keren,  Tomer and Zhilko,  Alexander and {Eran-Deci}},
      title = {Super-Gradients},
      publisher = {GitHub},
      journal = {GitHub repository},
      year = {2021},
}

컴퓨터 비전 커뮤니티를 위한 이 귀중한 리소스를 만들고 유지 관리하는 데 힘써주신 Deci AI의 SuperGradients 팀에게 감사를 표합니다. Ultralytics는 혁신적인 아키텍처와 뛰어난 객체 감지 기능을 갖춘 YOLO-NAS가 개발자와 연구자 모두에게 중요한 도구가 될 것이라고 믿습니다.

FAQ

YOLO-NAS는 무엇이며 이전 YOLO 모델에 비해 어떻게 개선되었습니까?

Deci AI에서 개발한 YOLO-NAS는 고급 NAS(Neural Architecture Search) 기술을 활용하는 최첨단 객체 감지 모델입니다. 양자화 친화적인 기본 블록 및 정교한 훈련 체계와 같은 기능을 도입하여 이전 YOLO 모델의 제한 사항을 해결합니다. 이를 통해 특히 컴퓨팅 리소스가 제한된 환경에서 성능이 크게 향상됩니다. YOLO-NAS는 또한 양자화를 지원하여 INT8 버전으로 변환되더라도 높은 정확도를 유지하므로 프로덕션 환경에 더욱 적합합니다. 자세한 내용은 개요 섹션을 참조하십시오.

YOLO-NAS 모델을 Python 애플리케이션에 어떻게 통합할 수 있습니까?

YOLO-NAS 모델을 다음을 사용하여 python 애플리케이션에 쉽게 통합할 수 있습니다. ultralytics 패키지. 다음은 사전 훈련된 YOLO-NAS 모델을 로드하고 추론을 수행하는 간단한 예입니다.

from ultralytics import NAS

# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")

# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")

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

자세한 내용은 추론 및 유효성 검사 예제를 참조하십시오.

YOLO-NAS의 주요 기능은 무엇이며, 왜 사용해야 할까요?

YOLO-NAS는 객체 감지 작업에 탁월한 선택이 되도록 하는 몇 가지 주요 기능을 도입했습니다.

  • 양자화 친화적인 기본 블록: 양자화 후 최소한의 정밀도 손실로 모델 성능을 향상시키는 향상된 아키텍처입니다.
  • 정교한 훈련 및 양자화: 고급 훈련 체계 및 훈련 후 양자화 기술을 사용합니다.
  • AutoNAC 최적화 및 사전 훈련: AutoNAC 최적화를 활용하고 COCO, Objects365 및 Roboflow 100과 같은 주요 데이터 세트에서 사전 훈련되었습니다.

이러한 기능은 높은 정확도, 효율적인 성능 및 프로덕션 환경에서의 배포 적합성에 기여합니다. 자세한 내용은 주요 기능 섹션을 참조하십시오.

YOLO-NAS 모델은 어떤 작업과 모드를 지원합니까?

YOLO-NAS 모델은 추론, 유효성 검사 및 내보내기와 같은 다양한 객체 감지 작업 및 모드를 지원합니다. 학습은 지원하지 않습니다. 지원되는 모델에는 YOLO-NAS-s, YOLO-NAS-m 및 YOLO-NAS-l이 포함되며, 각 모델은 다양한 컴퓨팅 용량 및 성능 요구 사항에 맞게 조정됩니다. 자세한 내용은 지원되는 작업 및 모드 섹션을 참조하십시오.

사전 훈련된 YOLO-NAS 모델이 있습니까? 있다면 어떻게 액세스할 수 있습니까?

예, Ultralytics는 직접 액세스할 수 있는 사전 훈련된 YOLO-NAS 모델을 제공합니다. 이러한 모델은 COCO와 같은 데이터 세트에서 사전 훈련되어 속도와 정확도 모두에서 높은 성능을 보장합니다. 사전 훈련된 모델 섹션에 제공된 링크를 사용하여 이러한 모델을 다운로드할 수 있습니다. 몇 가지 예는 다음과 같습니다.



📅 1년 전에 생성됨 ✏️ 5개월 전에 업데이트됨

댓글