Data Augmentation
استكشف كيف تحسّن زيادة البيانات متانة النموذج وتقلّل فرط التكيّف. تعلّم التقنيات الأساسية لتعزيز أداء Ultralytics YOLO26 في الرؤية الحاسوبية.
تُعد زيادة البيانات تقنيةً أساسية في تعلّم الآلة ورؤية الحاسوب، وتُستخدم لزيادة حجم مجموعة بيانات التدريب وتنوعها اصطناعيًا من خلال إنشاء إصدارات معدّلة من البيانات الموجودة. وبدلًا من جمع بيانات جديدة تمامًا وتصنيفها، وهو ما قد يستغرق وقتًا طويلًا ويكون مكلفًا، تطبّق زيادة البيانات تحويلات متنوعة على العينات الأصلية. تساعد هذه التعديلات نماذج تعلّم الآلة على تعلّم التعرّف على الأنماط بقدر أكبر من المتانة، مما يضمن أداءها جيدًا حتى عند مواجهة اختلافات في البيئات الواقعية. ومن خلال تعريض النماذج لنطاق أوسع من السيناريوهات أثناء التدريب، يمكن للمطورين تقليل فرط التكيّف وتحسين التعميم بفعالية.
الأهمية في الذكاء الاصطناعي الحديث#
في مجال رؤية الحاسوب، غالبًا ما تواجه النماذج صعوبة عند عرض صور تختلف قليلًا عن بيانات التدريب الخاصة بها. فقد تؤدي الاختلافات في الإضاءة أو الاتجاه أو الفوضى في الخلفية إلى إرباك نموذج لم يرَ قدرًا كافيًا من التنوع. تعالج زيادة البيانات هذه المشكلة من خلال محاكاة هذه الاختلافات برمجيًا. فعلى سبيل المثال، يمكن تدوير صورة قطة أو قلبها أو تطبيق ضبابية طفيفة عليها لتعليم النموذج أن الكائن يظل «قطة» بغض النظر عن هذه التغييرات.
تُعد هذه العملية جزءًا أساسيًا من نجاح البنى الحديثة مثل Ultralytics YOLO26، الذي يعتمد على مجموعات بيانات غنية ومتنوعة لتحقيق دقة عالية في مهام مثل اكتشاف الكائنات وتجزئة الصور. ومن خلال توليف أمثلة تدريب جديدة، تتيح زيادة البيانات للنماذج تعلّم ميزات ثابتة؛ وهي خصائص لا تتغير رغم التعديلات التي تطرأ على الإدخال.
التقنيات والأساليب الشائعة#
تشمل زيادة البيانات مجموعة واسعة من تقنيات التحويل، بدءًا من التعديلات الهندسية البسيطة ووصولًا إلى الأساليب التوليدية المعقدة:
- التحويلات الهندسية: تشمل هذه العمليات تدوير الصور وتغيير حجمها وقلبها واقتصاصها وترجمتها (إزاحتها). وتمثل هذه العمليات تغييرات في منظور الكاميرا أو موضع الكائن.
- تعديلات نطاق الألوان: يساعد تعديل السطوع والتباين والتشبّع وتدرّج الألوان النماذجَ على التعامل مع ظروف الإضاءة المختلفة أو مستشعرات الكاميرا المتنوعة.
- إضافة الضوضاء: يمكن أن تؤدي إضافة ضوضاء عشوائية (مثل الضوضاء الغاوسية) إلى جعل النماذج أكثر قدرة على التعامل مع بيانات الإدخال الحبيبية أو منخفضة الجودة.
- مزج الصور: تجمع تقنيات مثل MixUp أو Mosaic (الشائعة في تدريب YOLO) صورًا متعددة في عينة تدريب واحدة، مما يجبر النموذج على تعلّم السياق والعلاقات بين الكائنات بفاعلية أكبر.
- الأساليب التوليدية: تستخدم الأساليب المتقدمة الذكاء الاصطناعي التوليدي أو نماذج الانتشار لإنشاء عينات تدريب اصطناعية جديدة تمامًا تحاكي خصائص مجموعة البيانات الأصلية.
التطبيقات الواقعية#
يمتد الأثر العملي لزيادة البيانات إلى العديد من القطاعات التي يشكّل فيها نقص البيانات أو ارتفاع درجة التباين تحديًا.
القيادة الذاتية#
في تطوير المركبات ذاتية القيادة، يكاد يكون جمع البيانات لكل حالة جوية أو سيناريو إضاءة محتمل أمرًا مستحيلًا. ويستخدم المهندسون زيادة البيانات لمحاكاة المطر أو الضباب أو الثلج أو الوهج على صور ملتقطة في طقس صافٍ. ويضمن ذلك قدرة نظام الإدراك على اكتشاف المشاة وإشارات المرور والمركبات الأخرى بشكل موثوق، بغض النظر عن العوامل البيئية، مما يعزز السلامة والموثوقية.
التصوير الطبي#
غالبًا ما يعاني تحليل الصور الطبية من محدودية مجموعات البيانات بسبب مخاوف الخصوصية وندرة بعض الحالات. وتتيح زيادة البيانات للباحثين توسيع مجموعات البيانات الصغيرة للأشعة السينية أو فحوصات MRI من خلال تطبيق تشوهات مرنة أو عمليات تدوير أو تغييرات في الشدة. ويساعد ذلك على تدريب نماذج تشخيصية متينة قادرة على تحديد الأورام أو الكسور بحساسية عالية، حتى عند اختلاف وضعية المريض أو جودة الفحص.
التمييز بين المفاهيم ذات الصلة#
من المهم التمييز بين زيادة البيانات والبيانات الاصطناعية. فعلى الرغم من أن كليهما يهدف إلى زيادة حجم مجموعة البيانات، فإن البيانات الاصطناعية تُنشأ اصطناعيًا من الصفر (غالبًا باستخدام التصيير ثلاثي الأبعاد أو محركات المحاكاة)، في حين تعدّل زيادة البيانات بيانات واقعية موجودة بالفعل. بالإضافة إلى ذلك، تتضمن المعالجة المسبقة للبيانات تنظيف البيانات وتنسيقها (مثل تغيير الحجم والتطبيع) لجعلها مناسبة للنموذج، لكنها، بخلاف زيادة البيانات، لا تزيد بالضرورة عدد عينات التدريب.
تنفيذ زيادة البيانات باستخدام Ultralytics#
تدمج أطر العمل الحديثة زيادة البيانات مباشرةً في مسار التدريب. يوضح المثال أدناه كيفية تطبيق زيادات مثل القلب وتغيير الحجم أثناء تدريب نموذج Ultralytics YOLO26 باستخدام الحزمة ultralytics.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Train with custom data augmentation hyperparameters
# fliplr: 50% chance of horizontal flip, scale: image scaling gain
results = model.train(data="coco8.yaml", epochs=10, fliplr=0.5, scale=0.5)من خلال ضبط هذه المعلمات الفائقة، يمكن للمطورين تكييف استراتيجية زيادة البيانات مع الاحتياجات المحددة لمجموعة بياناتهم وتطبيقهم، والاستفادة من مرونة منصة Ultralytics لتطوير النماذج بكفاءة.









