Roboflow 100 Veri Kümesi
Intel sponsorluğunda olan Roboflow 100, çığır açan bir nesne algılama kıyaslama veri kümesidir. Roboflow Universe'te bulunan 90.000'den fazla genel veri kümesinden örneklenen 100 farklı veri kümesini içerir. Bu kıyaslama, bilgisayar görüşü modellerinin, örneğin Ultralytics YOLO modellerinin, sağlık hizmetleri, hava görüntüleme ve video oyunları dahil olmak üzere çeşitli alanlara uyarlanabilirliğini test etmek için özel olarak tasarlanmıştır.
Lisanslama
Ultralytics, farklı kullanım durumlarına uyum sağlamak için iki lisanslama seçeneği sunar:
- AGPL-3.0 Lisansı: Bu OSI onaylı açık kaynak lisansı, açık işbirliğini ve bilgi paylaşımını teşvik ederek öğrenciler ve meraklılar için idealdir. Daha fazla ayrıntı için LİSANS dosyasına bakın ve AGPL-3.0 Lisans sayfamızı ziyaret edin.
- Kurumsal Lisans: Ticari kullanım için tasarlanan bu lisans, Ultralytics yazılımının ve AI modellerinin ticari ürünlere ve hizmetlere sorunsuz bir şekilde entegre edilmesine olanak tanır. Senaryonuz ticari uygulamaları içeriyorsa, lütfen Ultralytics Lisanslama aracılığıyla iletişime geçin.
Temel Özellikler
- Çeşitli Alanlar: Yedi farklı alanda 100 veri kümesi içerir: Hava, Video oyunları, Mikroskobik, Sualtı, Belgeler, Elektromanyetik ve Gerçek Dünya.
- Ölçek: Kıyaslama, 805 sınıf arasında 224.714 görüntüden oluşur ve 11.170 saatten fazla veri etiketleme çabasını temsil eder.
- Standardizasyon: Tüm görüntüler tutarlı değerlendirme için önceden işlenir ve 640x640 piksel boyutuna yeniden boyutlandırılır.
- Temiz Değerlendirme: Daha temiz bir model değerlendirmesi sağlamak için sınıf belirsizliğini ortadan kaldırmaya ve yetersiz temsil edilen sınıfları filtrelemeye odaklanır.
- Açıklamalar: mAP gibi metrikleri kullanarak nesne algılama modellerini eğitmek ve değerlendirmek için uygun olan nesneler için sınırlayıcı kutular içerir.
Veri Seti Yapısı
Roboflow 100 veri seti, her biri benzersiz bir veri seti, görüntü ve sınıf koleksiyonu içeren yedi kategoriye ayrılmıştır:
- Hava: 7 veri kümesi, 9.683 görüntü, 24 sınıf.
- Video Oyunları: 7 veri kümesi, 11.579 görüntü, 88 sınıf.
- Mikroskobik: 11 veri kümesi, 13.378 görüntü, 28 sınıf.
- Sualtı: 5 veri kümesi, 18.003 resim, 39 sınıf.
- Belgeler: 8 veri kümesi, 24.813 resim, 90 sınıf.
- Elektromanyetik: 12 veri kümesi, 36.381 resim, 41 sınıf.
- Gerçek Dünya: 50 veri kümesi, 110.615 resim, 495 sınıf.
Bu yapı, çeşitli Ultralytics Çözümlerinde bulunan çok çeşitli gerçek dünya uygulama senaryolarını yansıtarak, nesne algılama modelleri için çeşitli ve kapsamlı bir test alanı sağlar.
Kıyaslama
Veri kümesi kıyaslaması, makine öğrenimi modellerinin belirli veri kümeleri üzerindeki performansının standartlaştırılmış metrikler kullanılarak değerlendirilmesini içerir. Yaygın metrikler arasında doğruluk, ortalama Ortalama Hassasiyet (mAP) ve F1-skoru bulunur. Bunlar hakkında YOLO Performans Metrikleri kılavuzumuzdan daha fazla bilgi edinebilirsiniz.
Kıyaslama Sonuçları
Sağlanan betiği kullanarak kıyaslama sonuçları şurada saklanacaktır: ultralytics-benchmarks/
dizininde, özellikle evaluation.txt
.
Kıyaslama Örneği
Aşağıdaki komut dosyası, Ultralytics YOLO modelini (örneğin, YOLOv11n) kullanarak Roboflow 100 kıyaslaması içindeki 100 veri kümesinin tamamında programlı olarak nasıl kıyaslayacağınızı gösterir. RF100Benchmark
sınıfı.
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!")
Uygulamalar
Roboflow 100, bilgisayar görüşü ve derin öğrenme ile ilgili çeşitli uygulamalar için çok değerlidir. Araştırmacılar ve mühendisler bu kıyaslamayı şu amaçlarla kullanabilir:
- Nesne algılama modellerinin performansını çoklu alan bağlamında değerlendirin.
- Modellerin uyarlanabilirliğini ve sağlamlığını, yaygın kıyaslama veri kümelerinin (örneğin COCO veya PASCAL VOC) ötesinde gerçek dünya senaryolarına göre test edin.
- Sağlık hizmetleri, hava görüntüleri ve video oyunları gibi özel alanlar da dahil olmak üzere çeşitli veri kümelerinde nesne algılama modellerinin yeteneklerini kıyaslayın.
- Farklı sinir ağı mimarileri ve optimizasyon teknikleri arasında model performansını karşılaştırın.
- Model eğitimi ipuçları veya ince ayar gibi transfer öğrenimi yaklaşımları gerektirebilecek alana özgü zorlukları belirleyin.
Gerçek dünya uygulamaları hakkında daha fazla fikir ve ilham almak için, pratik projelerle ilgili kılavuzlarımızı inceleyin veya kolaylaştırılmış model eğitimi ve dağıtımı için Ultralytics HUB'ı ziyaret edin.
Kullanım
Meta veriler ve indirme bağlantıları da dahil olmak üzere Roboflow 100 veri seti, resmi web sitesinde mevcuttur Roboflow 100 GitHub deposu. Buradan, kıyaslama ihtiyaçlarınız için veri kümesine doğrudan erişebilir ve kullanabilirsiniz. Ultralytics RF100Benchmark
aracı, bu veri kümelerini indirme ve Ultralytics modelleriyle kullanım için hazırlama sürecini basitleştirir.
Örnek Veri ve Açıklamalar
Roboflow 100, çeşitli açılardan ve alanlardan yakalanan çeşitli görüntülere sahip veri kümelerinden oluşur. Aşağıda, RF100 kıyaslamasına dahil edilen ve çeşitli nesneleri ve sahneleri sergileyen açıklanmış görüntü örnekleri bulunmaktadır. Veri artırma gibi teknikler, eğitim sırasında çeşitliliği daha da artırabilir.
Roboflow 100 kıyaslamasında görülen çeşitlilik, genellikle sınırlı bir alan içinde tek bir metriği optimize etmeye odaklanan geleneksel kıyaslamalardan önemli bir ilerlemeyi temsil etmektedir. Bu kapsamlı yaklaşım, çok sayıda farklı senaryoda iyi performans gösterebilen daha sağlam ve çok yönlü bilgisayarlı görü modelleri geliştirmeye yardımcı olur.
Alıntılar ve Teşekkürler
Araştırma veya geliştirme çalışmalarınızda Roboflow 100 veri kümesini kullanıyorsanız, lütfen orijinal makaleye atıfta bulunun:
@misc{rf100benchmark,
Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
Year = {2022},
Eprint = {arXiv:2211.13523},
url = {https://arxiv.org/abs/2211.13523}
}
Roboflow 100 veri kümesini bilgisayar görme topluluğu için değerli bir kaynak olarak oluşturma ve sürdürme konusundaki önemli çabaları için Roboflow ekibine ve tüm katkıda bulunanlara minnettarlığımızı sunuyoruz.
Nesne algılama ve makine öğrenimi projelerinizi geliştirmek için daha fazla veri kümesi keşfetmekle ilgileniyorsanız, çeşitli diğer algılama veri kümelerini içeren kapsamlı veri kümesi koleksiyonumuzu ziyaret etmekten çekinmeyin.
SSS
Roboflow 100 veri kümesi nedir ve nesne algılama için neden önemlidir?
Roboflow 100 veri kümesi, nesne algılama modelleri için bir kıyaslamadır. Sağlık hizmetleri, hava görüntüleri ve video oyunları gibi alanları kapsayan Roboflow Universe'den elde edilen 100 farklı veri kümesinden oluşur. Önemi, modelin uyarlanabilirliğini ve sağlamlığını, geleneksel, genellikle alanla sınırlı kıyaslamaların ötesine geçerek çok çeşitli gerçek dünya senaryolarında test etmek için standartlaştırılmış bir yol sağlamasında yatmaktadır.
Roboflow 100 veri kümesi hangi alanları kapsar?
Roboflow 100 veri kümesi, nesne algılama modelleri için benzersiz zorluklar sunan yedi farklı alanı kapsar:
- Hava: 7 veri kümesi (örneğin, uydu görüntüleri, drone görüntüleri).
- Video Oyunları: 7 veri kümesi (örneğin, çeşitli oyun ortamlarından nesneler).
- Mikroskobik: 11 veri kümesi (örneğin, hücreler, parçacıklar).
- Sualtı: 5 veri kümesi (örn. deniz yaşamı, batık nesneler).
- Belgeler: 8 veri kümesi (örneğin, metin bölgeleri, form öğeleri).
- Elektromanyetik: 12 veri kümesi (örneğin, radar imzaları, spektral veri görselleştirmeleri).
- Gerçek Dünya: 50 veri kümesi (gündelik nesneler, sahneler, perakende vb. içeren geniş bir kategori).
Bu çeşitlilik, RF100'ü bilgisayar görüşü modellerinin genellenebilirliğini değerlendirmek için mükemmel bir kaynak haline getirir.
Araştırmamda Roboflow 100 veri kümesine atıfta bulunurken neleri dahil etmeliyim?
Roboflow 100 veri kümesini kullanırken, lütfen yaratıcılara haklarını vermek için orijinal makaleye atıfta bulunun. İşte önerilen BibTeX alıntısı:
@misc{rf100benchmark,
Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
Year = {2022},
Eprint = {arXiv:2211.13523},
url = {https://arxiv.org/abs/2211.13523}
}
Daha fazla inceleme için, kapsamlı veri seti koleksiyonumuzu ziyaret etmeyi veya Ultralytics modelleriyle uyumlu diğer algılama veri setlerine göz atmayı düşünebilirsiniz.