لسو
لَسو یکی از روشهای تنظیم مدل برای انتخاب ویژگی و جلوگیری از بیشبرازش در رگرسیون است که باعث میشود بسیاری از پارامترهای مدل نهائی صفر شوند و مدل به اصطلاح خلوت شود. در روش لَسو نُرمِ
تعریف ریاضی
اگر در مسئله رگرسیون، دادهها را به صورت
حال اگر دادهها را در ماتریس
دو دلیل کلی برای تغییر و بهبود روش خطای میانگین مربعات وجود دارد. مورد اول اینکه پیچیدگی مدلهای پارامتری با تعداد پارامترهای مدل و مقادیر آنها سنجیده میشود. هرچه این پیچیدگی بیشتر باشد خطر بیشبرازش برای مدل بیشتر است. پدیدهٔ بیشبرازش زمانی رخ میدهد که مدل بهجای یادگیری الگوهای موجود در داده، خود داده را به خاطر میسپارد. در این حالت، مدل برای آن مجموعه دادهٔ بهخصوص خوب عمل میکند اما برای دادههای مشابه دیگر عملکرد خوبی ندارد، که یعنی عمل یادگیری به خوبی انجام نشدهاست. در این حالت مدل، بایاس کم و واریانس زیادی دارد و در واقع بیشبرازش اتفاق افتاده است. برای جلوگیری از بیشبرازش در مدلهای خطی مانند رگرسیون خطی یا رگرسیون لجستیک، یک «جریمه» به تابع هزینه اضافه میشود تا از افزایش پارامترها جلوگیری شود. به این کار تنظیم مدل گفته میشود.
در روش لَسو ضریبی از نُرمِ
اضافه کردن ضریبی از نُرمِ
که منظور از
استفاده از این باعث میشود بسیاری از پارامترهای مدل نهائی که دارای کمترین میزان اهمیت هستند، صفر شده و مدل به اصلاح خلوت شود. بدین ترتیب بایاس مقداری افزایش یافته اما واریانس کاهش مییابد. بنابراین لَسو به طور کلی میتواند منجر به افزایش دقت مدل شود.
هدف دیگری که استفاده از این روش دنبال میکند، افزایش قابلیت تبیین مدل است که با کاهش تعداد پارامترهای تخمینگر انجام میشود.
مصورسازی
برای مصورسازی محدودیتهای اعمال شده در دو مدل رگرسیون ریج و لَسو با پارامترهای
که دایرهای به شعاع
اما در لَسو، محدودیت اعمال شده روی ضرایب به صورت زیر است:
که در مختصات دوبعدی ناحیهای به شکل لوزی را تشکیل میدهد (شکل 2).
در هر دو روش اولین محل برخورد این نواحی با خطوط تراز بیضوی به عنوان جواب مسأله در نظر گرفته میشود.
از آنجایی که لوزی برخلاف دایره، دارای گوشههایی است، امکان برخورد خطوط تراز با محدودۀ ضرایب در گوشهها وجود دارد. اگر برخورد با خطوط تراز در یکی از این گوشهها اتفاق افتاده باشد، یکی از ضرایب در مدل برابر با صفر میشود. محدودۀ ضرایب لَسو در ابعاد بالاتر، دارای گوشهها و لبههای زیادی بوده و شانس برخورد خطوط تراز در این نقاط و درنتیجۀ آن، صفر شدن تعدادی از ضرایب بیشتر میشود. بدین ترتیب تعداد پارامترهای غیرصفر در مدل کاهش یافته و مدل به اصطلاح خلوتتر میشود.
پیادهسازی (پایتون)
با استفاده از کتابخانۀ Sickit-Learn زبان برنامهنویسی پایتون میتوان مدل لَسو را به سادگی، به صورت زیر پیادهسازی کرد:
from sklearn.linear_model import Lasso
lasso = Lasso(alpha=0.1)
lasso.fit(X_train, y_train)
prediction= lasso.predict(X_test)
پارامتر تنظیم مدل در این مثال ساده برابر با
یادداشتها
منابع
- ↑ Natarajan, B. K. (1995). "Sparse Approximate Solutions to Linear Systems". SIAM Journal on Computing (به انگلیسی). 24 (2): 227–234. doi:10.1137/s0097539792240406. ISSN 0097-5397. Archived from the original on 24 May 2019. Retrieved 17 December 2019.
- ↑ Bühlmann, Peter; van de Geer, Sara (2011). "Statistics for High-Dimensional Data". Springer Series in Statistics (به انگلیسی). doi:10.1007/978-3-642-20192-9. ISSN 0172-7397. Archived from the original on 21 February 2019. Retrieved 5 October 2018.
- ↑ Bühlmann, Peter; van de Geer, Sara (2011). Theory for ℓ1/ℓ2-penalty procedures (به انگلیسی). Berlin, Heidelberg: Springer Berlin Heidelberg. pp. 249–291. doi:10.1007/978-3-642-20192-9_8. Archived from the original on 5 October 2018.
- ↑ Géron, A. (2022). Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow (3rd ed.). O’Reilly Media. (به انگلیسی).
- ↑ Hastie, T., Tibshirani, R., & Wainwright, M. (2020). Statistical Learning with Sparsity (Chapman & Hall/CRC Monographs on Statistics and Applied Probability) (1st ed.). Routledge. (به انگلیسی).