مشاركة عبر


التدريب الموزع باستخدام التعلم الآلي من Microsoft Azure

في هذه المقالة، ستتعرف على التدريب الموزع وكيف يدعمه التعلم الآلي من Azure لنماذج التعلم العميق.

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

التعلم العميق والتدريب الموزع

هناك نوعان رئيسيان من التدريب الموزع: توازي البياناتوتوازي النموذج. للتدريب الموزع على نماذج التعلم العميق، تدعم SDK التعلم الآلي من Azure في Python عمليات التكامل مع PyTorch وTensorFlow. كلاهما إطارات شائعة تستخدم توازي البيانات للتدريب الموزع، ويمكنهما استخدام Horovod لتحسين سرعات الحوسبة.

بالنسبة لنماذج التعلم الآلي التي لا تتطلب تدريبا موزعا، راجع تدريب النماذج باستخدام التعلم الآلي من Azure للحصول على طرق مختلفة لتدريب النماذج باستخدام Python SDK.

توازي البيانات

توازي البيانات هو الأسهل لتنفيذ نهجي التدريب الموزعين، وهو كاف لمعظم حالات الاستخدام.

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

يوضح الرسم التخطيطي التالي هذا الأسلوب.

رسم تخطيطي لتوازي البيانات يوضح النموذج المنسخ في العقد العاملة.

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

توازي النموذج

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

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