انتقل إلى المحتوى

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

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

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

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

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

TFالعمارة .js

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

الميزات الرئيسية ل TF.شبيبه

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

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

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

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

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

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

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

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

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

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

تصدير YOLOv8 نماذج ل TensorFlow.شبيبه

يمكنك توسيع توافق النموذج ومرونة النشر عن طريق التحويل YOLOv8 نماذج ل TF.شبيبه.

تركيب

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

تركيب

# Install the required package for YOLOv8
pip install ultralytics

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

استخدام

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

استخدام

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

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

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

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

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

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

نشر التصدير YOLOv8 TensorFlowنماذج .js

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

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

ملخص

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

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

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

الأسئلة المتداولة

كيف يمكنني تصدير نماذج Ultralytics YOLOv8 إلى تنسيق TensorFlow.js؟

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

استخدام

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

للاطلاع على سيناريوهات النشر والمزيد من المعلومات المتعمقة، راجع القسم الخاص بخيارات النشر مع TensorFlow.js.

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

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

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



تم الإنشاء 2024-04-03، تم التحديث 2024-07-05
المؤلفون: جلين-جوتشر (6)، أبيرامي فينا (1)

التعليقات