تمثل القدرة على التنبؤ بأن عميلًا معينًا معرضًا لخطر كبير من الاضطراب ، بينما لا يزال هناك متسع من الوقت للقيام بشيء حيال ذلك ، تمثل مصدر إيرادات ضخمًا محتملاً لكل نشاط تجاري عبر الإنترنت. اعتمادًا على هدف الصناعة والأعمال ، يمكن أن يكون بيان المشكلة متعدد الطبقات. فيما يلي بعض أهداف العمل بناءً على هذه الإستراتيجية:
يناقش هذا المنشور كيف يمكنك تنسيق نموذج التنبؤ بالتخبط من طرف إلى طرف عبر كل خطوة: إعداد البيانات ، وتجربة نموذج أساسي وتحسين المعلمة الفائقة (HPO) ، والتدريب والضبط ، وتسجيل أفضل نموذج. يمكنك إدارة ملفات الأمازون SageMaker التدريب والاستدلال باستخدام سير العمل أمازون ساجميكر ستوديو و SageMaker Python SDK. يوفر SageMaker جميع الأدوات التي تحتاجها لإنشاء حلول علوم بيانات عالية الجودة.
يساعد SageMaker علماء البيانات والمطورين في إعداد وبناء وتدريب ونشر نماذج عالية الجودة للتعلم الآلي (ML) بسرعة من خلال الجمع بين مجموعة واسعة من القدرات المصممة لغرض التعلم الآلي.
يوفر Studio واجهة مرئية واحدة قائمة على الويب حيث يمكنك تنفيذ جميع خطوات تطوير ML ، وتحسين إنتاجية فريق علوم البيانات بما يصل إلى 10 مرات.
خطوط أنابيب Amazon SageMaker هي أداة لبناء خطوط أنابيب ML التي تستفيد من تكامل SageMaker المباشر. باستخدام خطوط الأنابيب ، يمكنك بسهولة أتمتة خطوات إنشاء نموذج ML ، ونماذج الكتالوج في سجل النموذج ، واستخدام أحد القوالب العديدة المتوفرة في مشاريع SageMaker لإعداد التكامل المستمر والتسليم المستمر (CI / CD) للنهاية إلى -انتهاء دورة حياة تعلم الآلة على نطاق واسع.
بعد تدريب النموذج ، يمكنك استخدامه توضيح Amazon SageMaker لتحديد التحيز والحد منه وشرح التنبؤات لأصحاب المصلحة في الأعمال. يمكنك مشاركة هذه التقارير الآلية مع فرق العمل والفرق الفنية للحملات المستهدفة النهائية أو لتحديد الميزات التي تعتبر عوامل تفاضل رئيسية لقيمة عمر العميل.
بحلول نهاية هذا المنشور ، يجب أن يكون لديك معلومات كافية لاستخدام هذا القالب الشامل بنجاح باستخدام خطوط الأنابيب لتدريب وضبط ونشر حالة استخدام التحليلات التنبؤية الخاصة بك. التعليمات الكاملة متوفرة على جيثب ريبو.
في هذا الحل ، تكون نقطة الدخول الخاصة بك هي بيئة التطوير المتكاملة Studio (IDE) للتجربة السريعة. يوفر Studio بيئة لإدارة تجربة خطوط الأنابيب الشاملة. باستخدام الاستوديو ، يمكنك تجاوز ملف وحدة تحكم إدارة AWS لإدارة سير العمل بالكامل. لمزيد من المعلومات حول إدارة خطوط الأنابيب من Studio ، راجع عرض خطوط أنابيب SageMaker وتتبعها وتنفيذها في SageMaker Studio.
يوضح الرسم التخطيطي التالي البنية عالية المستوى لسير عمل علم البيانات.
بعد إنشاء مجال Studio ، حدد اسم المستخدم الخاص بك واختر فتح ستوديو. يفتح IDE المستند إلى الويب والذي يسمح لك بتخزين وجمع كل الأشياء التي تحتاجها - سواء أكانت رمزًا أو دفاتر ملاحظات أو مجموعات بيانات أو إعدادات أو مجلدات مشروع.
تم دمج خطوط الأنابيب مباشرة مع SageMaker ، لذلك لا تحتاج إلى التفاعل مع أي خدمات AWS أخرى. لا تحتاج أيضًا إلى إدارة أي موارد لأن خطوط الأنابيب هي خدمة مُدارة بالكامل ، مما يعني أنها تنشئ الموارد وتديرها نيابةً عنك. لمزيد من المعلومات حول مكونات SageMaker المختلفة التي تعد كلا من واجهات برمجة تطبيقات Python المستقلة جنبًا إلى جنب مع المكونات المدمجة في Studio ، راجع صفحة خدمة SageMaker.
بالنسبة لحالة الاستخدام هذه ، يمكنك استخدام المكونات التالية لعملية تطوير النموذج المؤتمتة بالكامل:
خط أنابيب SageMaker عبارة عن سلسلة من الخطوات المترابطة التي يتم تحديدها بواسطة تعريف خط أنابيب JSON. يشفر تعريف خط الأنابيب هذا خط أنابيب باستخدام رسم بياني دوري موجه (DAG). يوفر DAG هذا معلومات عن المتطلبات والعلاقات بين كل خطوة من خط الأنابيب الخاص بك. يتم تحديد هيكل DAG لخط الأنابيب من خلال تبعيات البيانات بين الخطوات. يتم إنشاء تبعيات البيانات هذه عندما يتم تمرير خصائص مخرجات الخطوة كمدخل إلى خطوة أخرى.
بالنسبة لهذا المنشور ، تعد حالة الاستخدام الخاصة بنا مشكلة ML كلاسيكية تهدف إلى فهم استراتيجيات التسويق المختلفة القائمة على سلوك المستهلك التي يمكننا اعتمادها لزيادة الاحتفاظ بالعملاء لمتجر بيع بالتجزئة معين. يوضح الرسم البياني التالي سير عمل ML الكامل لحالة استخدام التنبؤ بالتخبط.
دعنا ننتقل إلى عملية تطوير سير عمل ML المتسارع بالتفصيل.
لمتابعة هذا المنشور ، تحتاج إلى تنزيل وحفظ ملف عينة مجموعة البيانات في الوضع الافتراضي خدمة تخزين أمازون البسيطة حاوية (Amazon S3) المرتبطة بجلسة SageMaker الخاصة بك ، وفي حاوية S3 التي تختارها. للتجريب السريع أو بناء النموذج الأساسي ، يمكنك حفظ نسخة من مجموعة البيانات ضمن الدليل الرئيسي الخاص بك في نظام ملفات أمازون المرن (Amazon EFS) واتبع دفتر Jupyter Customer_Churn_Modeling.ipynb
.
تُظهر لقطة الشاشة التالية مجموعة العينة مع المتغير المستهدف على النحو المحتفظ به 1 ، إذا كان من المفترض أن يكون العميل نشطًا ، أو 0 بخلاف ذلك.
قم بتشغيل الكود التالي في دفتر ملاحظات Studio للمعالجة المسبقة لمجموعة البيانات وتحميلها إلى حاوية S3 الخاصة بك:
import boto3
import pandas as pd
import numpy as np ## Preprocess the dataset
def preprocess_data(file_path): df = pd.read_csv(file_path) ## Convert to datetime columns df["firstorder"]=pd.to_datetime(df["firstorder"],errors='coerce') df["lastorder"] = pd.to_datetime(df["lastorder"],errors='coerce') ## Drop Rows with null values df = df.dropna() ## Create Column which gives the days between the last order and the first order df["first_last_days_diff"] = (df['lastorder']-df['firstorder']).dt.days ## Create Column which gives the days between when the customer record was created and the first order df['created'] = pd.to_datetime(df['created']) df['created_first_days_diff']=(df['created']-df['firstorder']).dt.days ## Drop Columns df.drop(['custid','created','firstorder','lastorder'],axis=1,inplace=True) ## Apply one hot encoding on favday and city columns df = pd.get_dummies(df,prefix=['favday','city'],columns=['favday','city']) return df ## Set the required configurations
model_name = "churn_model"
env = "dev"
## S3 Bucket
default_bucket = "customer-churn-sm-pipeline"
## Preprocess the dataset
storedata = preprocess_data(f"s3://{default_bucket}/data/storedata_total.csv")
باستخدام أجهزة كمبيوتر Studio المحمولة ذات الحوسبة المرنة ، يمكنك الآن بسهولة تشغيل عدة مهام تدريب وضبط. بالنسبة لحالة الاستخدام هذه ، يمكنك استخدام خوارزمية XGBoost المضمنة من SageMaker و SageMaker HPO مع وظيفة موضوعية مثل "binary:logistic"
و "eval_metric":"auc"
.
def split_datasets(df): y=df.pop("retained") X_pre = df y_pre = y.to_numpy().reshape(len(y),1) feature_names = list(X_pre.columns) X= np.concatenate((y_pre,X_pre),axis=1) np.random.shuffle(X) train,validation,test=np.split(X,[int(.7*len(X)),int(.85*len(X))]) return feature_names,train,validation,test # Split dataset
feature_names,train,validation,test = split_datasets(storedata) # Save datasets in Amazon S3
pd.DataFrame(train).to_csv(f"s3://{default_bucket}/data/train/train.csv",header=False,index=False)
pd.DataFrame(validation).to_csv(f"s3://{default_bucket}/data/validation/validation.csv",header=False,index=False)
pd.DataFrame(test).to_csv(f"s3://{default_bucket}/data/test/test.csv",header=False,index=False)
تدريب وضبط والعثور على أفضل نموذج مرشح باستخدام الكود التالي:
بعد إنشاء خط الأساس ، يمكنك استخدام الأمازون SageMaker المصحح لتحليل النموذج دون اتصال بالإنترنت. المصحح هو قدرة داخل SageMaker توفر بشكل تلقائي رؤية لعملية تدريب النموذج للتحليل في الوقت الفعلي وغير المتصل. يحفظ المصحح حالة النموذج الداخلي على فترات دورية ، والتي يمكنك تحليلها في الوقت الفعلي أثناء التدريب وغير متصل بعد اكتمال التدريب. بالنسبة لحالة الاستخدام هذه ، يمكنك استخدام أداة الشرح SHAP (SHapley Additive exPlanation) والتكامل الأصلي لـ SHAP مع المصحح. الرجوع إلى ما يلي مفكرة لتحليل مفصل.
يشرح مخطط الملخص التالي العلاقات الإيجابية والسلبية للمتنبئين بالمتغير المستهدف. على سبيل المثال ، المتغير الأعلى هنا ، esent
، يتم تعريفه على أنه عدد رسائل البريد الإلكتروني المرسلة. تتكون هذه المؤامرة من جميع نقاط البيانات في مجموعة التدريب. يشير اللون الأزرق إلى سحب الناتج النهائي إلى الفئة 0 ، ويمثل اللون الوردي الفئة 1. يتم ترتيب السمات المؤثرة الرئيسية بترتيب تنازلي.
يمكنك الآن متابعة نشر وإدارة خطوة سير عمل ML.
تطوير وأتمتة سير العمل
لنبدأ بهيكل المشروع:
- / نموذج زبون زبون - اسم المشروع
- /البيانات - مجموعة البيانات
- / خطوط الأنابيب - كود لمكونات خط أنابيب SageMaker
- SageMaker_Pipelines_project.ipynb - يسمح لك بإنشاء سير عمل ML وتشغيله
- Customer_Churn_Modeling.ipynb - دفتر تطوير النموذج الأساسي
تحت <project-name>/pipelines/customerchurn
، يمكنك رؤية نصوص Python النصية التالية:
- Preprocess.py - يتكامل مع SageMaker Processing لهندسة الميزات
- تقييم - يسمح بحساب مقاييس النموذج ، في هذه الحالة auc_score
- Generate_config.py - يسمح بالتكوين الديناميكي المطلوب للوظيفة النهائية لتوضيح إمكانية شرح النموذج
- Pipeline.py - رمز تم تشكيله لسير عمل خطوط الأنابيب ML
دعنا نسير في كل خطوة في DAG وكيف يتم تشغيلها. تتشابه الخطوات مع الوقت الذي قمنا فيه بإعداد البيانات لأول مرة.
نفذ جاهزية البيانات باستخدام الكود التالي:
تدريب وضبط والعثور على أفضل نموذج مرشح:
يمكنك إضافة خطوة ضبط النموذج (TuningStep) في خط الأنابيب ، والذي يستدعي تلقائيًا وظيفة ضبط المعلمة الفائقة (انظر الكود التالي). يعثر ضبط المعلمة الفائقة على أفضل إصدار من النموذج عن طريق تشغيل العديد من مهام التدريب على مجموعة البيانات باستخدام الخوارزمية ونطاقات المعلمات التشعبية التي حددتها. يمكنك بعد ذلك تسجيل أفضل إصدار من النموذج في سجل النموذج باستخدام خطوة RegisterModel.
بعد ضبط النموذج ، بناءً على مقاييس هدف الوظيفة الضبط ، يمكنك استخدام المنطق التفريعي عند تنظيم سير العمل. بالنسبة إلى هذا المنشور ، تكون الخطوة الشرطية لفحص جودة النموذج كما يلي:
يتم تسجيل أفضل نموذج مرشح لتسجيل الدفعة باستخدام خطوة RegisterModel:
الآن بعد أن تم تدريب النموذج ، دعنا نرى كيف يساعدنا Clarify في فهم الميزات التي تستند إليها النماذج في تنبؤاتها. يمكنك إنشاء ملف analysis_config.json
ملف ديناميكيًا لكل سير عمل يتم تشغيله باستخدام امتداد generate_config.py
جدوى. يمكنك إصدار وتتبع ملف التكوين لكل خط أنابيب runId
وتخزينها في Amazon S3 لمزيد من المراجع. قم بتهيئة ملف dataconfig
و modelconfig
الملفات على النحو التالي:
بعد إضافة الخطوة "توضيح" باعتبارها وظيفة معالجة لاحقة باستخدام sagemaker.clarify.SageMakerClarifyProcessor
في خط الأنابيب ، يمكنك رؤية ميزة تفصيلية وتقرير تحليل التحيز لكل عملية تشغيل.
كخطوة أخيرة في سير عمل خط الأنابيب ، يمكنك استخدام ملحق TransformStep
خطوة لتسجيل النقاط في وضع عدم الاتصال. تمر في ال transformer instance
و TransformInput
مع الالجائزة batch_data
تم تحديد معلمة خط الأنابيب مسبقًا:
أخيرًا ، يمكنك بدء تشغيل خط أنابيب جديد عن طريق الاختيار ابدأ الإعدام على واجهة Studio IDE.
يمكنك أيضًا وصف تشغيل خط الأنابيب أو بدء خط الأنابيب باستخدام ما يلي مفكرة. تظهر لقطة الشاشة التالية مخرجاتنا.
يمكنك جدولة تشغيل خط أنابيب بناء نموذج SageMaker الخاص بك باستخدام أمازون إيفينت بريدج. يتم دعم خطوط أنابيب بناء نموذج SageMaker كهدف في Amazon EventBridge. يسمح لك هذا بتشغيل خط الأنابيب الخاص بك للعمل بناءً على أي حدث في ناقل الحدث الخاص بك. يمكّنك EventBridge من أتمتة عمليات تشغيل خطوط الأنابيب والاستجابة تلقائيًا للأحداث مثل وظيفة التدريب أو تغييرات حالة نقطة النهاية. تتضمن الأحداث ملفًا جديدًا يتم تحميله إلى حاوية S3 الخاصة بك ، وتغيير في حالة نقطة نهاية SageMaker بسبب الانجراف ، و خدمة إعلام أمازون البسيطة موضوعات (Amazon SNS).
وفي الختام
أوضح هذا المنشور كيفية استخدام خطوط أنابيب SageMaker مع ميزات SageMaker المضمنة الأخرى وخوارزمية XGBoost لتطوير وتكرار ونشر أفضل نموذج مرشح للتنبؤ بالتخبط. للحصول على إرشادات حول تنفيذ هذا الحل ، راجع جيثب ريبو. يمكنك أيضًا استنساخ هذا الحل وتوسيعه بمصادر بيانات إضافية لإعادة تدريب النموذج. نحن نشجعك على التواصل ومناقشة حالات استخدام ML الخاصة بك مع مدير حساب AWS الخاص بك.
مراجع إضافية
للحصول على معلومات إضافية ، راجع الموارد التالية:
حول المؤلف
غاياتري غناكوتا هو مهندس تعلم الآلة مع خدمات AWS الاحترافية. إنها شغوفة بتطوير ونشر وشرح حلول الذكاء الاصطناعي / تعلم الآلة عبر مختلف المجالات. قبل هذا المنصب ، قادت العديد من المبادرات كعالمة بيانات ومهندسة ML مع كبرى الشركات العالمية في مجال المالية والتجزئة. وهي حاصلة على درجة الماجستير في علوم الكمبيوتر المتخصصة في علوم البيانات من جامعة كولورادو ، بولدر.
ساريتا جوشي هو عالم بيانات أقدم مع خدمات AWS الاحترافية التي تركز على دعم العملاء عبر الصناعات بما في ذلك البيع بالتجزئة والتأمين والتصنيع والسفر وعلوم الحياة والإعلام والترفيه والخدمات المالية. لديها عدة سنوات من الخبرة كمستشارة تقدم المشورة للعملاء عبر العديد من الصناعات والمجالات التقنية ، بما في ذلك الذكاء الاصطناعي ، والتعلم الآلي ، والتحليلات ، و SAP. واليوم ، تعمل بشغف مع العملاء لتطوير حلول التعلم الآلي والذكاء الاصطناعي وتنفيذها على نطاق واسع.
- "
- 100
- 107
- 39
- حسابي
- نشط
- إضافي
- مميزات
- AI
- خوارزمية
- الكل
- ألفا
- أمازون
- الأمازون SageMaker
- تحليل
- تحليلات
- واجهات برمجة التطبيقات
- هندسة معمارية
- الآلي
- AWS
- خط الأساس
- أفضل
- نساعدك في بناء
- ابني
- حافلة
- الأعمال
- الحملات
- الحالات
- تغيير
- المدينة
- عميل
- الكود
- كولورادو
- عمود
- إحصاء
- علوم الكمبيوتر
- consultants
- مستهلك
- سلوك المستهلك
- وعاء
- المحافظة على العملاء
- العملاء
- DAG
- البيانات
- علم البيانات
- عالم البيانات
- التوصيل
- التفاصيل
- ديف
- تطوير
- المطورين
- التطوير التجاري
- المجالات
- قطرة
- نقطة النهاية
- مهندس
- الهندسة
- ترفيه
- البيئة
- الحدث/الفعالية
- أحداث
- الخبره في مجال الغطس
- شرح
- الميزات
- المميزات
- مالي
- الخدمات المالية
- ويرى
- الاسم الأول
- اتباع
- بالإضافة إلى
- وظيفة
- العالمية
- هنا
- مرتفع
- الصفحة الرئيسية
- كيفية
- كيفية
- HTTPS
- ضخم
- تحديد
- بما فيه
- القيمة الاسمية
- الصناعات
- العالمية
- معلومات
- التأمين
- التكامل
- IT
- وظيفة
- المشــاريــع
- مفكرة Jupyter
- القفل
- كبير
- تعلم
- ليد
- علوم الحياة
- آلة التعلم
- إدارة
- تصنيع
- التسويق
- الوسائط
- متوسط
- المقاييس
- ML
- نموذج
- أجهزة الكمبيوتر المحمولة
- إعلام
- عروض
- online
- الأعمال التجارية عبر الإنترنت
- يفتح
- طلب
- أخرى
- تنبؤ
- تنبؤات
- التحليلات التنبؤية
- إنتاجية
- تنفيذ المشاريع
- مشروع ناجح
- بايثون
- جودة
- استعداد
- في الوقت الحقيقي
- العلاقات
- تقرير
- التقارير
- المتطلبات الأساسية
- الموارد
- النتائج
- بيع بالتجزئة
- إعادة التدريب
- إيرادات
- المخاطرة
- يجري
- تشغيل
- sagemaker
- شخص ساذج
- حجم
- علوم
- علوم
- العلماء
- الإستراحة
- مسلسلات
- خدمات
- طقم
- مشاركة
- الاشارات
- So
- الحلول
- الفضاء
- انقسم
- بداية
- الولايه او المحافظه
- ملخص الحساب
- الحالة
- تخزين
- متجر
- الإستراتيجيات
- مدعومة
- الهدف
- تقني
- تجربه بالعربي
- الوقت
- تيشرت
- المواضيع
- مسار
- قادة الإيمان
- تحول
- سفر
- جامعة
- us
- سهل حياتك
- قيمنا
- رؤية
- في غضون
- سير العمل
- X
- سنوات