رگرسیون خطی چندگانه
رگرسیون با چند ویژگی: فرمول، پیادهسازی، تفسیر ضرایب و دامهای رایج
رگرسیون خطی چندگانه
وقتی چند ویژگی داریم، رگرسیون از «خط» به «صفحه» و «ابرمصفحه» تبدیل میشود:
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
تفسیر ضرایب
هر ضریب اثر «آن ویژگی» را با ثابت ماندن بقیه نشان میدهد:
coef_[0] = 0.45: با هر متر اضافه، قیمت ۰.۴۵ واحد بیشتر (با ثابت ماندن اتاق و سن)coef_[2] = -0.8: با هر سال سن بنا، قیمت ۰.۸ واحد کمتر
دام ۱: چندخطی بودن (Multicollinearity)
اگر دو ویژگی همبسته باشند (متراژ و فوت)، ضرایب بیثبات و بیمعنا میشوند. راهحل: حذف یکی از ویژگیهای همبسته.
دام ۲: ویژگیهای بیاهمیت
ویژگی بیربط فقط نویز اضافه میکند. با همبستگی یا اهمیت ویژگی، آن را حذف کنید.
مزایا و معایب
| مزایا | معایب |
|---|---|
| ساده و سریع | فقط روابط خطی |
| قابل تفسیر | حساس به پرتها |
| پایه مدلهای پیچیده | چندخطی بودن ضرایب را خراب میکند |
رگرسیون خطی چندگانه پایهی درک مدلهای پیچیدهتر است؛ حتی شبکههای عصبی در本质 همین را با انعطاف بیشتر تعمیم میدهند.
جمعبندی
- چندگانه = چند ویژگی با ضرایب جداگانه
- هر ضریب اثر ویژگی خودش با ثابت ماندن بقیه است
- مراقب ویژگیهای همبسته و بیاهمیت باشید
این مبحث بخشی از دوره آموزش کامل ماشین لرنینگ است.