🔥 چالش ۳۰ روزه Python for AI
#Day22
🚨 مأموریت جدید: مشتریها در حال رفتن هستند!
یک شرکت اشتراکی متوجه شده تعداد زیادی از مشتریانش بدون هشدار قبلی سرویس را ترک میکنند.
مدیر شرکت از تیم هوش مصنوعی کمک خواسته است:
«آیا میتوانیم قبل از رفتن مشتری، آن را پیشبینی کنیم؟»
از امروز وارد سومین پروژه واقعی چالش میشویم:
🤖 Customer Churn Prediction
هدف نهایی پروژه این است که یک سیستم هوشمند بسازیم که مشتریان در معرض ریزش را شناسایی کند.
اما قبل از ساخت مدل، باید دیتاست را برای Machine Learning آماده کنیم.
📂 فایل مأموریت: customer_churn.csv
اطلاعات هر مشتری:
🔹
Customer_ID— شناسه مشتری 🔹
Age— سن 🔹
Usage— میزان استفاده از سرویس 🔹
Contract— نوع قرارداد 🔹
MonthlyCharge— هزینه ماهانه 🔹
SupportCalls— تعداد تماس با پشتیبانی 🔹
Churn— وضعیت ریزش مشتری معنی ستون
Churn: 🟢
0= مشتری باقی مانده است 🔴
1= مشتری سرویس را ترک کرده است 🎯 مأموریت امروز: ساخت ML Data Pipeline برنامه شما باید: ✅ دیتاست را با Pandas بخواند. ✅ تعداد مشتریان و ستونها را نمایش دهد. ✅ دادههای گمشده و تکراری را شناسایی کند. ✅ تعداد مشتریان باقیمانده و ریزشکرده را محاسبه کند. ✅ نرخ ریزش مشتریان را بهصورت درصد نمایش دهد. ✅ ستونهای ورودی مدل یا
Featuresرا مشخص کند. ✅ ستون هدف یا
Targetرا جدا کند. ✅ دادهها را به دو بخش تقسیم کند: 🧠
80% Training Data🧪
20% Testing Dataبرای تقسیم دادهها از
train_test_splitاستفاده کنید. 📋 خروجی پیشنهادی:
========== CHURN ALERT SYSTEM ========== Total Customers: 5000 Active Customers: 3870 Churned Customers: 1130 Churn Rate: 22.6% Features: 5 Target: Churn Training Samples: 4000 Testing Samples: 1000 Data is ready for Machine Learning! 🚀🔥 Bonus Mission تحقیق کنید مشتریان ریزشکرده چه تفاوتی با مشتریان باقیمانده دارند: 🔍 آیا میزان استفاده آنها کمتر است؟ 💰 آیا هزینه ماهانه بیشتری پرداخت میکنند؟ ☎️ آیا تماس بیشتری با پشتیبانی داشتهاند؟ 📄 آیا نوع قرارداد روی ریزش تأثیر دارد؟ حداقل دو Insight مهم از دادهها استخراج کنید. 📊 نمودار پیشنهادی: تعداد مشتریان فعال و ریزشکرده را با یک نمودار مقایسه کنید. ⚠️ نکته مهم: امروز هنوز مدل نمیسازیم. امروز دادهها را برای آموزش اولین مدل Machine Learning در روز ۲۳ آماده میکنیم. آیا فردا میتوانید قبل از رفتن مشتری، او را شناسایی کنید؟ 👀 🔥 ورود به چالش: @learnpythonicy #Python #MachineLearning #CustomerChurn #DataScience #AIChallenge #PythonForAI #Day22
Day24_Model_Comparison_Solution.py
حجم:
11.1K
✅ پاسخ چالش روز 24
امروز Logistic Regression و Random Forest را برای پیشبینی ریزش مشتری مقایسه کردیم. 🤖🌳
📊 نتیجه مهم:
🔹 Random Forest نسبت به مدل قبلی Recall بهتری داشت.
🔹 با فعالکردن
class_weight="balanced"، Recall مدل Logistic Regression از ۱۵.۳۸٪ به ۷۲.۸۵٪ رسید. 🔹 این مدل توانست تعداد بیشتری از مشتریان واقعی در معرض ریزش را شناسایی کند. نکته امروز: در مسائل Churn، همیشه بالاترین Accuracy به معنی بهترین مدل نیست؛ گاهی شناسایی مشتریان پرریسک اهمیت بیشتری دارد. @learnpythonicy #Python #MachineLearning #RandomForest #LogisticRegression #CustomerChurn
🔥 چالش ۳۰ روزه Python for AI
#Day25
🎯 موضوع: Explainable AI
مدل ما پیشبینی میکند چه مشتریای در معرض ریزش است؛ اما امروز باید بفهمیم:
🤔 چرا مدل چنین تصمیمی گرفته است؟
📌 کارهای امروز:
✅ آموزش مدل Random Forest
✅ استخراج
Feature Importance✅ مشخصکردن مهمترین عوامل ریزش مشتری ✅ مرتبسازی ویژگیها از بیشترین تا کمترین تأثیر ✅ رسم نمودار اهمیت ویژگیها خروجی پیشنهادی: Top Churn Risk Factors: 1. Usage 2. SupportCalls 3. Contract 4. MonthlyCharge 5. Age 🔥 Bonus Challenge برای یکی از مشتریان پرریسک، اطلاعات زیر را نمایش دهید: Churn Probability: 82% Main Risk Factors: - Low Usage - High Support Calls - Month-to-Month Contract 📁 نام پیشنهادی فایل:
Day25_Explainable_AI.py📋 هدف امروز: یادگیری اینکه یک مدل خوب فقط نباید پیشبینی کند؛ بلکه باید بتوانیم دلیل تصمیم آن را نیز توضیح دهیم. @learnpythonicy #Python #MachineLearning #ExplainableAI #FeatureImportance #CustomerChurn
Day25_Explainable_AI_Solution.py
حجم:
7.6K
✅ پاسخ چالش روز بیستوپنجم آماده شد!
امروز با استفاده از Explainable AI بررسی کردیم که مدل چرا یک مشتری را در معرض ریزش تشخیص میدهد. 🔍🤖
📊 مهمترین عوامل پیشبینی ریزش:
🔹 نوع قرارداد
🔹 میزان استفاده از سرویس
🔹 هزینه ماهانه
🔹 سن مشتری
🔹 تعداد تماس با پشتیبانی
همچنین برای یکی از مشتریان پرریسک، احتمال ریزش و تأثیر هر ویژگی بهصورت جداگانه محاسبه شد.
@learnpythonicy
#Python #MachineLearning #ExplainableAI #FeatureImportance #CustomerChurn
🔥 چالش ۳۰ روزه Python for AI
#Day26
🎯 موضوع: ساخت محصول هوش مصنوعی (ML Deployment)
تا امروز یک مدل Machine Learning ساختیم، آن را ارزیابی کردیم و فهمیدیم چرا تصمیم میگیرد.
اما یک سؤال مهم:
🤔 آیا یک کاربر عادی میتواند از مدل ما استفاده کند؟
امروز مدل را تبدیل به یک اپلیکیشن واقعی میکنیم.
📌 مأموریت امروز:
ساخت یک Customer Churn Prediction App با Streamlit
کاربر باید بتواند اطلاعات یک مشتری را وارد کند:
👤 Age
📱 Usage
📄 Contract Type
💳 Monthly Charge
☎️ Support Calls
سپس سیستم باید نمایش دهد:
✅ احتمال ریزش مشتری
مثال:
Churn Probability: 82% Risk Level: 🔴 High Riskیا:
Churn Probability: 15% Risk Level: 🟢 Low Risk📌 امکانات برنامه: ✅ بارگذاری مدل آموزشدیده ✅ دریافت اطلاعات از کاربر ✅ پیشبینی احتمال ریزش ✅ نمایش سطح ریسک ✅ نمایش پیشنهاد اولیه برای کاهش ریزش 🔥 Bonus Challenge به برنامه قابلیتهای زیر را اضافه کنید: ⭐️ نمایش مهمترین عوامل ریسک مشتری ⭐️ ذخیره گزارش پیشبینی به صورت CSV ⭐️ طراحی رابط کاربری حرفهایتر ⭐️ اضافه کردن نمودار احتمال ریزش 📁 نام پیشنهادی فایل:
Day26_Churn_Prediction_App.py📋 هدف امروز: تبدیل یک مدل Machine Learning به یک محصول واقعی قابل استفاده؛ همان کاری که در پروژههای واقعی Data Science و AI انجام میشود. تا امروز فقط مدل ساختیم؛ امروز آن را به یک ابزار واقعی تبدیل میکنیم. 🚀 🔥 عضویت در چالش: @learnpythonicy #Streamlit #MachineLearning #AIApplication #CustomerChurn