پروژه: ساخت مدل رگرسیون لجستیک در پایتون از پایه

تومان

در این پروژه رگرسیون به پیاده‌سازی رگرسیون لجستیک در پایتون از پایه با استفاده از داده‌های مربوط به اپلیکیشن‌های استریمینگ خواهید پرداخت.

  •  درجه سختی: Easy
  •  نوع بیزینس: Entertainment
  •  ابزار مورد استفاده: Python
  •  کلاس الگوریتم: Classification

قابل سفارش نیست

شناسه محصول: p-015 دسته: برچسب: , , ,

توضیحات

آنچه که در این پروژه یاد می‌گیرید:

            • درک اصول اولیه دسته‌بندی
            • معرفی رگرسیون لجستیک
            • درک تابع لوجیت
            • ضرایب در رگرسیون لجستیک
            • مفهوم حداکثر احتمال لگاریتمی (Maximum Log-Likelihood)
            • معیارهای عملکرد مانند ماتریس سردرگمی، یادآوری (Recall)، دقت (Accuracy)، دقت مثبت (Precision)، امتیاز F1، AUC و ROC
            • وارد کردن مجموعه داده و کتابخانه‌های مورد نیاز
            • انجام تحلیل اکتشافی داده (EDA) اولیه
            • استفاده از کتابخانه‌های پایتون مانند Matplotlib و Seaborn برای تفسیر داده‌ها و بصری‌سازی پیشرفته
            • بازرسی و پاکسازی داده‌ها
            • استفاده از کتابخانه‌های Statsmodels و Sklearn برای ساخت مدل
            • تقسیم مجموعه داده به مجموعه‌های آموزش و آزمایش با استفاده از Sklearn
            • آموزش مدل با استفاده از تکنیک‌های دسته‌بندی مانند رگرسیون لجستیک
            • انجام پیش‌بینی با استفاده از مدل آموزش‌دیده
            • افزایش اطمینان در مدل با استفاده از معیارهایی مانند امتیاز دقت، ماتریس سردرگمی، یادآوری، دقت مثبت و امتیاز F1
            • مدیریت داده‌های نامتوازن با استفاده از روش‌های مختلف
            • انجام انتخاب ویژگی با روش‌های متنوع
            • ذخیره بهترین مدل در قالب Pickle برای استفاده‌های آینده

توضیحات پروژه

پیش‌بینی یک پاسخ کیفی برای یک مشاهده به معنای دسته‌بندی آن مشاهده است، زیرا این فرآیند شامل اختصاص دادن مشاهده به یک دسته یا کلاس خاص می‌باشد. دسته‌بندی اساس رگرسیون لجستیک را تشکیل می‌دهد. رگرسیون لجستیک یک الگوریتم نظارت‌شده است که برای پیش‌بینی یک متغیر وابسته که کیفی یا گسسته است، استفاده می‌شود. این روش داده‌ها را با استفاده از تابع سیگموئید مدل‌سازی می‌کند.

مشتریانی که قرارداد خود را با شرکت پایان داده‌اند، به‌عنوان مشتریان از دست‌رفته (Churned Customers) شناخته می‌شوند. در مطالعه موردی ما، بر روی یک مجموعه داده مربوط به مشتریان از دست‌رفته (Churn Dataset) کار خواهیم کرد.

شرکت XYZ یک شرکت ارائه‌دهنده خدمات است که به مشتریان خود یک برنامه اشتراک یک‌ساله برای محصول خود ارائه می‌دهد. این شرکت می‌خواهد بداند که آیا مشتریان اشتراک خود را برای سال آینده تمدید خواهند کرد یا خیر.

مجموعه داده پروژه

این داده‌ها اطلاعاتی درباره‌ی یک شرکت ارائه‌دهنده خدمات پخش ویدئو ارائه می‌دهد که هدف آن پیش‌بینی این است که آیا مشتری از خدمات انصراف خواهد داد یا خیر. این فایل CSV شامل حدود 2000 ردیف و 16 ستون است.

فناوری‌های استفاده‌شده

      • زبان: پایتون
      • کتابخانه‌ها: numpy, pandas, matplotlib, seaborn, sklearn, pickle, imblearn, statsmodel

مراحل حل پروژه

      • وارد کردن کتابخانه‌های مورد نیاز و خواندن مجموعه داده
      • بازبینی و پاک‌سازی داده‌ها
      • انجام رمزگذاری روی متغیرهای دسته‌ای
      • تحلیل داده‌های اکتشافی (EDA)
        • بصری‌سازی داده‌ها
      • مهندسی ویژگی‌ها
        • حذف ستون‌های غیرضروری
      • ساخت مدل
        • استفاده از کتابخانه statsmodel
        • تقسیم داده به مجموعه‌های آموزش و تست
        • ایجاد مدل رگرسیون لجستیک
      • اعتبارسنجی مدل (پیش‌بینی‌ها)
        • امتیاز دقت (Accuracy score)
        • ماتریس درهم‌ریختگی (Confusion matrix)
        • ROC و AUC
        • امتیاز Recall
        • امتیاز Precision
        • F1-score
      • مدیریت داده‌های نامتوازن
        • استفاده از وزن‌های متوازن
        • وزن‌های تصادفی
        • تنظیم داده‌های نامتوازن
        • استفاده از SMOTE
      • انتخاب ویژگی‌ها
        • انتخاب آستانه مانع (Barrier threshold)
        • استفاده از روش RFE
      • ذخیره مدل به صورت فایل pickle