تخطي إلى المحتوى

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

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

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

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

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

TF SavedModel

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

الميزات الرئيسية لنماذج TF SavedModels

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

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

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

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

خيارات النشر مع TF SavedModel

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

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

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

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

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

  • وقت تشغيل TensorFlow: وقت تشغيل TensorFlow (tfrt) هو وقت تشغيل عالي الأداء لتنفيذ TensorFlow الرسوم البيانية. توفر واجهات برمجة تطبيقات (APIs) منخفضة المستوى لتحميل وتشغيل TF SavedModels في بيئات ++C. يوفر TensorFlow Runtime أداءً أفضل مقارنة بوقت تشغيل TensorFlow القياسي. وهو مناسب لسيناريوهات النشر التي تتطلب استدلالًا بزمن انتقال منخفض وتكاملًا محكمًا مع قواعد أكواد ++C الحالية.

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

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

التثبيت

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

التثبيت

# Install the required package for YOLO11
pip install ultralytics

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

الاستخدام

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

الاستخدام

from ultralytics import YOLO

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

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

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

# Run inference
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model # creates '/yolo11n_saved_model'

# Run inference with the exported model
yolo predict model='./yolo11n_saved_model' source='https://ultralytics.com/images/bus.jpg'

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

الوسيطة النوع افتراضي الوصف
format str 'saved_model' تنسيق الهدف للنموذج الذي تم تصديره، والذي يحدد التوافق مع بيئات النشر المختلفة.
imgsz int أو tuple 640 حجم الصورة المطلوب لإدخال النموذج. يمكن أن يكون عددًا صحيحًا للصور المربعة أو صفًا. (height, width) لأبعاد محددة.
keras bool False تمكين التصدير إلى تنسيق Keras، مما يوفر التوافق مع TensorFlow serving وواجهات برمجة التطبيقات.
int8 bool False يقوم بتنشيط تكميم INT8، مما يزيد من ضغط النموذج وتسريع الاستدلال مع الحد الأدنى من فقدان الدقة، خاصةً للأجهزة الطرفية.
nms bool False يضيف قمع غير الأقصى (NMS)، وهو ضروري للمعالجة اللاحقة للكشف الدقيقة والفعالة.
batch int 1 يحدد حجم الاستدلال الدفعي لنموذج التصدير أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في predict الوضع.
device str None يحدد الجهاز المراد التصدير إليه: CPU (device=cpu)، MPS لـ Apple silicon (device=mps).

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

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

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

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

ملخص

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

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

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

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

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

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

تصدير YOLO11 إلى TF SavedModel

from ultralytics import YOLO

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

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

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo11n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export the YOLO11 model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model # creates '/yolo11n_saved_model'

# Run inference with the exported model
yolo predict model='./yolo11n_saved_model' source='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.

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

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

pip install ultralytics

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

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

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

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

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



📅 أُنشئ منذ سنة واحدة ✏️ تم التحديث منذ 3 أشهر

تعليقات