رگرسیون خطی چندگانه

رگرسیون با چند ویژگی: فرمول، پیاده‌سازی، تفسیر ضرایب و دام‌های رایج

رگرسیون خطی چندگانه

وقتی چند ویژگی داریم، رگرسیون از «خط» به «صفحه» و «ابرمصفحه» تبدیل می‌شود:

y = b + a₁x₁ + a₂x₂ + ... + aₙxₙ

# مثال:
قیمت = b + a₁×متراژ + a₂×اتاق + a₃×سن‌بنا

پیاده‌سازی

کد دقیقاً مثل قبل است؛ فقط X چند ستون دارد:

from sklearn.linear_model import LinearRegression

# X با ۳ ویژگی: متراژ، اتاق، سن بنا
model = LinearRegression()
model.fit(X_train, y_train)

print(model.coef_)       # [a₁, a₂, a₃]
print(model.intercept_)  # b

تفسیر ضرایب

هر ضریب اثر «آن ویژگی» را با ثابت ماندن بقیه نشان می‌دهد:

دام ۱: چندخطی بودن (Multicollinearity)

اگر دو ویژگی همبسته باشند (متراژ و فوت)، ضرایب بی‌ثبات و بی‌معنا می‌شوند. راه‌حل: حذف یکی از ویژگی‌های همبسته.

دام ۲: ویژگی‌های بی‌اهمیت

ویژگی بی‌ربط فقط نویز اضافه می‌کند. با همبستگی یا اهمیت ویژگی، آن را حذف کنید.

مزایا و معایب

مزایامعایب
ساده و سریعفقط روابط خطی
قابل تفسیرحساس به پرت‌ها
پایه مدل‌های پیچیدهچندخطی بودن ضرایب را خراب می‌کند
رگرسیون خطی چندگانه پایه‌ی درک مدل‌های پیچیده‌تر است؛ حتی شبکه‌های عصبی در本质 همین را با انعطاف بیشتر تعمیم می‌دهند.

جمع‌بندی

این مبحث بخشی از دوره آموزش کامل ماشین لرنینگ است.

ابزارهای مرتبط