Roboflow 100 데이터 세트
Roboflow 100, 후원사 Intel은 획기적인 객체 감지 벤치마크 데이터 세트입니다. 여기에는 Roboflow Universe에서 제공되는 90,000개 이상의 공개 데이터 세트에서 샘플링된 100개의 다양한 데이터 세트가 포함되어 있습니다. 이 벤치마크는 의료, 항공 이미지, 비디오 게임 등 다양한 영역에 대한 Ultralytics YOLO 모델과 같은 컴퓨터 비전 모델의 적응성을 테스트하기 위해 특별히 고안되었습니다.
라이선스
Ultralytics 다양한 사용 사례를 수용하기 위해 두 가지 라이선스 옵션을 제공합니다:
- AGPL-3.0 라이선스: 이 OSI 승인 오픈소스 라이선스는 개방형 협업과 지식 공유를 장려하는 학생과 애호가에게 이상적입니다. 자세한 내용은 라이선스 파일을 참조하고 AGPL-3.0 라이선스 페이지를 방문하세요.
- 엔터프라이즈 라이선스: 상업적 사용을 위해 설계된 이 라이선스를 사용하면 Ultralytics 소프트웨어와 AI 모델을 상업용 제품 및 서비스에 원활하게 통합할 수 있습니다. 시나리오에 상업용 애플리케이션이 포함되는 경우, Ultralytics 라이선싱을 통해 문의하시기 바랍니다.
주요 기능
- 다양한 도메인: 7가지 영역에 걸쳐 100개의 데이터 세트가 포함되어 있습니다: 항공, 비디오 게임, 현미경, 수중, 문서, 전자기, 실제 세계.
- 규모: 벤치마크는 805개 클래스에 걸쳐 224,714개의 이미지로 구성되어 있으며, 이는 11,170시간 이상의 데이터 라벨링 작업을 의미합니다.
- 표준화: 일관된 평가를 위해 모든 이미지가 전처리되고 640x640픽셀로 크기가 조정됩니다.
- 클린 평가: 클래스 모호성을 제거하는 데 초점을 맞추고, 대표되지 않는 클래스를 필터링하여 보다 깔끔한 모델 평가를 보장합니다.
- 주석: 객체에 대한 경계 상자를 포함하며, mAP와 같은 메트릭을 사용하여 객체 감지 모델을 훈련하고 평가하는 데 적합합니다.
데이터 세트 구조
Roboflow 100 데이터 세트는 7개의 카테고리로 구성되어 있으며, 각 카테고리에는 고유한 데이터 세트, 이미지 및 클래스 컬렉션이 포함되어 있습니다:
- Aerial: 7개 데이터 세트, 9,683개 이미지, 24개 클래스.
- 비디오 게임: 7개 데이터 세트, 11,579개 이미지, 88개 클래스.
- 현미경: 11개의 데이터 세트, 13,378개의 이미지, 28개의 클래스.
- 수중: 5개 데이터 세트, 18,003개 이미지, 39개 클래스.
- 문서: 8개 데이터 세트, 24,813개 이미지, 90개 클래스.
- 전자기: 12개 데이터 세트, 36,381개 이미지, 41개 클래스.
- 실제 세계: 50개의 데이터 세트, 110,615개의 이미지, 495개의 클래스.
이 구조는 다양한 Ultralytics 솔루션에서 볼 수 있는 다양한 실제 애플리케이션 시나리오를 반영하여 객체 감지 모델을 위한 다양하고 광범위한 테스트 기반을 제공합니다.
벤치마킹
데이터 세트 벤치마킹은 표준화된 메트릭을 사용하여 특정 데이터 세트에서 머신 러닝 모델의 성능을 평가하는 것을 포함합니다. 일반적인 메트릭에는 정확도, 평균 정밀도(mAP) 및 F1 점수가 포함됩니다. 이에 대한 자세한 내용은 YOLO 성능 메트릭 가이드에서 확인할 수 있습니다.
벤치마킹 결과
제공된 스크립트를 사용한 벤치마킹 결과는 다음과 같이 ultralytics-benchmarks/
디렉토리, 특히 evaluation.txt
.
벤치마킹 예시
다음 스크립트는 Roboflow 100 벤치마크 내의 모든 100개 데이터 세트에 대해 Ultralytics YOLO 모델(예: YOLOv11n)을 프로그래밍 방식으로 벤치마킹하는 방법을 보여 줍니다. RF100Benchmark
클래스.
import os
import shutil
from pathlib import Path
from ultralytics.utils.benchmarks import RF100Benchmark
# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")
# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"
# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
path = Path(path)
if path.exists():
# Fix YAML file and run training
benchmark.fix_yaml(str(path))
os.system(f"yolo detect train data={path} model=yolo11s.pt epochs=1 batch=16")
# Run validation and evaluate
os.system(f"yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1")
benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)
# Remove the 'runs' directory
runs_dir = Path.cwd() / "runs"
shutil.rmtree(runs_dir)
else:
print("YAML file path does not exist")
continue
print("RF100 Benchmarking completed!")
애플리케이션
Roboflow 100은 컴퓨터 비전 및 딥 러닝과 관련된 다양한 애플리케이션에 매우 유용합니다. 연구자와 엔지니어는 이 벤치마크를 활용하여 다음과 같은 작업을 수행할 수 있습니다:
- 다중 도메인 컨텍스트에서 개체 감지 모델의 성능을 평가하세요.
- COCO 또는 PASCAL VOC와 같은 일반적인 벤치마크 데이터 세트를 넘어 실제 시나리오에 대한 모델의 적응성과 견고성을 테스트합니다.
- 의료, 항공 이미지, 비디오 게임과 같은 전문 분야를 포함한 다양한 데이터 세트에서 객체 감지 모델의 기능을 벤치마킹하세요.
- 다양한 신경망 아키텍처와 최적화 기법에서 모델 성능을 비교합니다.
- 전문화된 모델 훈련 팁이나 전이 학습과 같은 미세 조정이 필요할 수 있는 도메인별 과제를 파악합니다.
실제 애플리케이션에 대한 더 많은 아이디어와 영감을 얻으려면 실제 프로젝트에 대한 가이드를 살펴보거나 간소화된 모델 교육 및 배포를 위한 Ultralytics HUB를 확인하세요.
사용법
메타데이터와 다운로드 링크를 포함한 Roboflow 100 데이터 세트는 공식 웹사이트에서 확인할 수 있습니다. Roboflow 100 GitHub 리포지토리. 벤치마킹에 필요한 데이터 세트에 직접 액세스하여 활용할 수 있습니다. Ultralytics RF100Benchmark
유틸리티를 사용하면 이러한 데이터 집합을 다운로드하여 Ultralytics 모델에 사용할 수 있도록 준비하는 과정이 간소화됩니다.
샘플 데이터 및 주석
Roboflow 100은 다양한 각도와 영역에서 캡처한 다양한 이미지가 포함된 데이터 세트로 구성되어 있습니다. 아래는 RF100 벤치마크에 포함된 주석이 달린 이미지의 예시로, 다양한 물체와 장면을 보여줍니다. 데이터 증강과 같은 기술을 사용하면 훈련 중에 다양성을 더욱 향상시킬 수 있습니다.
Roboflow 100 벤치마크에서 볼 수 있는 다양성은 제한된 영역 내에서 단일 지표를 최적화하는 데 중점을 두는 기존 벤치마크에서 크게 발전한 것입니다. 이러한 포괄적인 접근 방식은 다양한 시나리오에서 우수한 성능을 발휘할 수 있는 보다 강력하고 다재다능한 컴퓨터 비전 모델을 개발하는 데 도움이 됩니다.
인용 및 감사
연구 또는 개발 작업에 Roboflow 100 데이터셋을 사용하는 경우 원본 논문을 인용해 주세요:
컴퓨터 비전 커뮤니티를 위한 귀중한 리소스인 Roboflow 100 데이터 세트를 만들고 유지하는 데 많은 노력을 기울인 Roboflow 팀과 모든 기여자에게 감사를 표합니다.
객체 감지 및 머신러닝 프로젝트를 개선하기 위해 더 많은 데이터 세트를 탐색하고 싶다면, 다양한 감지 데이터 세트가 포함된 종합 데이터 세트 컬렉션을 방문해 보세요.
자주 묻는 질문
Roboflow 100 데이터 세트는 무엇이며, 객체 감지에 중요한 이유는 무엇인가요?
Roboflow 100 데이터 세트는 객체 감지 모델을 위한 벤치마크입니다. 이 데이터 세트는 의료, 항공 이미지, 비디오 게임과 같은 분야를 포괄하는 Roboflow Universe에서 제공하는 100개의 다양한 데이터 세트로 구성되어 있습니다. 이 테스트는 도메인에 국한된 기존의 벤치마크를 넘어 광범위한 실제 시나리오에서 모델의 적응성과 견고성을 테스트할 수 있는 표준화된 방법을 제공한다는 점에서 의미가 있습니다.
Roboflow 100 데이터 세트에는 어떤 도메인이 포함되나요?
Roboflow 100 데이터 세트는 7개의 다양한 도메인에 걸쳐 있으며, 객체 감지 모델에 고유한 과제를 제시합니다:
- 항공: 7개의 데이터 세트(예: 위성 이미지, 드론 뷰).
- 비디오 게임: 7개의 데이터 세트(예: 다양한 게임 환경의 오브젝트).
- 현미경: 11개의 데이터 세트(예: 세포, 입자).
- 수중: 5개의 데이터 세트(예: 해양 생물, 수중 물체).
- 문서: 8개 데이터 세트(예: 텍스트 영역, 양식 요소).
- 전자기: 12개의 데이터 세트(예: 레이더 시그니처, 스펙트럼 데이터 시각화).
- 실제 세계: 50개의 데이터 세트(일상적인 사물, 장면, 소매업 등을 포함한 광범위한 카테고리).
이러한 다양성으로 인해 RF100은 컴퓨터 비전 모델의 일반화 가능성을 평가하는 데 탁월한 리소스입니다.
Roboflow 100 데이터셋을 연구에 인용할 때 어떤 내용을 포함해야 하나요?
Roboflow 100 데이터 세트를 사용할 때는 원본 논문을 인용하여 작성자에게 크레딧을 부여하세요. 다음은 권장되는 BibTeX 인용입니다:
더 자세히 알아보려면 포괄적인 데이터 세트 컬렉션을 방문하거나 Ultralytics 모델과 호환되는 다른 탐지 데이터 세트를 찾아보세요.