Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

YAML

اكتشف قوة YAML في الذكاء الاصطناعي/التعلم الآلي! قم بتبسيط الإعدادات، وتسريع سير العمل، وتعزيز إمكانية القراءة باستخدام تنسيق البيانات متعدد الاستخدامات هذا.

YAML، التي تعني "YAML Ain't Markup Language"، هي لغة ترميز YAML، وهي لغة قابلة للقراءة البشرية معيار تسلسل بيانات شائع الاستخدام لملفات التكوين وتبادل البيانات بين اللغات. على عكس التنسيقات الأكثر إسهابًا، تعطي YAML الأولوية للنظافة وسهولة الاستخدام, تعتمد على المسافة البادئة بدلاً من الأقواس أو العلامات لتحديد البنية. هذا النهج البسيط يجعله الخيار المفضل للمطورين وعلماء البيانات الذين يعملون في التعلُّم الآلي (ML) و والذكاء الاصطناعي، حيث يكون تحديد البيئات والمعلمات المعقدة بوضوح أمرًا ضروريًا. يمكنك استكشاف المواصفات الرسمية على موقع YAML الإلكتروني.

دور YAML في عمليات سير عمل الذكاء الاصطناعي

في مجال التعلّم العميق (DL)، تعمل YAML بمثابة العمود الفقري لإدارة التجارب وقابلية التكرار. غالبًا ما تتطلب الأنظمة المعقدة تحديد مئات المعلمات، من مسارات الملفات إلى الثوابت الرياضية. من خلال إضفاء الطابع الخارجي على هذه الإعدادات في ملفات YAML، يضمن الباحثون التأكد من أن تكوينات بيانات التدريب و وبنى النماذج الخاصة بهم منفصلة عن قاعدة الشيفرة. يسهّل هذا الفصل ممارسات DataOps ويسمح بتحكم أسهل في إصدار الإعدادات التجريبية.

تطبيقات العالم الحقيقي في التعلم الآلي

YAML موجود في كل مكان في حزم تطوير الذكاء الاصطناعي الحديثة. فيما يلي طريقتان أساسيتان لاستخدامه:

  1. تعريف مجموعة البيانات: أحد الاستخدامات الأكثر شيوعًا في الرؤية الحاسوبية (CV) هو تعريف مجموعة البيانات . على سبيل المثال، عند التحضير لـ للكشف عن الكائنات، عادةً ما يحدد ملف YAML يحدد الدلائل الجذرية للتدريب و وبيانات التحقق، وعدد الفئات، و وأسماء الفئات. يستخدم Ultralytics هذا التنسيق لتحميل المعايير بسلاسة مثل COCO أو مجموعات البيانات المخصصة.
  2. تكوين البارامتر الفائق: يتطلّب تحقيق أفضل أداء للنموذج ضبطًا صارمًا صارمًا. يمكن لملف YAML تخزين متغيرات التدريب الحرجة مثل معدل التعلم, وحجم الدُفعات، وانحطاط الوزن، وعدد الحلقات. يسمح ذلك للمهندسين بإجراء تجارب متعددة ببساطة عن طريق تبديل ملفات التكوين دون تعديل شيفرة Python الأساسية.

YAML مقابل JSON و XML

في حين أن YAML تشترك في أوجه التشابه مع التنسيقات الأخرى، إلا أنها تتميز بفلسفة تصميمها وحالات استخدامها:

  • YAML مقابل JSON: يُستخدم JSON (تدوين كائنات جافا سكريبت) على نطاق واسع في لواجهات برمجة تطبيقات الويب. ومع ذلك، لا يدعم JSON التعليقات، والتي تعتبر حيوية لتوثيق التجارب العلمية. يدعم YAML التعليقات وتعتبر عمومًا أكثر قابلية للقراءة للتكوين، على الرغم من أن JSON غالبًا ما تكون أسرع في التحليل.
  • YAML مقابل XML: يستخدم XML (لغة الترميز القابلة للتكيف) فتح وإغلاق مما يجعل الملفات أكبر بكثير ويصعب على البشر مسحها بسرعة. بنية YAML القائمة على المسافة البادئة يقلل من الفوضى البصرية، مما يجعلها أفضل للحفاظ على إدارة تكوين البرمجيات الملفات.

تطبيق YAML مع Ultralytics

عند العمل مع نموذج Ultralytics YOLO11 تعتبر ملفات YAML أساسية لتحديد البيانات التي يراها النموذج. إن data في دالة التدريب تقبل وسيطة في دالة التدريب ملف YAML يشير إلى صورك وتسمياتك.

يوضح المثال التالي كيفية بدء جلسة تدريب باستخدام ملف تكوين مجموعة بيانات قياسي.

from ultralytics import YOLO

# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")

# Train the model using the 'coco8.yaml' dataset configuration
# The YAML file contains paths to images and class names (e.g., person, bus)
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)

تكامل النظام البيئي الأوسع نطاقاً

بالإضافة إلى التدريب المباشر على النماذج، فإن YAML جزء لا يتجزأ من الأوسع نطاقًا. إنه التنسيق تنسيق التكوين القياسي ل Docker Compose عند تنظيم الحاويات لنشر النموذج. وبالمثل, يستخدم Kubernetes YAML لتحديد كيفية توسيع نطاق التطبيقات في السحابة.

تعتمد أدوات الأتمتة مثل GitHub Actions أيضًا على YAML لتحديد سير عمل CI / CD، مما يضمن إجراء الاختبار الآلي و والتكامل بسلاسة في كل مرة يتم فيها دفع التعليمات البرمجية. يستخدم مطورو Python بشكل متكرر مكتبة مكتبة PyYAML لقراءة وكتابة هذه الملفات برمجيًا برمجيًا، مما يسد الفجوة بين التكوين الثابت وتنفيذ التعليمات البرمجية الديناميكية.

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون وانمو مع المبتكرين العالميين

انضم الآن