افهم كيفية التصدير إلى تنسيق TF SavedModel من YOLO26

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

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

لماذا يجب عليك التصدير إلى TF SavedModel؟

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

TensorFlow SavedModel export format structure

يتمتع TF SavedModel بميزة رئيسية: التوافق. فهو يعمل بشكل جيد مع TensorFlow Serving و TensorFlow Lite و TensorFlow.js. يجعل هذا التوافق من الأسهل مشاركة النماذج ونشرها عبر منصات متنوعة، بما في ذلك تطبيقات الويب وتطبيقات الجوال. تنسيق TF SavedModel مفيد لكل من الأبحاث والإنتاج. إنه يوفر طريقة موحدة لإدارة نماذجك، مما يضمن جاهزيتها لأي تطبيق.

الميزات الرئيسية لـ TF SavedModel

فيما يلي الميزات الرئيسية التي تجعل TF SavedModel خياراً رائعاً لمطوري الذكاء الاصطناعي:

  • القابلية للنقل: يوفر TF SavedModel تنسيق تسلسل محايد للغة وقابل للاسترداد ومغلق. وهي تمكّن الأنظمة والأدوات عالية المستوى من إنتاج واستهلاك وتحويل نماذج TensorFlow. يمكن مشاركة ونشر SavedModels بسهولة عبر منصات وبيئات مختلفة.

  • سهولة النشر: يقوم TF SavedModel بحزم الرسم البياني الحسابي، والمعلمات المدربة، والبيانات الوصفية الضرورية في حزمة واحدة. يمكن تحميلها واستخدامها بسهولة للاستنتاج دون الحاجة إلى الكود الأصلي الذي بنى النموذج. وهذا يجعل نشر نماذج TensorFlow مباشراً وفعالاً في بيئات الإنتاج المختلفة.

  • إدارة الأصول: يدعم TF SavedModel تضمين أصول خارجية مثل المفردات، أو التضمينات، أو جداول البحث. يتم تخزين هذه الأصول بجانب تعريف الرسم البياني والمتغيرات، مما يضمن توفرها عند تحميل النموذج. هذه الميزة تبسط إدارة وتوزيع النماذج التي تعتمد على موارد خارجية.

خيارات النشر باستخدام TF SavedModel

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

يوفر TF SavedModel مجموعة من الخيارات لنشر نماذج تعلم الآلة الخاصة بك:

  • TensorFlow Serving: هو نظام خدمة مرن وعالي الأداء مصمم لبيئات الإنتاج. وهو يدعم أصلياً TF SavedModels، مما يسهل نشر وخدمة نماذجك على المنصات السحابية، أو خوادم الشركة المحلية، أو أجهزة الحافة.

  • المنصات السحابية: يوفر كبار مزودي الخدمات السحابية مثل Google Cloud Platform (GCP) و Amazon Web Services (AWS) و Microsoft Azure خدمات لنشر وتشغيل نماذج TensorFlow، بما في ذلك TF SavedModels. توفر هذه الخدمات بنية تحتية قابلة للتوسع ومدارة، مما يسمح لك بنشر نماذجك وتوسيع نطاقها بسهولة.

  • أجهزة الجوال والأجهزة المدمجة: يدعم TensorFlow Lite، وهو حل خفيف الوزن لتشغيل نماذج تعلم الآلة على أجهزة الجوال والأجهزة المدمجة وأجهزة إنترنت الأشياء، تحويل TF SavedModels إلى تنسيق TensorFlow Lite. يتيح لك هذا نشر نماذجك على مجموعة واسعة من الأجهزة، من الهواتف الذكية والأجهزة اللوحية إلى وحدات التحكم الدقيقة وأجهزة الحافة.

  • TensorFlow Runtime: TensorFlow Runtime (tfrt) is a high-performance runtime for executing TensorFlow graphs. It provides lower-level APIs for loading and running TF SavedModels in C++ environments. TensorFlow Runtime offers better performance compared to the standard TensorFlow runtime. It is suitable for deployment scenarios that require low-latency inference and tight integration with existing C++ codebases.

تصدير نماذج YOLO26 إلى TF SavedModel

من خلال تصدير نماذج YOLO26 إلى تنسيق TF SavedModel، فإنك تعزز قدرتها على التكيف وسهولة نشرها عبر منصات مختلفة.

التثبيت

لتثبيت الحزمة المطلوبة، قم بتشغيل:

التثبيت
# Install the required package for YOLO26
pip install ultralytics

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

الاستخدام

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

الاستخدام
from ultralytics import YOLO

# Load the YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo26n_saved_model'

# Load the exported TF SavedModel model
tf_savedmodel_model = YOLO("./yolo26n_saved_model")

# Run inference
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")

وسائط التصدير

المعاملالنوعالافتراضيالوصف
formatstr'saved_model'التنسيق المستهدف للنموذج الذي تم تصديره، مما يحدد التوافق مع بيئات النشر المختلفة.
imgszint أو tuple640حجم الصورة المطلوب لمدخلات النموذج. يمكن أن يكون عدداً صحيحاً للصور المربعة أو صفاً (height, width) لأبعاد محددة.
kerasboolFalseيُمكّن التصدير إلى تنسيق Keras، مما يوفر التوافق مع TensorFlow Serving وواجهات برمجة التطبيقات.
int8boolFalseيُنشط كمّية INT8، مما يزيد من ضغط النموذج وتسريع الاستنتاج بأقل قدر من فقدان الدقة، بشكل أساسي لأجهزة الحافة.
nmsboolFalseيضيف خاصية كبح غير الحد الأقصى (NMS)، وهو أمر ضروري لمعالجة الاكتشاف بدقة وكفاءة.
batchint1يحدد حجم استدلال دفعة النموذج المصدر أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في وضع predict.
datastr'coco8.yaml'المسار إلى ملف إعداد مجموعة البيانات (الافتراضي: coco8.yaml)، وهو ضروري للكمية (quantization).
fractionfloat1.0يحدد جزء مجموعة البيانات المستخدم لمعايرة تكميم INT8. يسمح بالمعايرة على مجموعة فرعية من مجموعة البيانات الكاملة، وهو مفيد للتجارب أو عند محدودية الموارد. إذا لم يتم تحديده مع تفعيل INT8، فسيتم استخدام مجموعة البيانات الكاملة.
devicestrNoneيحدد الجهاز للتصدير: CPU (device=cpu)، أو MPS لأجهزة Apple silicon (device=mps).

لمزيد من التفاصيل حول عملية التصدير، تفضل بزيارة صفحة توثيق Ultralytics حول التصدير.

نشر نماذج YOLO26 TF SavedModel المصدرة

الآن بعد أن قمت بتصدير نموذج YOLO26 الخاص بك إلى تنسيق TF SavedModel، فإن الخطوة التالية هي نشره. الخطوة الأولى الأساسية والموصى بها لتشغيل نموذج TF SavedModel هي استخدام طريقة YOLO("yolo26n_saved_model/")، كما تم توضيحه سابقاً في مقتطف كود الاستخدام.

ومع ذلك، للحصول على تعليمات متعمقة حول نشر نماذج TF SavedModel الخاصة بك، ألقِ نظرة على الموارد التالية:

ملخص

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

لمزيد من التفاصيل حول الاستخدام، تفضل بزيارة الوثائق الرسمية لـ TF SavedModel.

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

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

كيف يمكنني تصدير نموذج Ultralytics YOLO إلى تنسيق TensorFlow SavedModel؟

تصدير نموذج Ultralytics YOLO إلى تنسيق TensorFlow SavedModel أمر مباشر. يمكنك استخدام Python أو CLI لتحقيق ذلك:

تصدير YOLO26 إلى TF SavedModel
from ultralytics import YOLO

# Load the YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo26n_saved_model'

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo26n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")

ارجع إلى وثائق تصدير Ultralytics لمزيد من التفاصيل.

لماذا يجب عليّ استخدام تنسيق TensorFlow SavedModel؟

يوفر تنسيق TensorFlow SavedModel العديد من المزايا لـ نشر النموذج:

  • القابلية للنقل: يوفر تنسيقاً محايداً للغة، مما يسهل مشاركة النماذج ونشرها عبر بيئات مختلفة.
  • التوافق: يتكامل بسلاسة مع أدوات مثل TensorFlow Serving و TensorFlow Lite و TensorFlow.js، وهي ضرورية لنشر النماذج على منصات مختلفة، بما في ذلك تطبيقات الويب وتطبيقات الجوال.
  • التغليف الكامل: يرمّز بنية النموذج والأوزان ومعلومات التجميع، مما يسمح بالمشاركة المباشرة ومتابعة التدريب.

لمزيد من الفوائد وخيارات النشر، تحقق من خيارات نشر نموذج Ultralytics YOLO.

ما هي سيناريوهات النشر النموذجية لـ TF SavedModel؟

يمكن نشر TF SavedModel في بيئات متنوعة، بما في ذلك:

  • TensorFlow Serving: مثالي لبيئات الإنتاج التي تتطلب خدمة نماذج قابلة للتوسع وعالية الأداء.
  • المنصات السحابية: يدعم خدمات سحابية رئيسية مثل Google Cloud Platform (GCP) و Amazon Web Services (AWS) و Microsoft Azure لنشر النماذج القابل للتوسع.
  • أجهزة الجوال والأجهزة المدمجة: يتيح استخدام TensorFlow Lite لتحويل TF SavedModels النشر على أجهزة الجوال وأجهزة إنترنت الأشياء ووحدات التحكم الدقيقة.
  • TensorFlow Runtime: لبيئات C++ التي تحتاج إلى استنتاج بزمن انتقال منخفض مع أداء أفضل.

للحصول على خيارات نشر مفصلة، قم بزيارة الأدلة الرسمية حول نشر نماذج TensorFlow.

كيف يمكنني تثبيت الحزم اللازمة لتصدير نماذج YOLO26؟

لتصدير نماذج YOLO26، تحتاج إلى تثبيت حزمة ultralytics. قم بتشغيل الأمر التالي في جهازك الطرفي:

pip install ultralytics

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

ما هي الميزات الرئيسية لتنسيق TensorFlow SavedModel؟

يعد تنسيق TF SavedModel مفيداً لمطوري الذكاء الاصطناعي بفضل الميزات التالية:

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

لمزيد من التفاصيل، استكشف الوثائق الرسمية لـ TensorFlow.

التعليقات