رگرسیون ریج

از testwiki
نسخهٔ تاریخ ۲۹ مارس ۲۰۲۴، ساعت ۰۷:۰۸ توسط imported>HujiBot (ربات: افزودن رده‌های همسنگ)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

رگرسیون ریج (به انگلیسی: Ridge regression) یکی از نسخه‌های رگرسیون خطی است که در مسائلی با متغیرهای مستقل دارای همبستگی بالا برای تخمین ضرایب استفاده می‌شود و مشکل هم‌خطی چندگانه را کاهش می‌دهد. ریج، همچنین یکی از روش‌های تنظیم مدل است که از بیش‌برازش در رگرسیون جلوگیری می‌کند. در این روش، نُرمِ L2 ضرایب به تابع هزینه مجموع مربعات خطاالگو:یادچپ حین فرایند آموزش مدل، افزوده می‌شود. با این کار وزن‌های مدل تا حد امکان کوچک نگه داشته می‌شوند.[۱]

تعریف ریاضی

فرض کنید در مسئله رگرسیون، مجموعه داده‌ها شامل N جفت متغیر پیشگو و متغیر پاسخ به صورت D={(x1,y1),,(xN,yN)} باشد. هدف بدست آوردن y به عنوان ترکیبی خطی از x است یعنی xTβ+β0. رگرسیون خطی معمولی به شکل زیر در پی یافتن و بهینه است به طوری که مجموع مربعات خطا را کمینه کند: الگو:وسط‌چین minβ0,β{i=1N(yiβ0xiTβ)2} الگو:پایان وسط‌چیندر رگرسیون ریج ضریبی از نُرمِ L2 به تابع هزینه اضافه می‌شود:الگو:وسط‌چین minβp{YXβ22+λβ22} الگو:پایان وسط‌چینپارامتر λ میزان جریمه روی نُرمِ L2 را مشخص می‌کند. اضافه کردن ضریبی از نُرمِ L2 به تابع هزینه معادلِ ایجاد محدودیتی بر روی نُرمِ L2 است:الگو:وسط‌چین minβp{YXβ22} subject to β22t2 الگو:پایان وسط‌چین که منظور از vp در واقع، نُرمِ p است که به صورت زیر محاسبه می‌شود:الگو:وسط‌چین vp=(i=1N|vi|p)1/pالگو:پایان وسط‌چینبنابراین، رگرسیون ریج محدودیت‌های بیشتری را روی ضرایب مدل اعمال می‌کند. چراکه در این روش افزون بر تلاش برای کمینه کردن میانگین خطای مربعات خطاها، جریمه‌ایالگو:یادچپ روی ضرایب هم در نظر گرفته می‌شود. در نتیجه ترجیح بر انتخاب ضرایبی با اندازهٔ کوچک یا نزدیک به صفر است تا جملهٔ جدید افزوده شده به تابع هزینه نیز کوچک شود[۲]

فرم بستهٔ جواب

برای به دست آوردن فرم بستهٔ جواب به فرم ماتریسی تابع هزینه را توجه کنید:الگو:وسط‌چین (YXβ)T(YXβ)+λβTβ الگو:پایان وسط‌چین کافیست نسبت به β مشتق بگیریم:الگو:وسط‌چین XTY=(XTX+λI)β الگو:پایان وسط‌چیندر نتیجه:الگو:وسط‌چین βR^=(XTX+λI)1XTy الگو:پایان وسط‌چین

مصورسازی

برای مصورسازی روش رگرسیوت ریح توجه کنید که جمع خطای مربعات، به شکل خطوط تراز بیضوی نمایش داده می‌شود. به علاوه در مسألهٔ رگرسیون ریج، ناحیه‌ای که ضرایب مدل را مشخص می‌کند از رابطه زیر به دست می‌آید:الگو:وسط‌چین β12+β22t2 الگو:پایان وسط‌چین

که در صفحهٔ مختصات دو بعدی، دایره‌ای به شعاع را نمایش می‌دهد.[۳] تصویر برخورد خطوط تراز با محدوده ضرایب در رگرسیون ریج در تصویر زیر نمایش داده شده‌است:

(شکل ۱) برخورد خطوط تراز با محدوده ضرایب در رگرسیون ریج

در شکل نشان داده شده بیضی‌های مربوط به خطوط تراز داخلی جمع خطای مربعات کمتری دارند. و در نقطهٔ میانی مشخص‌شده، خطای میانگین مربعات کمینه می‌شود. در مدل ریج، تلاش می‌شود اندازهٔ دایره و بیضی همزمان کوچک شوند. در واقع یک بده‌بستانالگو:یادچپ میان دو جملهٔ تابع هزینه وجود دارد. پاسخ مسألهٔ رگرسیون ریج در نقطه‌ای است که خطوط تراز بیضوی با محدودهٔ دایره‌ای شکل ضرایب برخورد می‌کند.[۲]

پیاده‌سازی (پایتون)

با استفاده از کتابخانهٔ Sickit-Learn زبان برنامه‌نویسی پایتون می‌توان رگرسیون ریج را به سادگی، به صورت زیر پیاده‌سازی کرد:

from sklearn.linear_model import Ridge

ridge = Ridge(alpha=0.1)
ridge.fit(X_train, y_train)
prediction= lasso.predict(X_test)

پارامتر تنظیم مدل در این مثال ساده برابر با

0.1

در نظر گرفته شده و پس از آموزش، از مدل برای پیش‌بینی روی دادهٔ جدید استفاده شده‌است.

یادداشت‌ها

الگو:چندستونه الگو:یادداشت الگو:پایان چندستونه

منابع

الگو:پانویس