ایجاد پروژههای یادگیری ماشینی با استفاده از مجموعه دادههای دنیای واقعی، روشی مؤثر برای به کارگیری آنچه آموختهاید است. کار با مجموعه داده های دنیای واقعی به شما کمک می کند تا در مورد تمیز کردن و تجزیه و تحلیل داده های نامرتب، مدیریت عدم تعادل کلاس و موارد دیگر چیزهای زیادی بیاموزید. اما برای ایجاد مدلهای یادگیری ماشینی واقعاً مفید، فراتر از آموزش و ارزیابی مدلها و ایجاد API و داشبورد در صورت نیاز نیز مهم است.
در این راهنما، ما پنج پروژه یادگیری ماشینی را توضیح میدهیم که میتوانید در آخر هفته (به معنای واقعی کلمه!) با استفاده از مجموعه دادههای در دسترس عموم ایجاد کنید. برای هر پروژه پیشنهاد می کنیم:
- مجموعه داده مورد استفاده
- هدف پروژه
- زمینه های مورد علاقه (بنابراین می توانید مفاهیم را در صورت نیاز یاد بگیرید یا مرور کنید)
- وظایفی که هنگام ساخت مدل باید روی آنها تمرکز کرد
بیایید مستقیماً به موضوع شیرجه بزنیم!
1. پیش بینی قیمت خانه با استفاده از مجموعه داده مسکن Ames
شروع کوچک و ساده همیشه آسان است. پیشبینی قیمت مسکن بر اساس ویژگیهای ورودی یکی از مبتدیترین پروژههایی است که بر رگرسیون متمرکز شده است.
هدف: ساخت یک مدل رگرسیونی برای پیش بینی قیمت مسکن بر اساس ویژگی های نهاده های مختلف.
مجموعه داده: مجموعه داده مسکن ایمز
مناطق مورد علاقه:رگرسیون خطی، مهندسی ویژگی و انتخاب، ارزیابی مدل رگرسیون
تمرکز کنید:
- EDA جامع برای درک داده ها
- انتساب مقادیر از دست رفته
- مدیریت ویژگی های طبقه بندی و مقیاس بندی ویژگی های دیجیتال در صورت نیاز
- مهندسی ویژگی در ستون های عددی
- ارزیابی مدل با استفاده از معیارهای رگرسیون مانند RMSE (ریشه میانگین مربعات خطا)
هنگامی که یک مدل کار می کنید، می توانید از Flask یا FastAPI برای ایجاد یک API استفاده کنید، جایی که کاربران می توانند جزئیات ویژگی را وارد کنند و پیش بینی قیمت را دریافت کنند.
2. تحلیل احساسات توییت ها
تجزیه و تحلیل احساسات توسط مشاغل برای نظارت بر بازخورد مشتریان استفاده می شود. می توانید با کار بر روی یک پروژه تحلیل احساسات توییت، تحلیل احساسات را شروع کنید.
هدف: یک مدل تجزیه و تحلیل احساسات بسازید که می تواند توییت ها را بر اساس محتوای آنها به عنوان مثبت، منفی یا خنثی طبقه بندی کند.
مجموعه داده: مجموعه داده های تحلیل احساسات توییتر
مناطق مورد علاقه:اصول اساسی پردازش زبان طبیعی (NLP)، پیش پردازش متن، طبقه بندی متن
تمرکز کنید:
- پیش پردازش متن
- مهندسی ویژگی: از امتیازهای فرکانس معکوس فرکانس سند (TF-IDF) یا جاسازی کلمه برای تبدیل داده های متنی به ویژگی های عددی استفاده کنید.
- یک مدل طبقه بندی را آموزش دهید و عملکرد آن را در طبقه بندی احساسات ارزیابی کنید
همچنین سعی کنید یک API بسازید که به کاربران امکان می دهد توییت یا لیستی از توییت ها را وارد کنند و پیش بینی احساسات را در زمان واقعی دریافت کنند.
3. تقسیم بندی مشتری با استفاده از مجموعه داده خرده فروشی آنلاین
تقسیمبندی مشتری به کسبوکارها اجازه میدهد تا استراتژیهای بازاریابی خود را بر اساس رفتارشان برای گروههای مختلف مشتریان تنظیم کنند. شما روی استفاده از تکنیکهای خوشهبندی برای گروهبندی مشتریان برای هدفگیری بهتر بخشهای خاص مشتری تمرکز خواهید کرد.
هدف:مشتریان را بر اساس عادات و رفتار خریدشان به گروه های مجزا تقسیم کنید.
مجموعه داده: مجموعه داده خرده فروشی آنلاین
مناطق مورد علاقه: یادگیری بدون نظارت، تکنیک های خوشه بندی (K-Means، DBSCAN)، مهندسی ویژگی، تجزیه و تحلیل RFM
تمرکز کنید:
- پیش پردازش مجموعه داده
- ویژگی های معناداری مانند تازگی، فراوانی، ارزش پولی (نمرات RFM) را از ویژگی های موجود ایجاد کنید
- از تکنیک هایی مانند K-Means یا DBSCAN برای تقسیم بندی مشتریان بر اساس امتیازات RFM استفاده کنید
- برای ارزیابی کیفیت خوشهبندی از معیارهایی مانند امتیاز شبح استفاده کنید
- تجسم بخشهای مشتری با استفاده از نمودارهای دوبعدی برای درک توزیع مشتریان در بخشهای مختلف
همچنین سعی کنید با استفاده از Streamlit یا Plotly Dash یک داشبورد تعاملی ایجاد کنید تا بخشهای مشتری را تجسم کنید و معیارهای کلیدی مانند درآمد به بخش، ارزش طول عمر مشتری (CLV) و لغو اشتراک را بررسی کنید.
4. پیش بینی نرخ ریزش مشتری بر اساس مجموعه داده های ریزش مشتری اپراتور مخابراتی
پیشبینی ریزش برای مشاغلی که به مدلهای اشتراک متکی هستند ضروری است. پروژههای پیشبینی ریزش شامل ایجاد یک مدل طبقهبندی برای شناسایی مشتریانی است که احتمالاً ترک میکنند، که میتواند به کسبوکارها در طراحی استراتژیهای حفظ بهتر کمک کند.
هدف:یک مدل طبقه بندی برای پیش بینی ریزش مشتری بر اساس ویژگی های مختلف مانند جمعیت شناسی مشتری، اطلاعات قرارداد و داده های استفاده ایجاد کنید.
مجموعه داده: مجموعه داده های Churn مشتری Telco
مناطق مورد علاقه: طبقه بندی، مدیریت نامتعادل داده ها، مهندسی ویژگی و انتخاب
تمرکز کنید:
- انجام EDA و پیش پردازش داده ها
- مهندسی ویژگی برای ایجاد متغیرهای نماینده جدید
- بررسی و رسیدگی به عدم تعادل کلاس
- آموزش یک مدل طبقه بندی با استفاده از الگوریتم های مناسب و ارزیابی مدل
همچنین میتوانید یک داشبورد برای تجسم پیشبینیهای ریزش و تجزیه و تحلیل عوامل خطر بر اساس نوع قرارداد، استفاده از خدمات و سایر متغیرهای کلیدی ایجاد کنید.
5. سیستم توصیه فیلم با استفاده از مجموعه داده MovieLens
سیستمهای توصیهکننده در بسیاری از صنایع، بهویژه در پلتفرمهای جریان و تجارت الکترونیک استفاده میشوند، زیرا با پیشنهاد محصولات یا محتوا بر اساس ترجیحات کاربر، به شخصیسازی تجربه کاربر کمک میکنند.
هدف:سامانه توصیه ای بسازید که فیلم ها را بر اساس سابقه مشاهده و ترجیحات کاربران به آنها پیشنهاد می کند.
مجموعه داده: مجموعه داده MovieLens
مناطق مورد علاقه: تکنیک های فیلتر مشارکتی، فاکتورسازی ماتریس (SVD)، فیلتر مبتنی بر محتوا
تمرکز کنید:
- پیش پردازش داده ها
- استفاده از تکنیک های فیلتر مشترک: فیلتر مشترک عناصر کاربر و فاکتورسازی ماتریس
- بررسی فیلترینگ مبتنی بر محتوا
- ارزیابی مدل برای ارزیابی کیفیت توصیهها
یک API ایجاد کنید که در آن کاربران بتوانند تنظیمات برگزیده فیلم خود را وارد کرده و پیشنهادات فیلم را دریافت کنند. سیستم توصیه را بر روی پلتفرمهای ابری مستقر کرده و از طریق یک برنامه وب در دسترس قرار دهید.
برای نتیجه گیری
همانطور که در پروژه ها پیشرفت می کنید، خواهید دید که کار با مجموعه داده های دنیای واقعی اغلب می تواند دشوار باشد. اما در طول مسیر چیزهای زیادی یاد خواهید گرفت و درک خواهید کرد که چگونه از یادگیری ماشینی برای حل مشکلات دنیای واقعی که مهم هستند استفاده کنید.
با فراتر رفتن از مدلها در محیطهای نوتبوک Jupyter با ساختن با API و داشبورد، تجربه عملی و سرتاسری با یادگیری ماشین به دست خواهید آورد که مفید است.
پس منتظر چی هستی؟ چند فنجان قهوه بردارید و شروع به کدنویسی کنید!