Yolo فيجن شنتشن
شنتشن
انضم الآن

كيفية تصديرYOLO من Ultralytics باستخدام Ultralytics

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

هل تريد تنفيذ مشروع في مجال الرؤية الحاسوبية؟

اكتشف الترخيص

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

الشكل 1. لمحة عن Ultralytics (المصدر)

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

والآن، دعونا نلقي نظرة فاحصة على ميزة تصدير النماذج وكيف تدعم النشر عبر بيئات مختلفة. وعلى عكس الاستدلال المشترك ونقاط النهاية المخصصة، التي تعمل على تنفيذ النماذج ضمن البنية التحتية Ultralytics تتيح ميزة تصدير النماذج نشر النماذج وتشغيلها في بيئات خارجية مثل الأجهزة الطرفية والتطبيقات المحمولة والبنية التحتية المخصصة.

قبل أن يتم تشغيل النماذج في هذه البيئات، يجب تحويلها إلى تنسيقات يدعمها بيئة التشغيل المستهدفة. لكل إعداد نشر متطلباته الخاصة، بدءًا من التنسيقات الخفيفة الوزن للأجهزة المحمولة وأجهزة الحافة وصولاً إلى التنسيقات عالية الأداء للأنظمة السحابية والأنظمة GPU.

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

في هذه المقالة، سنتناول معنى مصطلح "تصدير النموذج "، والتنسيقات التي تدعمها Ultralytics وكيفية اختيار التنسيق المناسب لحالتك الاستخدامية. هيا بنا نبدأ!

نظرة عامة على تصدير النموذج

يتضمن تصدير النموذج تحويل نموذج تم تدريبه مسبقًا أو تدريبه خصيصًا إلى تنسيق يمكن استخدامه خارج الإطار الأصلي الخاص به. يتم إنشاء YOLO Ultralytics باستخدام PyTorch خزينها بتنسيقها الأصلي، وهو ما يناسب عمليات التدريب والتقييم والتجريب داخل PyTorch .

ومع ذلك، غالبًا ما تختلف بيئات النشر من حيث بيئات التشغيل ومتطلبات الأجهزة. ولهذا السبب، لا يكون التنسيق المستخدم أثناء التدريب مناسبًا دائمًا لعملية النشر.

على سبيل المثال، قد يتطلب تطبيق الهاتف المحمول تنسيقًا خفيفًا ومُحسَّنًا لاستهلاك منخفض للطاقة، في حين يحتاج التطبيق الذي يعمل عبر المتصفح إلى تنسيق يعمل بكفاءة في بيئات الويب. 

تستفيد الأجهزة الطرفية، مثل الكاميرات والأنظمة المدمجة، من النماذج المدمجة والسريعة، في حين أن الأنظمة السحابية مصممة لإجراء عمليات الاستدلال عالية الأداء. ولدعم هذه السيناريوهات المختلفة، يجب تصدير النماذج إلى صيغ متوافقة. 

لماذا أصبح خيار تصدير النماذج أكثر أهمية من أي وقت مضى

اليوم، يتم نشر نماذج الرؤية الحاسوبية في أماكن أقرب إلى مصادر توليد البيانات، لا سيما على الأجهزة الطرفية. فهواتف الذكية تعمل بتطبيقات الرؤية في الوقت الفعلي، وكاميرات المراقبة التلفزيونية المغلقة (CCTV) تقوم بالمراقبة مباشرة على الجهاز، بينما تعتمد الأنظمة ذاتية التشغيل على اتخاذ القرارات الفورية.

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

يمكن أن يساعد تصدير النموذج بالتنسيق المناسب في التغلب على هذه التحديات. فمن خلال تحويل النموذج بالطريقة الصحيحة، يمكن تحسين أدائه من حيث السرعة، وتقليل حجمه، وجعله متوافقًا مع أجهزة معينة. 

وفي الوقت نفسه، يوفر التصدير مرونة كبيرة. فمن الممكن تكييف النموذج نفسه ليتناسب مع بيئات نشر مختلفة من خلال تحويله إلى صيغ متعددة وفقًا للمتطلبات المحددة.

الشكل 2. بعض تنسيقات التصدير المتاحة في Ultralytics (المصدر)

على سبيل المثال، تم تحسين تنسيقNCNN ليتناسب مع الأجهزة المحمولة وأجهزة الحافة التي تستهلك موارد قليلة. في حين أن OpenVINO مصمم خصيصًا Intel ويقدم أداءً أفضل على وحدات المعالجة المركزية (CPU) ووحدات معالجة الرسومات (GPU) ووحدات المعالجة العصبية (NPU). 

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

كيف تعمل Ultralytics على تبسيط عملية تصدير النماذج

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

تتمثل إحدى مزاياها الرئيسية في إمكانية التصدير دون الحاجة إلى كتابة أكواد برمجية. فلا داعي لكتابة البرامج النصية أو إدارة البيئات أو استخدام أوامر خاصة بأطر العمل. ويمكن تصدير النماذج ببضع نقرات فقط عبر واجهة سهلة الاستخدام.

الشكل 3. مثال على تصدير نموذج من Ultralytics (المصدر)

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

تنسيقات تصدير النماذج التي تدعمها Ultralytics

تدعم Ultralytics 17 تنسيقًا للتصدير، مما يسهل إعداد النماذج لمجموعة واسعة من بيئات النشر دون أي تعقيدات إضافية.

فيما يلي نظرة عامة على بعض تنسيقات التصدير الشائعة الاستخدام:

  • التوافق بين المنصات والتشغيل البيني: TorchScript ONNX TorchScript على نطاق واسع لتشغيل النماذج عبر أطر عمل وبيئات مختلفة. ONNX كجسر بين النظم البيئية، مما يسهل نقل النماذج بين الأدوات، بينما TorchScript تشغيل PyTorch في بيئة الإنتاج دون الحاجة إلى Python .
  • الاستدلال عالي الأداء على وحدات معالجة الرسومات (GPU): TensorRT تصميمTensorRT خصيصًا NVIDIA ويركز على تحسين النماذج لتحقيق زمن انتقال منخفض وإنتاجية عالية. وهو يدعم تقنيات مثل تقليل الدقة ودمج الطبقات لتسريع عملية الاستدلال، مما يجعله خيارًا قويًا للتطبيقات التي تعمل في الوقت الفعلي وعلى نطاق الإنتاج.
  • النشر على الأجهزة المحمولة وفي الحافة: CoreMLو LiteRT (TensorFlow ) و NCNN للأجهزة ذات القدرات الحاسوبية والذاكرة المحدودة. تقلل هذه التنسيقات من حجم النموذج وتحسّن الكفاءة، مما يتيح أداءً سلسًا على الهواتف الذكية والأنظمة المدمجة وأجهزة الحافة. CoreML عادةً في أنظمة Apple، بينما يُستخدم LiteRT بشكل شائع في Android.
  • التنفيذ المُحسَّن للأجهزة: OpenVINO خصيصًا Intel بما في ذلك وحدات المعالجة المركزية (CPU) ووحدات معالجة الرسومات (GPU) ووحدات معالجة الفيديو (VPU)، وهو يساعد على تحسين سرعة وكفاءة الاستدلال على تلك الأجهزة. وتُعد التنسيقات المخصصة للأجهزة من هذا النوع مفيدة عندما تحتاج إلى الحصول على أفضل أداء من نظام معين.
  • بيئات التشغيل الخاصة بالأطر والمتخصصة: تدعم صيغ مثل PaddlePaddle ExecuTorch أنظمة بيئية واحتياجات نشر محددة، بما في ذلك تشغيل النماذج بكفاءة على أجهزة الحافة أو التكامل مع مجموعات معينة من تقنيات التعلم العميق.

كيفية تصدير نموذج باستخدام Ultralytics

يعد تصدير نموذج على Ultralytics عملية بسيطة تعتمد على واجهة المستخدم. ويتم تنفيذ سير العمل بالكامل من خلال الواجهة، دون الحاجة إلى استخدام البرامج النصية أو أدوات سطر الأوامر.

إليك كيفية تصدير نموذج باستخدام المنصة:

  • سجّل الدخول واختر النموذج الذي تريده: انتقل إلى مشروعك وافتح النموذج المدرب الذي تريد تصديره.
  • انتقل إلى علامة التبويب «تصدير»: داخل لوحة معلومات النموذج، انقر على علامة التبويب «تصدير» لعرض خيارات التصدير المتاحة.
  • اختر تنسيق التصدير: اختر تنسيقًا مثل ONNX أو TensorRT أو CoreML لاحتياجات النشر لديك.
  • تكوين إعدادات التصدير (اختياري): اضبط المعلمات مثل حجم الصورة أو الدقة أو حجم الدفعة لتحسين الأداء.
  • ابدأ عملية التصدير: انقر على «بدء التصدير» لبدء العملية. تتولى المنصة عملية التحويل تلقائيًا.
  • تنزيل النموذج الذي تم تصديره: بمجرد اكتمال عملية التصدير، يمكنك تنزيل النموذج واستخدامه في مسار النشر الخاص بك.
الشكل 4. نظرة على تكوين إعدادات التصدير في Ultralytics

اختيار تنسيق التصدير المناسب

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

فيما يلي بعض العوامل التي يجب أخذها في الاعتبار:

  • متطلبات زمن الاستجابة: بالنسبة للتطبيقات التي تعمل في الوقت الفعلي، مثل تحليلات الفيديو أو الأنظمة ذاتية التشغيل، يُعد انخفاض زمن الاستجابة أمرًا بالغ الأهمية. التنسيقات المُحسَّنة للاستدلال عالي الأداء، مثل TensorRT، غالبًا ما تكون أكثر ملاءمة.
  • القيود المتعلقة بالأجهزة: تتطلب الأجهزة ذات الذاكرة وقدرة المعالجة المحدودة، مثل الهواتف المحمولة أو الأنظمة المدمجة، تنسيقات خفيفة الوزن مثل LiteRT أو NCNN. 
  • حجم النموذج واستهلاك الطاقة: عند العمل مع الأجهزة الطرفية، يصبح حجم النموذج واستهلاك الطاقة عاملين مهمين. فالنماذج الأصغر حجمًا والمُحسَّنة تساعد على ضمان أداء ثابت دون استنزاف الموارد.
  • بيئة النشر: إذا كان نموذجك يحتاج إلى التشغيل عبر منصات مختلفة، ONNX تنسيقات مثل ONNX المرونة اللازمة. أما بالنسبة لحالات الاستخدام الخاصة بمنصات معينة، مثل iOS ، فغالباً CoreML هو الخيار الأفضل.

لا يوجد تنسيق واحد يناسب الجميع. فالأمر يتعلق في الحقيقة بإيجاد التوازن بين الأداء والتوافق والقيود المفروضة على البيئة المستهدفة. وتسهل Ultralytics هذه المهمة من خلال تمكينك من تجربة ومقارنة التنسيقات المختلفة دون بذل جهد إضافي.

النقاط الرئيسية

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

انضم إلى مجتمعنا المتنامي وتصفح مستودعنا على GitHub لمعرفة المزيد عن الرؤية الحاسوبية. استكشف صفحات حلولنا لمعرفة المزيد عن تطبيقات مثل الذكاء الاصطناعي في مجال الروبوتات والرؤية الحاسوبية في مجال الخدمات اللوجستية. اكتشف خيارات الترخيص المتاحة لدينا وابدأ في تطوير تطبيقاتك باستخدام الذكاء الاصطناعي للرؤية! 

لنبني مستقبل الذكاء الاصطناعي معًا!

ابدأ رحلتك مع مستقبل تعلم الآلة