المدمج في الأمازون SageMaker توفر خوارزمية XGBoost حاوية مُدارة لتشغيل ملفات XGBoost إطار التعلم الآلي (ML) ، مع مزيد من الراحة لدعم التدريب المتقدم أو ميزات الاستدلال مثل التدريب الموزع وتقسيم مجموعة البيانات لمجموعات البيانات واسعة النطاق ، اختبار نموذج أ / بالطرق أو استدلال متعدد النماذج نقاط النهاية. يمكنك أيضًا توسيع هذه الخوارزمية القوية لتلائم المتطلبات المختلفة.
يعد تغليف الكود والتبعيات في حاوية واحدة أسلوبًا مناسبًا وقويًا لصيانة التعليمات البرمجية على المدى الطويل ، وإمكانية التكرار ، وأغراض التدقيق. يتبع تعديل الحاوية مباشرةً الحاوية الأساسية بأمانة وتجنب تكرار الوظائف الحالية التي تدعمها الحاوية الأساسية بالفعل. في هذا المنشور ، نراجع الإجراءات الداخلية لحاوية خوارزمية SageMaker XGBoost ونوفر نصوصًا براغماتية لتخصيص الحاوية مباشرةً.
هيكل حاوية SageMaker XGBoost
يتم تجميع خوارزمية XGBoost المضمنة في SageMaker كحاوية قائمة بذاتها ، متاح على جيثب، ويمكن تمديدها بموجب ترخيص Apache 2.0 مفتوح المصدر الملائم للمطورين. حزم الحاوية خوارزمية XGBoost مفتوحة المصدر والأدوات المساعدة لتشغيل الخوارزمية في بيئة SageMaker المدمجة مع خدمات AWS Cloud الأخرى. يتيح لك ذلك تدريب طرز XGBoost على مجموعة متنوعة من ملفات مصادر البيانات، يصنع توقعات الدفعة على البيانات غير المتصلة بالإنترنت ، أو استضف ملف نقطة نهاية الاستدلال في الوقت الحقيقي خط أنابيب.
تدعم الحاوية عمليات التدريب والاستدلال بنقاط دخول مختلفة. بالنسبة لوضع الاستدلال ، يمكن العثور على الإدخال في الوظيفة الرئيسية في ملف serve.py النصي. لتقديم الاستدلال في الوقت الفعلي ، تقوم الحاوية بتشغيل ملف قارورةومقرها خادم الويب ذلك عندما التذرع، يتلقى طلبًا بترميز HTTP يحتوي على البيانات ، ويفك تشفير البيانات إلى XGBoost دماتريكس معين يقوم بتحميل النموذج، وإرجاع ملف عودة استجابة ترميز HTTP. يتم تغليف هذه الطرق تحت خدمة التهديف class ، والتي يمكن أيضًا تخصيصها من خلال وضع البرنامج النصي إلى حد كبير (انظر الملحق أدناه).
نقطة الدخول لوضع التدريب (وضع الخوارزمية) هي الوظيفة الرئيسية في تدريب. تقوم الوظيفة الرئيسية بإعداد بيئة التدريب واستدعاء وظيفة وظيفة التدريب. إنه مرن بدرجة كافية للسماح بالتدريب الموزع أو أحادي العقدة ، أو الأدوات المساعدة مثل التحقق من الصحة. يمكن العثور على قلب عملية التدريب في تدريب_العمل وظيفة.
يمكن العثور على ملفات Docker التي تحزم الحاوية في ملف جيثب ريبو. لاحظ أن الحاوية مبنية على خطوتين: أ قاعدة تم بناء الحاوية أولاً ، تليها نهائي حاوية في الأعلى.
حل نظرة عامة
يمكنك تعديل وإعادة بناء الحاوية من خلال التعليمات البرمجية المصدر. ومع ذلك ، فإن هذا ينطوي على جمع وإعادة بناء جميع التبعيات والحزم من البداية. في هذا المنشور ، نناقش نهجًا أكثر وضوحًا يقوم بتعديل الحاوية فوق صورة حاوية خوارزمية SageMaker XGBoost المبنية بالفعل والمتاحة للجمهور مباشرةً.
في هذا النهج ، نحن سحب نسخة من صورة SageMaker XGBoost العامة ، قم بتعديل البرامج النصية أو إضافة حزم ، وإعادة بناء الحاوية في الأعلى. يمكن تخزين الحاوية المعدلة في مستودع خاص. بهذه الطريقة ، نتجنب إعادة بناء التبعيات الوسيطة وبدلاً من ذلك نبني مباشرة أعلى المكتبات المبنية بالفعل والموجودة في الحاوية الرسمية.
يوضح الشكل التالي نظرة عامة على البرنامج النصي المستخدم لسحب صورة القاعدة العامة وتعديل الصورة وإعادة بنائها وتحميلها إلى ملف خاص سجل الأمازون المرنة للحاويات (Amazon ECR). ال برنامج باش النصي في الكود المصاحب لهذا المنشور ، يؤدي جميع خطوات سير العمل الموضحة في الرسم التخطيطي. والمصاحبة مفكرة يُظهر مثالاً حيث يتم استرداد URI لإصدار معين من خوارزمية SageMaker XGBoost أولاً وتمريره إلى برنامج باش النصي، الذي يحل محل اثنين من نصوص Python في الصورة ، ويعيد بنائها ، ويدفع الصورة المعدلة إلى مستودع Amazon ECR خاص. يمكنك تعديل الكود المصاحب ليناسب احتياجاتك.
المتطلبات الأساسية المسبقة
• مستودع جيثب يحتوي على الكود المصاحب لهذا المنصب. يمكنك تشغيل ملف نموذج دفتر الملاحظات في حساب AWS الخاص بك ، أو استخدم ملف تكوين سحابة AWS مكدس لنشر الكمبيوتر الدفتري باستخدام دفتر SageMaker. أنت بحاجة إلى المتطلبات الأساسية التالية:
- حساب AWS.
- الأذونات اللازمة لتشغيل وظائف تحويل وتدريب مجموعة SageMaker وامتيازات Amazon ECR. يُنشئ نموذج CloudFormation نموذجًا إدارة الهوية والوصول AWS (IAM) الأدوار.
انشر الحل
لإنشاء موارد الحل باستخدام AWS CloudFormation ، اختر قم بتشغيل Stack:
ينشر المكدس دفتر ملاحظات SageMaker تم تكوينه مسبقًا لاستنساخ مستودع GitHub. تجول مفكرة يتضمن خطوات سحب صورة SageMaker XGBoost العامة لإصدار معين ، وتعديلها ، ودفع الحاوية المخصصة إلى مستودع Amazon ECR خاص. دفتر الملاحظات يستخدم الجمهور مجموعة بيانات أذن البحر كعينة ، يتم تدريب نموذج باستخدام وضع التدريب المدمج SageMaker XGBoost ، وإعادة استخدام هذا النموذج في الصورة المخصصة لأداء مهام تحويل الدُفعات التي تنتج الاستدلال مع قيم SHAP.
وفي الختام
توفر خوارزميات SageMaker المدمجة مجموعة متنوعة من الميزات والوظائف ، ويمكن تمديدها بشكل أكبر بموجب ترخيص Apache 2.0 مفتوح المصدر. في هذا المنشور ، راجعنا كيفية توسيع حاوية الإنتاج المضمنة لخوارزمية SageMaker XGBoost لتلبية متطلبات الإنتاج مثل التوافق مع الكود العكسي وواجهة برمجة التطبيقات.
دفتر العينة والمساعد مخطوطات توفر نقطة انطلاق ملائمة لتخصيص صورة حاوية SageMaker XGBoost بالطريقة التي تريدها. جربها!
الملحق: وضع البرنامج النصي
وضع البرنامج النصي يوفر طريقة لتعديل العديد من الخوارزميات المضمنة في SageMaker من خلال توفير واجهة لاستبدال الوظائف المسؤولة عن تحويل المدخلات وتحميل النموذج. وضع البرنامج النصي ليس مرنًا مثل تعديل الحاوية مباشرةً ، ولكنه يوفر مسارًا قائمًا على Python بالكامل لتخصيص الخوارزمية المضمنة دون الحاجة إلى العمل مباشرة معها عامل في حوض السفن.
في وضع النص ، أ user-module
لتخصيص فك تشفير البيانات ، وتحميل النموذج ، وعمل التنبؤات. يمكن لوحدة المستخدم تحديد ملف transformer_fn
الذي يتعامل مع جميع جوانب معالجة الطلب لإعداد الرد. أو بدلا من التعريف transformer_fn
، يمكنك توفير طرق مخصصة model_fn
, input_fn
, predict_fn
و output_fn
بشكل فردي لتخصيص تحميل النموذج وفك تشفير وإعداد المدخلات للتنبؤ. للحصول على نظرة عامة أكثر شمولاً حول وضع البرنامج النصي ، راجع أحضر النموذج الخاص بك مع وضع البرنامج النصي SageMaker.
حول المؤلف
بيمان رزاغي هو عالم بيانات في AWS. وهو حاصل على درجة الدكتوراه في نظرية المعلومات من جامعة تورنتو وكان عالم أبحاث ما بعد الدكتوراه في جامعة جنوب كاليفورنيا (USC) ، لوس أنجلوس. قبل الانضمام إلى AWS ، كان بيمان مهندس أنظمة موظفين في Qualcomm ساهم في عدد من معايير الاتصالات الدولية البارزة. قام بتأليف العديد من مقالات البحث العلمي التي تمت مراجعتها من قبل الأقران في مجال الإحصاء وهندسة النظم ، وهو يستمتع بتربية الأطفال وركوب الدراجات على الطرق خارج العمل.
- "
- 100
- الوصول
- استيعاب
- حسابي
- متقدم
- خوارزمية
- خوارزميات
- الكل
- سابقا
- أمازون
- API
- نهج
- المنطقة
- مقالات
- AWS
- نساعدك في بناء
- مدمج
- كاليفورنيا
- اختار
- فئة
- سحابة
- الخدمات السحابية
- الكود
- جمع
- تماما
- وعاء
- يحتوي
- ملاءمة
- مناسب
- يخلق
- على
- البيانات
- عالم البيانات
- نشر
- ينشر
- مختلف
- مباشرة
- بحث
- وزعت
- عامل في حوض السفن
- مهندس
- البيئة
- مثال
- مد
- المميزات
- الشكل
- الاسم الأول
- مرن
- متابعيك
- شكل
- وجدت
- الإطار
- وظيفة
- إضافي
- GitHub جيثب:
- عظيم
- يحمل
- كيفية
- كيفية
- HTTPS
- هوية
- صورة
- معلومات
- إدخال
- المتكاملة
- السطح البيني
- عالميا
- IT
- وظيفة
- المشــاريــع
- تعلم
- حقوق الملكية الفكرية
- طويل الأجل
- لوس أنجلوس
- آلة
- آلة التعلم
- يصنع
- القيام ب
- تمكن
- ML
- نموذج
- عارضات ازياء
- الأكثر من ذلك
- مفكرة
- عدد
- رسمي
- حاليا
- عمليات
- أخرى
- الخاصة
- البوينت
- الرائج
- قوي
- تنبؤ
- تنبؤات
- خاص
- عملية المعالجة
- إنتاج
- الإنتــاج
- تزود
- ويوفر
- توفير
- جمهور
- أغراض
- في الوقت الحقيقي
- مستودع
- طلب
- المتطلبات الأساسية
- بحث
- الموارد
- استجابة
- مسؤول
- عائدات
- مراجعة
- طريق
- يجري
- عالم
- خدماتنا
- خدمة
- عملية التجزئة
- تطبيقات الكمبيوتر
- حل
- شفرة المصدر
- جنوبي
- كومة
- المعايير
- إحصائيات
- مدعومة
- دعم
- الدعم
- أنظمة
- المصدر
- عبر
- سويا
- أدوات
- تيشرت
- تورونتو
- قادة الإيمان
- القطارات
- تحول
- تحويل
- جامعة
- تستخدم
- تشكيلة
- ويكيبيديا
- للعمل
- سوف