أفضل الممارسات لـ Amazon SageMaker Training Managed Warm Pools

تمنحك Amazon SageMaker Training Managed Warm Pools المرونة للاشتراك في إعادة استخدام البنية التحتية الأساسية والاحتفاظ بها لفترة زمنية يحددها المستخدم. يتم ذلك مع الحفاظ أيضًا على فائدة تمرير الرفع الثقيل غير المتمايز لإدارة مثيلات الحوسبة إلى تدريب نموذج Amazon SageMaker. في هذا المنشور ، نحدد المزايا الرئيسية ونقاط الألم التي تتناولها SageMaker Training Managed Warm Pools ، بالإضافة إلى المعايير وأفضل الممارسات.

نظرة عامة على حمامات SageMaker المُدارة المُدارة من تدريب SageMaker

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

تتطلب هذه الآلية وقت بدء محدود لوظيفة تدريبية. على الرغم من أن وقت بدء التشغيل هذا ، يُعرف أيضًا باسم وقت بدء التشغيل البارد، منخفضة نسبيًا ، تتطلب بعض حالات استخدام العملاء الأكثر تطلبًا أوقاتًا أقل لبدء التشغيل ، مثل أقل من 20 ثانية. هناك حالتا استخدام بارزتان لهما المتطلبات التالية:

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

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

مع SageMaker Training Managed Warm Pools ، يتمتع علماء البيانات ومهندسو ML بالقدرة على الاشتراك للحفاظ على حالات تدريب SageMaker أو المجموعات متعددة المثيلات دافئة لوقت محدد مسبقًا وقابل لإعادة التكوين (keep_alive_period_in_seconds) بعد انتهاء كل وظيفة تدريبية. لذلك ، على الرغم من أنك تتحمل عقوبة البدء البارد لوظيفة التدريب الأولى التي يتم تشغيلها على مثيل أو مجموعة ، بالنسبة لجميع وظائف التدريب اللاحقة ، فإن المثيلات جاهزة بالفعل وتعمل. نتيجة لذلك ، فإن وظائف التدريب اللاحقة هذه التي تبدأ في مثيل قبل keep_alive_period_in_seconds انتهاء الصلاحية لا تتحمل تكاليف وقت بدء التشغيل البارد. يمكن أن يقلل هذا من أوقات بدء العمل في التدريب إلى أقل من 20 ثانية تقريبًا (P90).

يمكن لعلماء البيانات ومهندسي ML استخدام SageMaker Training Managed Warm Pools للحفاظ على حالات فردية أو متعددة دافئة بين دورات التدريب للتجريب أو تشغيل وظائف متعددة على التوالي على نفس المجموعة الفردية أو متعددة المثيلات. أنت تدفع فقط مقابل مدة وظائف التدريب والقابلة لإعادة التكوين keep_alive_period_in_seconds مثل أي مكان آخر تحدده لكل حالة على حدة.

في الأساس ، مع SageMaker Training Managed Warm Pools ، تحصل على مزيج من استخدام المثيل المُدار من SageMaker مع القدرة على الاشتراك وتوفير السعة والاستخدام الذاتي للإدارة لفترات زمنية قصيرة. تكون هذه الفواصل الزمنية قابلة للتكوين قبل الوظيفة ، ولكن إذا كانت خلال ملف keep_alive_period_in_seconds الفاصل الزمني ، تحتاج إلى تقليله أو زيادته ، يمكنك القيام بذلك. يزيد إلى keep_alive_period_in_seconds يمكن إجراؤه على فترات تصل إلى 60 دقيقة ، مع أقصى فترة للمثيل أو المجموعة هي 7 أيام.

لتبدأ بحمامات السباحة الدافئة ، أولاً طلب زيادة حد حصة تجمع دافئة، ثم حدد keep_alive_period_in_seconds المعلمة عند بدء عمل تدريبي.

المعايير

أجرينا اختبارات قياس الأداء لقياس زمن انتقال بدء العمل باستخدام صورة TensorFlow بحجم 1.34 غيغابايت و 2 غيغابايت من البيانات وأوضاع مختلفة لإدخال بيانات التدريب (Amazon FSx و Fast File Mode و File Mode). تم إجراء الاختبارات عبر مجموعة متنوعة من أنواع المثيلات من عائلات m4 و c4 و m5 و c5 في منطقة us-east-2. تم قياس وقت استجابة بدء التشغيل على أنه وقت إنشاء الوظائف حتى بداية وظيفة التدريب الفعلية في الحالات. كانت المهام الأولى التي بدأت المجموعة وأنشأت التجمع الدافئ وقت استجابة بدء التشغيل من 2-3 دقائق. يرجع هذا الكمون الأكبر إلى الوقت المستغرق في توفير البنية التحتية وتنزيل الصورة وتنزيل البيانات. كان للمهام اللاحقة التي استخدمت مجموعة التجمعات الدافئة وقت استجابة بدء التشغيل يبلغ حوالي 20 ثانية لوضع الملف السريع (FFM) أو Amazon FSx ، و 70 ثانية لوضع الملف (FM). هذه الدلتا هي نتيجة طلب FM تنزيل مجموعة البيانات بالكامل من Amazon S3 قبل بدء المهمة.

يؤثر اختيارك لوضع إدخال بيانات التدريب على وقت بدء التشغيل ، حتى مع Warm Pools. توجد إرشادات حول وضع الإدخال المراد تحديده في قسم أفضل الممارسات لاحقًا في هذا المنشور.

يلخص الجدول التالي وقت استجابة بدء تشغيل الوظيفة P90 لأنماط إدخال بيانات التدريب المختلفة.

وضع إدخال البيانات وقت بدء التشغيل P90 (بالثواني)
الوظيفة الأولى وظائف Warm Pool (الوظيفة الثانية فصاعدًا)
FSx 136 19
وضع الملف السريع 143 21
وضع الملف 176 70

أفضل الممارسات لاستخدام حمامات السباحة الدافئة

في القسم التالي ، نشارك بعض أفضل الممارسات عند استخدام حمامات السباحة الدافئة.

متى يجب استخدام حمامات السباحة الدافئة؟

يوصى بالمسابح الدافئة في السيناريوهات التالية:

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

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

تقليل كمون بدء تشغيل التدريب على حمام السباحة الدافئ

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

  • يمكن أن يؤثر وضع إدخال بيانات التدريب على وقت بدء التشغيل - يتم إعادة إنشاء قنوات إدخال بيانات التدريب المُدارة لكل وظيفة تدريبية ، مما يساهم في زمن انتقال بدء العمل. لذا فإن إجراء تجارب أولية على مجموعة بيانات أصغر سيسمح بوقت بدء تشغيل أسرع (ووقت تدريب أسرع). بالنسبة للمراحل اللاحقة من التجريب ، عند الحاجة إلى مجموعة بيانات كبيرة ، ضع في اعتبارك استخدام نوع وضع الإدخال الذي يحتوي على الحد الأدنى من وقت التهيئة أو الثابت. على سبيل المثال ، ينسخ وضع الإدخال FILE مجموعة البيانات بأكملها من خدمة تخزين أمازون البسيطة (Amazon S3) إلى مثيل التدريب ، والذي يستغرق وقتًا طويلاً لمجموعات البيانات الكبيرة (حتى مع التجمعات الدافئة). يعد Fast File Mode مناسبًا بشكل أفضل لوقت استجابة أقل لبدء التشغيل لأن البيانات الوصفية لكائن S3 هي فقط التي يجب قراءتها من Amazon S3 قبل بدء عبء العمل. ال أمازون FSx لسترالطرق أو نظام ملفات أمازون المرن وضع إدخال نظام الملفات (Amazon EFS) ، له وقت تهيئة ثابت بغض النظر عن عدد الملفات في نظام الملفات ، وهو أمر مفيد عند العمل مع مجموعة بيانات كبيرة.
    لمزيد من المعلومات حول كيفية اختيار قناة الإدخال ، راجع اختر أفضل مصدر بيانات لوظيفة تدريب Amazon SageMaker.
  • تقليل وقت تشغيل تثبيت الحزم - أي تثبيت للبرنامج يحدث أثناء بدء تشغيل الحاوية ، على سبيل المثال ، نقطة Python أو apt-get لنظام التشغيل ، سيزيد من زمن انتقال وظيفة التدريب. يتطلب تقليل وقت استجابة بدء التشغيل هذا إجراء مفاضلة بين المرونة والبساطة في عمليات تثبيت وقت التشغيل مقابل التثبيت في وقت إنشاء الحاوية. إذا كنت تستخدم حاوية Docker الخاصة بك مع SageMaker ، فارجع إلى تكييف حاوية Docker الخاصة بك للعمل مع SageMaker. إذا كنت تعتمد على صور حاوية SageMaker سابقة الإنشاء، سوف تحتاج إلى تمديد حاوية مسبقة الصنع وإدارة هذه الحاويات بشكل صريح. ضع في اعتبارك هذا إذا كانت عمليات التثبيت في وقت التشغيل تزيد بشكل كبير من زمن انتقال بدء التشغيل.
  • تجنب تحديث صورة Docker الخاصة بك بشكل متكرر - إذا كنت تستخدم حاوية Docker الخاصة بك مع SageMaker ، فحاول تجنب تحديثها في كل عملية تشغيل. إذا تغيرت صورة Docker بين عمليات إرسال المهام ، فسيتم إعادة استخدام التجمع الدافئ ، لكن عملية بدء التشغيل ستحتاج إلى إعادة سحب صورة الحاوية من Amazon ECR بدلاً من إعادة استخدام صورة حاوية مخزنة مؤقتًا. إذا كان يجب تحديث صورة Docker ، فاحصر التحديثات على طبقة Docker الأخيرة للاستفادة من التخزين المؤقت لطبقة Docker. من الناحية المثالية ، يجب عليك إزالة محتوى Dockerfile الذي من المحتمل أن يتغير عبر التكرارات ، مثل المعلمة الفائقة وتعريفات مجموعة البيانات ورمز ML نفسه. للتكرار على كود ML دون الحاجة إلى إعادة إنشاء صور Docker مع كل تغيير ، يمكنك اعتماد نموذج حاوية إطار العمل الذي تمت الدعوة إليه في مجموعة أدوات تدريب SageMaker. إذا كنت ترغب في تطوير حاوية إطار عمل برمزك الخاص ، فارجع إلى هذا برنامج Amazon SageMaker التعليمي.

مشاركة حمامات السباحة الدافئة بين عدة مستخدمين

عند العمل مع فريق كبير من علماء البيانات ، يمكنك مشاركة التجمعات الدافئة التي تحتوي على مطابقة معايير الوظيفة، مثل نفس الشيء إدارة الهوية والوصول AWS (IAM) دور أو صورة حاوية.

دعونا نلقي نظرة على مثال الجدول الزمني. يبدأ المستخدم -1 مهمة تدريبية تكتمل وينتج عنها إنشاء تجمع دافئ جديد. عندما يبدأ المستخدم -2 وظيفة تدريبية ، فإن الوظيفة ستعيد استخدام التجمع الدافئ الحالي ، مما يؤدي إلى بدء عمل سريع. أثناء تشغيل مهمة user-2 مع استخدام التجمع الدافئ ، إذا بدأ مستخدم آخر وظيفة تدريب ، فسيتم إنشاء تجمع دافئ ثانٍ.

يساعد سلوك إعادة الاستخدام هذا في تقليل التكاليف من خلال مشاركة مجموعات الدفء بين المستخدمين الذين يبدؤون وظائف مماثلة. إذا كنت ترغب في تجنب مشاركة التجمعات الدافئة بين المستخدمين ، فيجب ألا تكون وظائف المستخدمين موجودة مطابقة معايير الوظيفة (على سبيل المثال ، يجب عليهم استخدام دور IAM مختلف).

إخطار المستخدمين عند الانتهاء من العمل

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

أدوات إضافية للتجريب السريع ووظائف التدريب على استكشاف الأخطاء وإصلاحها

مع حمامات السباحة الدافئة ، يمكنك بدء عمل في أقل من 20 ثانية. تتطلب بعض السيناريوهات إجراء تجارب تفاعلية عملية في الوقت الفعلي واستكشاف الأخطاء وإصلاحها. المصدر المفتوح مكتبة SageMaker SSH Helper يسمح لك بالدخول إلى حاوية تدريب SageMaker وإجراء التطوير والتصحيح عن بُعد.

وفي الختام

مع SageMaker Training Managed Warm Pools ، يمكنك الحفاظ على نماذج أجهزة التدريب الخاصة بك دافئة بعد كل وظيفة لفترة محددة. يمكن أن يقلل هذا من زمن انتقال بدء التشغيل لوظيفة تدريب نموذجية بما يصل إلى 8 أضعاف. تتوفر مجمعات التدريب المُدارة المُدارة من SageMaker في جميع مناطق AWS العامة حيث يتوفر تدريب SageMaker Model Training.

للبدء ، انظر تدرب باستخدام أحواض السباحة الدافئة المُدارة من SageMaker.


عن المؤلفين

رومي داتاد. رومي داتا  هو مدير أول لإدارة المنتجات في فريق Amazon SageMaker مسؤول عن التدريب والمعالجة ومخزن الميزات. لقد عمل في AWS لأكثر من 4 سنوات ، وشغل العديد من الأدوار القيادية في إدارة المنتجات في SageMaker و S3 و IoT. قبل انضمامه إلى AWS ، عمل في العديد من أدوار إدارة المنتجات والهندسة والقيادة التشغيلية في IBM و Texas Instruments و Nvidia. حاصل على ماجستير ودكتوراه. في الهندسة الكهربائية وهندسة الكمبيوتر من جامعة تكساس في أوستن ، وماجستير في إدارة الأعمال من كلية بوث للأعمال بجامعة شيكاغو.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.أرون ناجاراجان هو مهندس رئيسي مع فريق Amazon SageMaker يركز على مجالات التدريب و MLOps. لقد كان مع فريق SageMaker منذ عام الإطلاق ، حيث استمتع بالمساهمة في مجالات مختلفة في SageMaker بما في ذلك منتجات الاستدلال الفعلي و Model Monitor. يحب استكشاف الأماكن الخارجية في منطقة شمال غرب المحيط الهادئ وتسلق الجبال.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.ايمي انت هو مدير تطوير البرامج في AWS SageMaker. تركز على الجمع بين فريق من مهندسي البرمجيات لبناء وصيانة وتطوير قدرات جديدة لمنصة تدريب SageMaker التي تساعد العملاء على تدريب نماذج ML الخاصة بهم بشكل أكثر كفاءة وسهولة. لديها شغف بتكنولوجيا ML و AI ، خاصة فيما يتعلق بالصورة والرؤية من دراساتها العليا. في أوقات فراغها ، تحب العمل في الموسيقى والفن مع عائلتها.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية. سيفي لي هي مهندسة برمجيات في Amazon AI حيث تعمل على بناء Amazon Machine Learning Platforms وكانت جزءًا من فريق إطلاق Amazon SageMaker. في أوقات فراغها ، تحب تشغيل الموسيقى والقراءة.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.جينا تشاو هو مهندس تطوير برمجيات في AWS SageMaker. إنها شغوفة بتكنولوجيا ML / AI وتركز على بناء منصة تدريب SageMaker التي تمكن العملاء من تدريب نماذج التعلم الآلي بسرعة وسهولة. خارج العمل ، تستمتع بالسفر وقضاء الوقت مع أسرتها.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.باراس ميهرا هو مدير أول للمنتجات في AWS. إنه يركز على المساعدة في بناء تدريب ومعالجة Amazon SageMaker. في أوقات فراغه ، يستمتع باراس بقضاء الوقت مع عائلته وركوب الدراجات على الطرق حول منطقة الخليج. يمكنك أن تجده على لينكدين:.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.جيلي ناحوم هو مهندس حلول متخصص في الذكاء الاصطناعي / التعلم الآلي يعمل كجزء من فريق التعلم الآلي في منطقة أوروبا والشرق الأوسط وإفريقيا أمازون. جيلي شغوف بتحديات تدريب نماذج التعلم العميق ، وكيف يغير التعلم الآلي العالم كما نعرفه. في أوقات فراغه ، يستمتع جيلي بلعب تنس الطاولة.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.أوليفييه كروشانت هو مهندس حلول متخصص في التعلم الآلي في AWS ، ومقرها في فرنسا. يساعد Olivier عملاء AWS - من الشركات الناشئة الصغيرة إلى المؤسسات الكبيرة - في تطوير ونشر تطبيقات التعلم الآلي على مستوى الإنتاج. في أوقات فراغه ، يستمتع بقراءة الأوراق البحثية واستكشاف الحياة البرية مع الأصدقاء والعائلة.

أفضل الممارسات الخاصة بـ Amazon SageMaker Training Managed Warm Pools PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.إميلي ويبر انضم إلى AWS بعد إطلاق SageMaker مباشرة ، وما زال يحاول إخبار العالم عنها منذ ذلك الحين! خارج بناء تجارب تعلم جديدة للعملاء ، تتمتع إميلي بالتأمل ودراسة البوذية التبتية.

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

اكثر من التعلم الآلي من AWS