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

تصدير إلى تنسيق نموذج TF.js من تنسيق نموذج YOLO11

قد يكون نشر نماذج التعلم الآلي مباشرة في المتصفح أو على Node.js أمرًا صعبًا. ستحتاج إلى التأكد من أن تنسيق النموذج الخاص بك مُحسَّن لتحقيق أداء أسرع بحيث يمكن استخدام النموذج لتشغيل التطبيقات التفاعلية محليًا على جهاز المستخدم. تم تصميم تنسيق نموذج TensorFlow.js، أو TF.js، لاستخدام الحد الأدنى من الطاقة مع تقديم أداء سريع.

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

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

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

بنية TF.js

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

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

فيما يلي الميزات الرئيسية التي تجعل TF.js أداة قوية للمطورين:

  • دعم عبر الأنظمة الأساسية: يمكن استخدام TensorFlow.js في كل من متصفحات الويب وبيئات Node.js، مما يوفر مرونة في النشر عبر منصات مختلفة. يتيح للمطورين إنشاء التطبيقات ونشرها بسهولة أكبر.

  • دعم العديد من الواجهات الخلفية: يدعم TensorFlow.js واجهات خلفية متنوعة للحساب بما في ذلك وحدة المعالجة المركزية CPU، و WebGL لتسريع وحدة معالجة الرسومات GPU، و WebAssembly ‏(WASM) لسرعة تنفيذ قريبة من الأصل، و WebGPU لإمكانيات متقدمة للتعلم الآلي المستندة إلى المتصفح.

  • Offline Capabilities: باستخدام TensorFlow.js، يمكن تشغيل النماذج في المتصفح دون الحاجة إلى اتصال بالإنترنت، مما يجعل من الممكن تطوير تطبيقات تعمل دون اتصال بالإنترنت.

خيارات النشر مع TensorFlow.js

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

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

  • تطبيقات تعلم الآلة داخل المتصفح: يمكنك إنشاء تطبيقات ويب تقوم بتشغيل نماذج تعلم الآلة مباشرة في المتصفح. يتم التخلص من الحاجة إلى الحساب من جانب الخادم ويتم تقليل حمل الخادم.

  • تطبيقات Node.js: يدعم TensorFlow.js أيضًا النشر في بيئات Node.js، مما يتيح تطوير تطبيقات تعلم آلي من جانب الخادم. إنه مفيد بشكل خاص للتطبيقات التي تتطلب قوة معالجة الخادم أو الوصول إلى بيانات من جانب الخادم.

  • إضافات Chrome: أحد سيناريوهات النشر المثيرة للاهتمام هو إنشاء إضافات Chrome باستخدام TensorFlow.js. على سبيل المثال، يمكنك تطوير إضافة تتيح للمستخدمين النقر بزر الماوس الأيمن على صورة داخل أي صفحة ويب لتصنيفها باستخدام نموذج ML مُدرَّب مسبقًا. يمكن دمج TensorFlow.js في تجارب تصفح الويب اليومية لتوفير رؤى أو تحسينات فورية بناءً على تعلم الآلة.

تصدير نماذج YOLO11 إلى TensorFlow.js

يمكنك توسيع توافق النموذج ومرونة النشر عن طريق تحويل نماذج YOLO11 إلى TF.js.

التثبيت

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

التثبيت

# 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.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

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

الوسيطة النوع افتراضي الوصف
format str 'tfjs' تنسيق الهدف للنموذج الذي تم تصديره، والذي يحدد التوافق مع بيئات النشر المختلفة.
imgsz int أو tuple 640 حجم الصورة المطلوب لإدخال النموذج. يمكن أن يكون عددًا صحيحًا للصور المربعة أو صفًا. (height, width) لأبعاد محددة.
half bool False يتيح تكميم FP16 (نصف الدقة)، مما يقلل من حجم النموذج وربما يسرع الاستدلال على الأجهزة المدعومة.
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 TensorFlow.js المصدرة

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

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

ملخص

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

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

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

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

كيف يمكنني تصدير نماذج Ultralytics YOLO11 إلى صيغة TensorFlow.js؟

يعد تصدير نماذج Ultralytics YOLO11 إلى تنسيق TensorFlow.js (TF.js) أمرًا مباشرًا. يمكنك اتباع هذه الخطوات:

الاستخدام

from ultralytics import YOLO

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

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

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

لماذا يجب عليّ تصدير نماذج YOLO11 الخاصة بي إلى TensorFlow.js؟

تصدير نماذج YOLO11 إلى TensorFlow.js يوفر العديد من المزايا، بما في ذلك:

  1. التنفيذ المحلي: يمكن تشغيل النماذج مباشرة في المتصفح أو Node.js، مما يقلل من زمن الوصول ويعزز تجربة المستخدم.
  2. دعم عبر الأنظمة الأساسية: يدعم TF.js بيئات متعددة، مما يتيح المرونة في النشر.
  3. Offline Capabilities: تمكن التطبيقات من العمل دون اتصال بالإنترنت، مما يضمن الموثوقية والخصوصية.
  4. تسريع GPU: يستفيد من WebGL لتسريع GPU، وتحسين الأداء على الأجهزة ذات الموارد المحدودة.

للحصول على نظرة عامة شاملة، راجع عمليات التكامل مع TensorFlow.js.

كيف تفيد TensorFlow.js تطبيقات تعلم الآلة المستندة إلى المتصفح؟

تم تصميم TensorFlow.js خصيصًا للتنفيذ الفعال لنماذج ML في المتصفحات وبيئات Node.js. إليك كيف يفيد التطبيقات المستندة إلى المستعرض:

  • يقلل من زمن الوصول: يقوم بتشغيل نماذج تعلم الآلة محليًا، مما يوفر نتائج فورية دون الاعتماد على العمليات الحسابية من جانب الخادم.
  • يحسن الخصوصية: يحتفظ بالبيانات الحساسة على جهاز المستخدم، مما يقلل من المخاطر الأمنية.
  • تمكين الاستخدام دون اتصال بالإنترنت: يمكن للنماذج أن تعمل دون اتصال بالإنترنت، مما يضمن وظائف متسقة.
  • يدعم العديد من الواجهات الخلفية: يوفر مرونة مع واجهات خلفية مثل وحدة المعالجة المركزية CPU، و WebGL، و WebAssembly ‏(WASM)، و WebGPU لتلبية الاحتياجات الحسابية المتنوعة.

هل أنت مهتم بمعرفة المزيد عن TF.js؟ تحقق من دليل TensorFlow.js الرسمي.

ما هي الميزات الرئيسية لـ TensorFlow.js لنشر نماذج YOLO11؟

تشمل الميزات الرئيسية لـ TensorFlow.js ما يلي:

  • دعم عبر الأنظمة الأساسية: يمكن استخدام TF.js في كل من متصفحات الويب و Node.js، مما يوفر مرونة واسعة في النشر.
  • خلفيات متعددة: يدعم CPU و WebGL لتسريع GPU و WebAssembly (WASM) و WebGPU للعمليات المتقدمة.
  • Offline Capabilities: يمكن تشغيل النماذج مباشرة في المتصفح دون اتصال بالإنترنت، مما يجعلها مثالية لتطوير تطبيقات ويب سريعة الاستجابة.

للاطلاع على سيناريوهات النشر ومعلومات أكثر تعمقًا، راجع قسمنا حول خيارات النشر مع TensorFlow.js.

هل يمكنني نشر نموذج YOLO11 على تطبيقات Node.js من جانب الخادم باستخدام TensorFlow.js؟

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

للبدء في نشر Node.js، راجع دليل تشغيل TensorFlow.js في Node.js من TensorFlow.



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

تعليقات