انشر واستخدم نظامًا أساسيًا للتعلم العميق متعدد الأطر على Kubernetes

عقدة المصدر: 1580762

الوصف

بصفتك ممارسًا للتعلم العميق ، فأنت تريد الموثوقية وقابلية التوسع أثناء تنظيم وظائف التدريب الخاصة بك. بالإضافة إلى ذلك ، قد ترغب في القيام بذلك بطريقة متسقة عبر مكتبات متعددة. باستخدام Fabric for Deep Learning (FfDL) على Kubernetes ، يمكنك تحقيق ذلك من خلال منح المستخدمين القدرة على الاستفادة من مكتبات التعلم العميق مثل Caffe و Torch و TensorFlow في السحابة بطريقة مرنة بأقل جهد. يستخدم النظام الأساسي طبقة التوزيع والتزامن التي تسهل التعلم من كمية كبيرة من البيانات في فترة زمنية معقولة عبر عقد الحوسبة. تتيح طبقة توفير الموارد إدارة المهام المرنة على الموارد غير المتجانسة ، مثل وحدات معالجة الرسومات (GPU) ووحدات المعالجة المركزية (CPUs) ، في سحابة البنية التحتية كخدمة (IaaS).

نبذة

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

هذا هو المكان الذي تكمن فيه فرصة التعلم العميق كخدمة. في نمط الشفرة هذا ، نوضح لك كيفية نشر نسيج التعلم العميق على Kubernetes. باستخدام التحف المعمارية الأصلية في السحابة مثل Kubernetes والخدمات المصغرة ومخططات Helm وتخزين الكائنات ، نوضح لك كيفية نشر واستخدام نسيج التعلم العميق. يمتد هذا النسيج عبر العديد من محركات التعلم العميق مثل TensorFlow و Caffe و PyTorch. فهو يجمع بين المرونة وسهولة الاستخدام واقتصاديات الخدمة السحابية وقوة التعلم العميق. ستجد أنه سهل الاستخدام وباستخدام واجهات برمجة تطبيقات REST ، يمكنك تخصيص التدريب بموارد مختلفة حسب متطلبات المستخدم أو الميزانية. السماح للمستخدمين بالتركيز على التعلم العميق والتطبيقات بدلاً من التركيز على الأخطاء.

التدفق

تدفق

  1. ينشر ناشر FfDL قاعدة كود FfDL إلى مجموعة Kubernetes. تم تكوين مجموعة Kubernetes لاستخدام وحدات معالجة الرسومات أو وحدات المعالجة المركزية أو كليهما ، ولها حق الوصول إلى تخزين الكائنات المتوافق مع S3. إذا لم يتم تحديده ، فسيتم إنشاء جراب S3 تمت محاكاته محليًا.
  2. بمجرد النشر ، يقوم عالم البيانات بتحميل بيانات تدريب النموذج إلى مخزن العناصر المتوافق مع S3. تفترض FfDL أن البيانات موجودة بالفعل بالتنسيق المطلوب على النحو المنصوص عليه في أطر التعلم العميق المختلفة.
  3. يقوم المستخدم بإنشاء ملف بيان FfDL Model. يحتوي ملف البيان على حقول مختلفة تصف النموذج في FfDL ومعلومات مخزن العناصر ومتطلبات الموارد والعديد من الوسائط (بما في ذلك المعلمات الفائقة) المطلوبة لتنفيذ النموذج أثناء التدريب والاختبار. يتفاعل المستخدم بعد ذلك مع FfDL باستخدام CLI / SDK أو UI لنشر ملف بيان نموذج FfDL مع ملف تعريف النموذج. يبدأ المستخدم العمل التدريبي ويراقب تقدمها.
  4. يقوم المستخدم بتنزيل النموذج المدرب والسجلات المرتبطة به بمجرد اكتمال مهمة التدريب.

تعليمات

ابحث عن الخطوات التفصيلية لهذا النمط في README. ستوضح لك الخطوات كيفية:

  1. تجميع وترميز وإنشاء صور Docker.
  2. قم بتثبيت مكونات FfDL مع تثبيت الدفة.
  3. قم بتشغيل برنامج نصي لتكوين Grafana لمراقبة FfDL.
  4. احصل على نقاط نهاية Grafana و FfDL Web UI و FfDL REST API.
  5. قم بتشغيل بعض الوظائف البسيطة لتدريب نموذج شبكة تلافيفية باستخدام TensorFlow و Caffe.

المصدر: https://developer.ibm.com/patterns/deploy-and-use-a-multi-framework-deep-learning-platform-on-kubernetes/

الطابع الزمني:

اكثر من IBM Developer