رؤية YOLO 2026:

مجموعة بيانات ImageNette#

تعد مجموعة بيانات ImageNette مجموعة فرعية من ImageNet تحتوي على 10 فئات يسهل تمييزها، وقد أنشأتها fast.ai لتوفير نسخة أسرع وأسهل في الاستخدام من ImageNet لتطوير البرمجيات والتعليم. وهي تحتوي على 13,394 صورة ملونة — 9,469 صورة للتدريب و3,925 صورة للتحقق — وتغطي فئات مثل سمكة التنش، وكلب الإنجليزي سبرينغر، ومشغل الكاسيت، والبوق الفرنسي، مما يجعل نماذج image classification تتدرب في غضون دقائق بدلاً من الساعات التي تتطلبها مجموعة ImageNet الكاملة المكونة من 1,000 فئة.

الميزات الرئيسية#

  • تحتوي ImageNette على 13,394 صورة موزعة على 10 فئات: سمك التنش، كلب السبرينغر الإنجليزي، مشغل الكاسيت، المنشار الآلي، الكنيسة، البوق الفرنسي، شاحنة القمامة، مضخة الغاز، كرة الجولف، والمظلة.
  • تأتي المجموعة مع تقسيم محدد مسبقاً يضم 9,469 صورة ملونة للتدريب و3,925 صورة للتحقق بأبعاد متفاوتة.
  • تجعل الفئات العشر المتباعدة بوضوح تدريب ImageNette سريعاً ويسهل فهمه، لذا فهي تستخدم على نطاق واسع في النمذجة الأولية وتدريس تصنيف الصور.

هيكل مجموعة البيانات#

تأتي ImageNette مع تقسيم محدد مسبقاً للتدريب والتحقق، حيث يتم تخزين كل فئة في مجلد خاص بها:

التقسيم (Split)الصورالفئات
التدريب9,46910
التحقق3,92510

يختلف العدد الدقيق للصور لكل فئة، مما يوفر توزيعاً واقعياً للتدريب السريع والقياس دون الحاجة إلى حجم مجموعة بيانات ImageNet الكاملة.

التطبيقات#

تُستخدم مجموعة بيانات ImageNette على نطاق واسع لتدريب وتقييم نماذج deep learning في مهام تصنيف الصور، مثل Convolutional Neural Networks (CNNs) وغيرها من خوارزميات التعلم الآلي. تنسيقها البسيط وفئاتها المختارة بعناية يجعلها مورداً مفيداً لكل من الممارسين المبتدئين والمحترفين في مجالي machine learning وcomputer vision.

الاستخدام#

لتدريب نموذج على مجموعة بيانات ImageNette لمدة 100 epochs بحجم صورة قياسي يبلغ 224x224، يمكنك استخدام مقاطع الكود التالية. للحصول على قائمة شاملة بالوسائط المتاحة، راجع صفحة Training الخاصة بالنموذج.

مثال على التدريب
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="imagenette", epochs=100, imgsz=224)

صور وشروحات توضيحية عينة#

تحتوي مجموعة بيانات ImageNette على صور ملونة لمختلف الكائنات والمشاهد، مما يوفر مجموعة بيانات متنوعة لمهام image classification. إليك بعض الأمثلة على الصور من مجموعة البيانات:

ImageNette classification dataset sample images

يوضح المثال تنوع وتعقيد الصور في مجموعة بيانات ImageNette، مما يسلط الضوء على أهمية وجود مجموعة بيانات متنوعة لتدريب نماذج تصنيف صور قوية.

ImageNette160 و ImageNette320#

لتحقيق سرعة أكبر في النماذج الأولية والتدريب، تتوفر مجموعة بيانات ImageNette أيضاً بحجمين مخفضين: ImageNette160 وImageNette320. تحافظ هاتان المجموعتان على نفس الفئات والهيكل الخاص بمجموعة ImageNette الأصلية، ولكن يتم تغيير حجم الصور لتصبح ذات حد أقصى أصغر للطول. وهما مفيدتان بشكل خاص لاختبار النماذج الأولية أو عندما تكون الموارد الحسابية محدودة.

لاستخدام هذه المجموعات، قم ببساطة استبدال imagenette بـ imagenette160 أو imagenette320 في أمر التدريب. توضح مقاطع الكود التالية ذلك:

مثال تدريب مع ImageNette160
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
مثال تدريب مع ImageNette320
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)

تسمح هذه الإصدارات الأصغر من مجموعة البيانات بإجراء تكرارات سريعة أثناء التطوير مع الاستمرار في توفير مهام تصنيف صور واقعية. يمكنك أيضاً إدارة مجموعات بيانات التصنيف وتشغيل التدريب في السحاب باستخدام Ultralytics Platform.

الاقتباسات والشكر#

إذا كنت تستخدم مجموعة بيانات ImageNette في أبحاثك أو أعمال التطوير الخاصة بك، فيرجى الإشارة إليها بالشكل المناسب. لمزيد من المعلومات حول ImageNette، تفضل بزيارة ImageNette dataset GitHub page.

نود أن نشكر فريق fast.ai على إنشاء وصيانة ImageNette كمصدر قيّم لمجتمع أبحاث machine learning وcomputer vision.

الأسئلة الشائعة#

  • تعد ImageNette dataset مجموعة فرعية مبسطة من ImageNet تضم 10 فئات يسهل تمييزها مثل سمكة التنش، وكلب الإنجليزي سبرينغر، والبوق الفرنسي. وتحتوي على 13,394 صورة (9,469 للتدريب و3,925 للتحقق) وتم إنشاؤها بواسطة fast.ai لتوفير مجموعة بيانات أكثر سهولة في الإدارة للتدريب الفعال وتقييم نماذج تصنيف الصور. وهذا يجعلها مفيدة بشكل خاص للتطوير السريع للبرمجيات والأغراض التعليمية في مجالات machine learning والرؤية الحاسوبية.

  • تحتوي ImageNette على 13,394 صورة إجمالاً - 9,469 للتدريب و3,925 للتحقق - موزعة على 10 فئات: سمك التنش، كلب السبرينغر الإنجليزي، مشغل الكاسيت، المنشار الآلي، الكنيسة، البوق الفرنسي، شاحنة القمامة، مضخة الغاز، كرة الجولف، والمظلة. يتم تخزين كل فئة في مجلد خاص بها، متبعة تنسيق التصنيف القياسي الذي تتوقعه Ultralytics.

  • لتدريب نموذج YOLO على ImageNette لمدة 100 epochs، استخدم الأوامر التالية. تأكد من إعداد بيئة Ultralytics YOLO.

    مثال على التدريب
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="imagenette", epochs=100, imgsz=224)

    لمزيد من التفاصيل، راجع صفحة وثائق Training.

  • تعد مجموعة بيانات ImageNette مفيدة لعدة أسباب:

    • سريعة وبسيطة: مع وجود 10 فئات فقط وحوالي 13,000 صورة، فهي أقل تعقيداً وتستهلك وقتاً أقل بكثير في التدريب مقارنة بـ ImageNet الكاملة.
    • الاستخدام التعليمي: مثالية لتعلم وتدريس أساسيات تصنيف الصور، لأنها تتطلب قدرة حاسوبية ووقتاً أقل.
    • التعددية: تُستخدم على نطاق واسع لتدريب واختبار نماذج تصنيف الصور، لا سيما Convolutional Neural Networks (CNNs).

    لمزيد من التفاصيل حول تدريب النماذج وإدارة مجموعات البيانات، استكشف قسم Dataset Structure.

  • نعم، تتوفر ImageNette أيضاً في نسختين تم تغيير حجمهما، وهما ImageNette160 و ImageNette320، حيث تم تغيير حجم صورهما إلى أطوال حواف قصوى أصغر. تساعد هذه النسخ في إجراء نمذجة أولية أسرع وهي مفيدة بشكل خاص عندما تكون الموارد الحسابية محدودة.

    مثال تدريب مع ImageNette160
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")
    
    # Train the model with ImageNette160
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    لمزيد من المعلومات، راجع Training with ImageNette160 and ImageNette320.

  • تُستخدم مجموعة بيانات ImageNette على نطاق واسع في:

    • البيئات التعليمية: لتعليم المبتدئين أساسيات التعلم الآلي وcomputer vision.
    • تطوير البرمجيات: للنمذجة الأولية السريعة وتطوير نماذج تصنيف الصور.
    • أبحاث التعلم العميق: لتقييم واختبار أداء نماذج التعلم العميق المختلفة، لا سيما Neural Networks (CNNs) التلافيفية.

    استكشف قسم Applications للاطلاع على حالات الاستخدام التفصيلية.

التعليقات