آموزش رایگان صفر تا صد یادگیری ماشین (Machine Learning) به زبان ساده
-
خوش آمدید به یادگیری ماشین!
-
میانگین، میانه و مد در یادگیری ماشین
-
انحراف معیار (Standard Deviation) در یادگیری ماشین
-
صدک (Percentile) در یادگیری ماشین
-
توزیع دادهها در یادگیری ماشین
-
توزیع نرمال دادهها در یادگیری ماشین
-
نمودار پراکندگی (Scatter Plot) در یادگیری ماشین
-
رگرسیون خطی در یادگیری ماشینی
-
رگرسیون چندجملهای در یادگیری ماشین
-
رگرسیون چندگانه در یادگیری ماشین
-
روش Train/Test در یادگیری ماشین
-
درخت تصمیمگیری در یادگیری ماشین
-
ماتریس سردرگمی (Confusion Matrix) در یادگیری ماشین
-
خوشهبندی سلسلهمراتبی (Hierarchical Clustering) در یادگیری ماشین
-
رگرسیون لجستیک در یادگیری ماشین
-
Grid Search در یادگیری ماشین
-
پردازش دادههای دستهای (Categorical Data) در یادگیری ماشین
-
خوشهبندی K-Means در یادگیری ماشین
-
یادگیری Bootstrap Aggregation (Bagging) در یادگیری ماشین
-
کراس والیدیشن (Cross Validation) در یادگیری ماشین
-
منحنی AUC - ROC در یادگیری ماشین
-
الگوریتم K-Nearest Neighbors (KNN) در یادگیری ماشین
رگرسیون چندگانه در یادگیری ماشین
رگرسیون چندگانه (Multiple Regression) یکی از روشهای پرکاربرد در یادگیری ماشین (Machine Learning) است که به ما کمک میکند مقدار یک متغیر را بر اساس چندین ویژگی پیشبینی کنیم. اگر با رگرسیون خطی ساده آشنا هستید، در آنجا فقط از یک متغیر مستقل برای پیشبینی مقدار خروجی استفاده میکردیم، اما در رگرسیون چندگانه میتوانیم از چندین متغیر برای انجام این پیشبینی استفاده کنیم.
📌 مثال واقعی: تصور کنید که میخواهید مقدار گاز CO2 تولیدی خودروها را بر اساس وزن و حجم موتور آنها پیشبینی کنید. هرچقدر حجم موتور یا وزن خودرو بیشتر باشد، احتمالاً میزان تولید CO2 هم افزایش پیدا میکند. اینجاست که رگرسیون چندگانه به کمک ما میآید!
فهرست مطالب 📌
- معرفی مجموعهداده و مفهوم رگرسیون چندگانه
- نحوه پیادهسازی در پایتون
- درک ضریب (Coefficient) و تأثیر آن
- تست مدل با تغییر وزن خودرو
1. معرفی مجموعهداده و مفهوم رگرسیون چندگانه 🔍
برای درک بهتر این مفهوم، مجموعهدادهای از مشخصات خودروها را بررسی میکنیم. این مجموعه شامل نام خودرو، مدل، حجم موتور، وزن و مقدار گاز CO2 تولیدی است.
📊 دادههای خودروها
برند | مدل | حجم موتور (سیسی) | وزن (کیلوگرم) | CO₂ (گرم در کیلومتر) |
---|---|---|---|---|
Toyota | Aygo | 1000 | 790 | 99 |
Mitsubishi | Space Star | 1200 | 1160 | 95 |
Skoda | Citigo | 1000 | 929 | 95 |
Fiat | 500 | 900 | 865 | 90 |
Mini | Cooper | 1500 | 1140 | 105 |
Mercedes | C-Class | 2100 | 1365 | 99 |
2. نحوه پیادهسازی در پایتون 🐍
📥 وارد کردن کتابخانههای موردنیاز
در پایتون، کتابخانههایی مانند pandas و sklearn برای پردازش دادهها و اجرای مدلهای یادگیری ماشین استفاده میشوند. ابتدا باید این کتابخانهها را وارد کنیم:
import pandas
from sklearn import linear_model
📂 خواندن دادهها
فایل data.csv که شامل اطلاعات خودروها است، وارد میکنیم و یک DataFrame از آن میسازیم:
df = pandas.read_csv("data.csv")
📌 تعیین متغیرهای مستقل و وابسته
در اینجا:
- X شامل متغیرهای وزن (Weight) و حجم موتور (Volume) است.
- y مقدار CO2 تولیدی خودرو را نشان میدهد.
X = df[['Weight', 'Volume']]
y = df['CO2']
🔹 نکته: در یادگیری ماشین، معمولاً X را با حروف بزرگ و y را با حروف کوچک مینویسیم.
🏗️ ایجاد مدل رگرسیون
اکنون یک مدل رگرسیون خطی از ماژول sklearn
ایجاد کرده و آن را با دادهها آموزش میدهیم:
regr = linear_model.LinearRegression()
regr.fit(X, y)
🔍 پیشبینی مقدار CO2
حالا مقدار CO2 یک خودروی فرضی با وزن 2300 کیلوگرم و حجم موتور 1300 سیسی را پیشبینی میکنیم:
predictedCO2 = regr.predict([[2300, 1300]])
print(predictedCO2)
📌 نتیجه: اگر این خودرو 1.3 لیتر حجم موتور و وزن 2300 کیلوگرم داشته باشد، میزان تولید CO2 آن تقریباً 107 گرم در کیلومتر خواهد بود.
3. درک ضریب (Coefficient) و تأثیر آن ⚖️
🔹 ضریب (Coefficient) یک مقدار عددی است که تأثیر یک متغیر مستقل بر مقدار خروجی را نشان میدهد. در این مدل، ضریب وزن و حجم موتور مشخص میکند که افزایش یک واحدی در هرکدام، چقدر CO2 بیشتری تولید میکند.
📌 نمایش ضرایب مدل
print(regr.coef_)
✅ نتیجه ضرایب:
[0.00755095 0.00780526]
🔹 تحلیل:
- وزن خودرو: به ازای افزایش 1 کیلوگرم در وزن خودرو، میزان CO2 تولیدی 0.00755 گرم در کیلومتر افزایش مییابد.
- حجم موتور: به ازای افزایش 1 سیسی در حجم موتور، میزان CO2 تولیدی 0.00780 گرم در کیلومتر افزایش مییابد.
4. تست مدل با تغییر وزن خودرو 🚗⚖️
حالا ببینیم اگر وزن خودرو را 1000 کیلوگرم افزایش دهیم، چقدر CO2 بیشتری تولید میشود.
🔍 محاسبه CO2 برای خودرو با وزن 3300 کیلوگرم
predictedCO2 = regr.predict([[3300, 1300]])
print(predictedCO2)
✅ نتیجه:
[114.75968007]
📌 تحلیل:
- مقدار اولیه CO2 برای وزن 2300 کیلوگرم برابر 107 گرم بود.
- پس از افزایش وزن به 3300 کیلوگرم، مقدار CO2 به 115 گرم رسید.
- این افزایش مطابق با فرمول محاسبه شده است:
107.2087328 + (1000 * 0.00755095) = 114.75968
✅ نتیجهگیری: این مدل بهدرستی پیشبینی میکند که با افزایش وزن، میزان تولید CO2 افزایش مییابد.
نتیجهگیری 🎯
رگرسیون چندگانه یکی از بهترین روشهای یادگیری ماشین برای پیشبینی مقدار خروجی بر اساس چندین ویژگی ورودی است. در اینجا یاد گرفتیم که:
✅ چگونه از pandas و sklearn برای پیادهسازی مدل رگرسیون چندگانه استفاده کنیم.
✅ چگونه تأثیر متغیرهای مستقل (وزن و حجم موتور) را بر مقدار CO2 بررسی کنیم.
✅ چگونه ضرایب رگرسیون را بخوانیم و تحلیل کنیم.
💡 چالش برای شما: مدل را گسترش دهید و تأثیر ویژگیهای دیگر مثل تعداد سیلندر یا نوع سوخت را هم روی CO2 بررسی کنید.
📌 سوال: آیا بهنظر شما میتوانیم از همین مدل برای پیشبینی مصرف سوخت هم استفاده کنیم؟ 🤔 پاسخ خود را در نظرات بنویسید! 🚀