توضیحات
آنچه که در این پروژه یاد میگیرید:
-
-
-
- درک مسئله کسبوکار
- وارد کردن مجموعهداده و کتابخانههای مورد نیاز
- انجام تحلیل اکتشافی داده (EDA) اولیه
- پاکسازی داده و مدیریت مقادیر گمشده در صورت نیاز با استفاده از روشهای مناسب
- بررسی وجود نقاط پرت
- استفاده از کتابخانههای پایتون مانند matplotlib و seaborn برای تفسیر داده و ایجاد تجسمات پیشرفته
- تقسیم مجموعهداده به دادههای آموزشی و آزمایشی
- انجام مهندسی ویژگیها روی داده برای بهبود عملکرد
- آموزش مدل با استفاده از تکنیکهای رگرسیون مانند رگرسیون خطی، رگرسیون جنگل تصادفی، رگرسیون XGBoost و غیره
- آموزش چندین مدل با استفاده از الگوریتمهای مختلف یادگیری ماشین مناسب برای سناریو و بررسی بهترین عملکرد
- انجام جستجوی شبکهای و اعتبارسنجی متقاطع برای رگرسیوندهندههای داده شده
- پیشبینی با استفاده از مدل آموزشدیده
- افزایش اطمینان در مدل با استفاده از معیارهایی مانند MSE و R2
- ترسیم نمودارهای باقیمانده برای دادههای آموزشی و آزمایشی
- یافتن ویژگیهایی که بیشترین کمک را به پیشبینی میکنند با استفاده از اهمیت ویژگیها
- مقایسه مدلها
- یادگیری نحوه ساخت مدل چندلایه پرسپترون (MLP) با استفاده از کتابخانه Scikit-learn
- یادگیری نحوه ساخت مدل چندلایه پرسپترون (MLP) با استفاده از TensorFlow
-
-
توضیحات پروژه
قیمت یک خانه بر اساس چندین ویژگی مانند موقعیت مکانی، مساحت کل، تعداد اتاقها، امکانات موجود و غیره تعیین میشود. در این پروژه، پیشبینی قیمت خانه برای ۲۰۰ آپارتمان در شهر پونا انجام خواهد شد. مدلهای رگرسیون مختلفی مانند رگرسیون خطی، جنگل تصادفی، XGBoost و غیره پیادهسازی میشوند. همچنین، مدلهای پرسپترون چندلایه (MLP) با استفاده از Scikit-learn و TensorFlow پیادهسازی خواهند شد. این پروژه به شما کمک میکند تا با استفاده از ویژگیها و خصوصیات مختلف خانه، قیمت آنها را پیشبینی کنید.
مجموعه داده پروژه
ما یک مجموعهداده املاک و مستغلات داریم که شامل حدود ۲۰۰ ردیف و ۱۷ متغیر مختلف است. این متغیرها نقش مهمی در پیشبینی متغیر هدف ما، یعنی قیمت، ایفا میکنند.
فناوریهای استفادهشده
-
-
- زبان: پایتون
- کتابخانهها: sklearn, pandas, NumPy, matplotlib, seaborn, xgboost
-
مراحل حل پروژه
-
-
- پاکسازی دادهها
- وارد کردن کتابخانههای لازم و خواندن مجموعهداده.
- بررسی اولیه.
- بررسی و حذف نقاط پرت.
- حذف ستونهای ویژگی زائد.
- مدیریت مقادیر گمشده.
- تنظیم ستونهای دستهبندیشده.
- ذخیره دادههای پاکشده.
- پیشپردازش دادهها
- وارد کردن کتابخانههای لازم و خواندن مجموعهداده پاکشده.
- تبدیل ستونهای باینری به متغیرهای مجازی (dummy variables).
- مهندسی ویژگیها
- تحلیل یکمتغیره و دومتغیره.
- بررسی همبستگی.
- انتخاب ویژگیها.
- مقیاسبندی دادهها.
- ذخیره مجموعهداده بهروزرسانیشده نهایی.
- پاکسازی دادهها
-
-
-
- ساخت مدل
- آمادهسازی دادهها
- انجام تقسیمبندی دادهها به مجموعههای آموزشی و آزمایشی.
- رگرسیون خطی.
- رگرسیون Ridge.
- رگرسیون Lasso.
- شبکه الاستیک (Elastic Net).
- رگرسیون جنگل تصادفی.
- رگرسیون XGBoost.
- رگرسیون نزدیکترین همسایهها (K-Nearest Neighbours).
- رگرسیون بردار پشتیبان (Support Vector).
- ساخت مدل
-
-
-
- ارزیابی مدل
- میانگین خطای مربعات (Mean Squared Error).
- نمره R2.
- نمودار باقیماندهها (residuals).
- انجام جستجوی شبکهای (Grid Search) و اعتبارسنجی متقابل برای رگرسیوندهنده موردنظر.
- برازش مدل و پیشبینی روی دادههای آزمایشی.
- بررسی اهمیت ویژگیها.
- مقایسه مدلها.
- مدلهای پرسپترون چندلایه (MLP)
- رگرسیون MLP با استفاده از Scikit-learn.
- رگرسیون با استفاده از TensorFlow.
- ارزیابی مدل
-