Hub documentation
FiftyOne
FiftyOne
FiftyOne هو مجموعة أدوات مفتوحة المصدر لتنظيم البيانات البصرية غير المهيكلة وعرضها وإدارتها. تُسهّل المكتبة سير العمل الذي يركّز على البيانات، بدءًا من العثور على التنبؤات منخفضة الثقة، مرورًا بتحديد العينات ذات الجودة المنخفضة، وصولًا إلى كشف الأنماط الخفية في بياناتك. تدعم المكتبة جميع أنواع البيانات البصرية، من الصور والفيديوهات إلى ملفات PDF وسحب النقاط والشبكات.
يستوعب FiftyOne اكتشافات الكائنات ونقاط المفاصل والخطوط المتعددة والمخططات المخصصة.
يتكامل FiftyOne مع Hugging Face Hub بحيث يمكنك تحميل مجموعات بيانات FiftyOne ومشاركتها مباشرةً من Hub.
🚀 جرّب تكامل FiftyOne 🤝 Hugging Face في Colab!
المتطلبات
أولاً سجّل الدخول بحساب Hugging Face الخاص بك:
hf auth login
تأكد من تثبيت fiftyone>=0.24.0 :
pip install -U fiftyone
تحميل مجموعات البيانات البصرية من المستودع
باستخدام load_from_hub() من أدوات Hugging Face في FiftyOne، يمكنك تحميل:
- أي مجموعة بيانات FiftyOne تم رفعها إلى المستودع
- معظم مجموعات البيانات المعتمدة على الصور والمخزنة في ملفات Parquet (وهي المعيار لمجموعات البيانات المرفوعة إلى المستودع عبر مكتبة
datasets)
تحميل مجموعات بيانات FiftyOne من Hub
يجب أن تحتوي أي مجموعة بيانات مُرسلة إلى المستودع بصيغة واحدة من الصيغ الشائعة المدعومة في FiftyOne على جميع معلومات التهيئة اللازمة في مستودع مجموعة البيانات الخاص بها على المستودع، بحيث يمكنك تحميل مجموعة البيانات عن طريق تحديد repo_id الخاص بها. كمثال، لتحميل مجموعة بيانات VisDrone للكشف:
import fiftyone as fo
from fiftyone.utils import load_from_hub
## load from the hub
dataset = load_from_hub("Voxel51/VisDrone2019-DET")
## visualize in app
session = fo.launch_app(dataset)
يمكنك تخصيص عملية التنزيل، بما في ذلك عدد العينات المراد تنزيلها، واسم كائن مجموعة البيانات المُنشأة، أو ما إذا كانت محفوظة على القرص أم لا.
يمكنك سرد جميع مجموعات بيانات FiftyOne المتاحة على Hub باستخدام:
from huggingface_hub import HfApi
api = HfApi()
api.list_datasets(tags="fiftyone")تحميل مجموعات بيانات Parquet من Hub باستخدام FiftyOne
يمكنك أيضًا استخدام دالة load_from_hub() لتحميل مجموعات البيانات من ملفات Parquet. يتم التعامل مع تحويلات الأنواع نيابةً عنك، وتُحمَّل الصور من عناوين URL عند الحاجة.
بفضل هذه الميزة، يمكنك تحميل أي مما يلي:
- مجموعات بيانات تصنيف الصور المتوافقة مع FiftyOne، مثل Food101 وImageNet-Sketch
- مجموعات بيانات كشف الكائنات المتوافقة مع FiftyOne مثل CPPE-5 وWIDER FACE
- مجموعات بيانات التقطيع المتوافقة مع FiftyOne مثل SceneParse150 وSidewalk Semantic
- مجموعات بيانات وصف الصور المتوافقة مع FiftyOne مثل COYO-700M وNew Yorker Caption Contest
- مجموعات بيانات الإجابة على الأسئلة البصرية المتوافقة مع FiftyOne مثل TextVQA وScienceQA
كمثال، يمكننا تحميل أول 1,000 عينة من مجموعة بيانات WikiArt في FiftyOne باستخدام:
import fiftyone as fo
from fiftyone.utils.huggingface import load_from_hub
dataset = load_from_hub(
"huggan/wikiart", ## repo_id
format="parquet", ## for Parquet format
classification_fields=["artist", "style", "genre"], ## columns to treat as classification labels
max_samples=1000, # number of samples to load
name="wikiart", # name of the dataset in FiftyOne
)
دفع مجموعات بيانات FiftyOne إلى Hub
يمكنك دفع مجموعة بيانات إلى المستودع باستخدام:
import fiftyone as fo
import fiftyone.zoo as foz
from fiftyone.utils.huggingface import push_to_hub
## load example dataset
dataset = foz.load_zoo_dataset("quickstart")
## push to hub
push_to_hub(dataset, "my-hf-dataset")عند استدعاء push_to_hub()، سيتم رفع مجموعة البيانات إلى المستودع باسم المستودع المحدد تحت اسم المستخدم الخاص بك، وسيتم إنشاء المستودع إذا لزم الأمر. سيتم توليد بطاقة مجموعة البيانات تلقائيًا وتعبئتها بتعليمات لتحميل مجموعة البيانات من المركز. يمكنك رفع صورة مصغرة أو ملف gif للظهور على بطاقة مجموعة البيانات باستخدام الحجة preview_path.
فيما يلي مثال يستخدم العديد من هذه الحجج، والذي سيؤدي إلى رفع أول ثلاثة عينات من مجموعة بيانات Quickstart Video الخاصة بـ FiftyOne إلى المستودع الخاص username/my-quickstart-video-dataset مع وسمات، ورخصة MIT، ووصف، وصورة معاينة:
dataset = foz.load_from_zoo("quickstart-video", max_samples=3)
push_to_hub(
dataset,
"my-quickstart-video-dataset",
tags=["video", "tracking"],
license="mit",
description="A dataset of video samples for tracking tasks",
private=True,
preview_path="<path/to/preview.png>"
)📚 الموارد
- 🚀 دفتر ملاحظات Colab للمتابعة مع الكود
- 🗺️ دليل المستخدم لمجموعات بيانات FiftyOne
- 🤗 FiftyOne 🤝 توثيقات التكامل مع Hub
- 🤗 وثائق تكامل FiftyOne 🤝 Transformers
- 🧩 إضافة FiftyOne لمركز Hugging Face