رگرسیون خطی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به ناوبری پرش به جستجو
رگرسیون خطی با یک متغیر مستقل

رگرسیون خطی یا تنازل خطی یا وایازی خطی (به انگلیسی: Linear regression) یکی از روشهای تحلیل رگرسیون است. در رگرسیون خطّی، متغیّر وابسته ترکیب خطی‌ای از ورودی یا متغیرهای مستقل است. البته ضرورتاً متغیر وابسته لازم نیست که نسبت به متغیرهای مستقل خطی باشد.[۱]

تخمین پارامترها برای مسائل تک متغیره[ویرایش]

رگرسیون میزان اثر دو یا چند متغیر بر متغیر وابسته را می‌سنجد و همبستگی رابطه بین دو یا چند متغیر را مورد سنجش قرار می‌دهد (کریمی فر، ۱۳۸۷).

مثلاً تحلیل رگرسیونی سادهٔ زیر با نقطه، متغیر مستقل و ضرایب و خطی است:

خط راست:

در هر دو حالت، مقدار خطاست و پانویس شمارهٔ هر مشاهده (هر جفت و ) را نشان می‌دهد. با داشتن مجموعه‌ای از این نقطه‌ها می‌توان مدل را به دست آورد:

عبارت مانده نام دارد: . روش رایج برای به‌دست‌آوردن پارامترها، روش کمترین مربعات است. در این روش پارامترها را با کمینه‌کردن تابع زیر به دست می‌آورند:

در مورد رگرسیون ساده، پارامترها با این روش برابر خواهند بود با:

که در آن و میانگین و هستند.

تفاوت رگرسیون و همبستگی براساس هدف: هدف مدل‌های همبستگی بررسی میزان رابطه دو یا چند متغیر است در حالیکه رگرسیون به دنبال پیش‌بینی یک یا چند متغیر براساس یک یا چند متغیر دیگر است. از آنجا که رگرسیون برپایه داده‌های گذشته انجام می‌شود به آن عنوان Regression یعنی بازگشت به گذشته داده‌اند؛ بنابراین از نر هدف همبستگی میزان و شدت رابطه متغیرها را نشان می‌دهد اما رگرسیون معادله ای را برای پیش‌بینی متغیرها ارائه می‌کند.

تفاوت رگرسیون و همبستگی براساس روش: آنچه در خروجی نتایج رگرسیون و همبستگی باعث ایجاد تفاوت می‌شود آن است که در همبستگی همیشه اثرات متغیرها به صورت دو به دو مورد سنجش قرار می‌گیرد اما در یک مدل رگرسیون اثرات متغیرها به صورت همزمان بررسی می‌شود. یعنی در همبستگی رابطه متغیر X با متغیر Y به وجود یا عدم وجود متغیر Z ارتباطی ندارد اما اما در رگرسیون تأثیر متغیر X بر متغیر Y به وجود یا عدم وجود متغیر Z بستگی دارد.

تخمین پارامترها برای مسائل چند متغیره[ویرایش]

صورت مسئله[ویرایش]

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

تخمین پارامتر بهینه از روش کمترین مربعات[ویرایش]

در این روش برای بدست آوردن یا همان پارامتر بهینه، از تابع نسبت به گرادیان می‌گیریم و گرادیان را برابر صفر قرار می‌دهیم و پارامتر بهینه را بدست می‌آوریم.[۳] از آنجا که تابع نسبت به تابعی کاملاً محدب است، در نقطه مینیمم گرادیان ما صفر خواهد بود و این روش پارامتر بهینه را بدست می‌دهد.[۴] برای تسهیل کار شکل تابع را با بکارگیری چند ماتریس ساده می‌کنیم. دو ماتریس برای این کار نیاز داردیم ماتریس و ماتریس . ماتریس ماتریس ورودهای چندمتغیره ماست. هر سطر معادل یک نمونه از داده ماست، سطر ام برابر است با امین نمونه ورودی ما یعنی بردار ، از اینرو یک ماتریس خواهد بود. ماتریس از طرف دیگر برابر است با مجموعه متغیرهای وابسته داده ما. سطر ام این ماتریس برابر است با متغیر وابسته برای امین نمونه داده ما یا همان . ماتریس یک ماتریس است. با کمک این دو ماتریس می‌توان تابع هزینه را به شکل ذیل تعریف کرد:

حال گرادیان این تابع را نسبت به پیدا می‌کنیم که می‌شود:

با برابر قرار دادن گرادیان با صفر پارامتر بهینه بدست می‌آید:

پس پارامتر بهینه ما برابر است با:

تخمین پارامتر بهینه از روش گرادیان کاهشی تصادفی (Stochastic Gradient Descent)[ویرایش]

روش پارامتر تخمین پارامتر بهینه از طریق کمترین مربعات ممکن است چند اشکال اساسی داشته باشد. یکی آنکه محاسبه ممکن است زمانبر باشد. بُعدِ ماتریس مربعی برابر است با و اگر بعد بالا باشد زمان محاسبه معکوس این ماتریس می‌تواند مسئله ساز شود. مضاف بر این، ماتریس ممکن است معکوس پذیر نباشد. از این رو روشهای کاراتر و سریعتری برای تخمین پارامتر بهینه مورد استفاده قرار می‌گیرد. یکی از این روشها روش گرادیان کاهشی تصادفی است. در این روش هر بار یک مثال را بصورت اتفاقی از نمونه‌های داده انتخاب کرده، گرادیان تابع هزینه را حساب می‌کنیم و کمی در جهت خلاف گرادیان پارامتر را حرکت می‌دهیم تا به یک پارامتر جدید برسیم. گرادیان جهت موضعی بیشترین افزایش را در تابع به ما نشان می‌دهد، برای بیشترین کاهش موضعی در خلاف جهت گرادیان باید حرکت کرد. اینکار را آنقدر ادامه می‌دهیم که گرادیان به اندازه کافی به صفر نزدیک شود. بجای اینکه داده‌ها را بصورت تصادفی انتخاب کنیم می‌توانیم به ترتیب داده شماره تا داده شماره را انتخاب کنیم و بعد دوباره به داده اولی برگردیم و این کار را بصورت چندین انجام دهیم تا گرادیان تابع به اندازه کافی به صفر نزدیک شود. از لحاظ ریاضی این کار را می‌توان به شکل پایین انجام داد، پارامتر را در ابتدا بصورت تصادفی مقدار دهی می‌کنیم و بعد برای داده ام و تمامی ‌ها، یعنی از تا تغییر پایین را اعمال می‌کنیم، دراینجا همان مقداریست که در جهت گرادیان هربار حرکت می‌کنیم و مشتق جزئی داده ام در بُعد ام است:

تفسیر احتمالی از طریق درست نمایی بیشینه[ویرایش]

برای بدست آوردن پارامتر بهینه تابع هزینه یعنی را به حداقل می‌رسانیم. می‌توان به همین پارامتر بهینه از روش درست نمایی بیشینه هم رسید. فرض می‌کنیم که متغیر وابسته یعنی یک متغیر تصادفی است که مقدارش از یک توزیع طبیعی (توزیع گاوسی) پیروی می‌کند. این توزیع احتمال، واریانس ثابتی به اسم دارد ولی میانگین آن ترکیبی خطی از متغیرهای مستقل یعنی است. به عبارت دیگر میانگین ما برابر است با . با احتساب میانگین و واریانس توزیع متغیر وابسته ما می‌شود . حال اگر فرض کنیم داده‌های ما نسبت به هم مستقل هستند تابع درست نمایی برای تمام داده‌ها می‌شود:

حال باید به دنبال پارامتری باشیم که این تابع بزرگنمایی را بیشینه کند. از آنجا که تابع لگاریتم مطلقاً صعودیست، بجای بیشینه کردن این تابع لگاریتمش را هم می‌شود بیشنه کرد و پارامتر بهینه را از آن طریق پیدا کرد:

پارامتر بهینه از این طریق برابر است با:

همان‌طور که دیدم پارامتری که را بیشینه می‌کند همان پارامتری است که را به حداقل می‌رساند. این به معنی معادل بودن روش کمترین مربعات با روش درست نمایی بیشنه در رگرسیون خطی است.

تنظیم مدل (Regularization)[ویرایش]

پیچیدگی مدلهای پارامتری با تعداد پارامترهای مدل و مقادیر آن‌ها سنجیده می‌شود. هرچه این پیچیدگی بیشتر باشد خطر بیش‌برازش (Overfitting) برای مدل بیشتر است.[۵] پدیده بیش‌برازش زمانی رخ می‌دهد که مدل بجای یادگیری الگوهای داده، داده را را حفظ می‌کند و در عمل یادگیری به خوبی انجام نمی‌شود. برای جلوگیری از بیش‌برازش در مدلهای خطی مانند رگرسیون خطی یا رگرسیون لجستیک جریمه‌ای به تابع هزینه اضافه می‌شود تا از افزایش زیاد پارامترها جلوگیری شود. به این کار تنظیم مدل یا Regularization گفته می‌شود. دو راه متداول تنظیم مدلهای خطی روشهای و هستند.[۶] در روش ضریبی از نُرمِ به تابع هزینه اضافه می‌شود و در روش ضریبی از نُرمِ که همان نُرمِ اقلیدسی است به تابع هزینه اضافه می‌شود.

در تنظیم مدل به روش تابع هزینه را به این شکل تغییر می‌دهیم:[۶]

این روش تنظیم مدل که به روش لاسو (Lasso) نیز شهرت دارد باعث می‌شود که بسیاری از پارامترهای مدل نهائی صفر شوند و مدل به اصلاح خلوت (Sparse) شود.[۷]

در تنظیم مدل به روش تابع هزینه را به این شکل تغییر می‌دهیم:[۶]

در روش تنظیم از طریق سعی می‌شود طول اقلیدسی بردار کوتاه نگه داشته شود. در روش و یک عدد مثبت است که میزان تنظیم مدل را معین می‌کند. هرچقدر کوچکتر باشد جریمه کمتری برا بزرگی نرم بردار پارامترها یعنی پرداخت می‌کنیم. مقدار ایدئال از طریق آزمایش بر روی داده اعتبار (Validation Data) پیدا می‌شود.

تفسیر احتمالی تنظیم مدل[ویرایش]

اگر بجای روش درست نمایی بیشینه از روش بیشینه سازی احتمال پسین استفاده کنیم به ساختار «تنظیم مدل» یا همان regularization خواهیم رسید.[۸] اگر مجموعه داده را با نمایش بدهیم و پارامتری که به دنبال تخمین آن هستیم را با ، احتمال پسین ، طبق قانون بیز متناسب خواهد بود با حاصلضرب درست نمایی یعنی و احتمال پیشین یعنی [۹]:

ازین رو

معادله خط پیشین نشان‌ می‌دهد که برای یافتن پارامتر بهینه فقط کافیست که احتمال پیشین را نیز در معادله دخیل کنیم. اگر احتمال پیشین را یک توزیع احتمال با میانگین صفر و کوواریانس در نظر بگیریم به معادله پایین می رسیم [۹]:‌

با ساده کردن این معادله به این جواب میرسیم، در اینجا برابر است با :‌

همانطور که دیدیم جواب همان تنظیم مدل با نرم است.

حال اگر احتمال پیشین را از نوع توزیع لاپلاس با میانگین صفر درنظر بگیریم به تنظیم مدل با نرم خواهیم رسید. [۹]

جستارهای وابسته[ویرایش]

منابع[ویرایش]

  1. SEAL, HILARY L. (1967). "Studies in the History of Probability and Statistics. XV The historical development of the Gauss linear model". Biometrika (in انگلیسی). 54 (1-2): 1–24. doi:10.1093/biomet/54.1-2.1. ISSN 0006-3444. 
  2. Rencher, Alvin C. و William F. Christensen. Methods of Multivariate Analysis. John Wiley & Sons, 2012-08-15. 19. ISBN ‎9781118391679. 
  3. Yan, Xin. Linear Regression Analysis: Theory and Computing. World Scientific, 2009. ISBN ‎9789812834119. 
  4. Rencher, Alvin C. و William F. Christensen. Methods of Multivariate Analysis. John Wiley & Sons, 2012-08-15. 155. ISBN ‎9781118391679. 
  5. Bühlmann, Peter; van de Geer, Sara (2011). "Statistics for High-Dimensional Data". Springer Series in Statistics (in انگلیسی). doi:10.1007/978-3-642-20192-9. ISSN 0172-7397. 
  6. ۶٫۰ ۶٫۱ ۶٫۲ Bühlmann, Peter and Sara van de Geer. Theory for ℓ1/ℓ2-penalty procedures. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011. 249–291. doi:10.1007/978-3-642-20192-9_8. ISBN ‎9783642201912. 
  7. Natarajan, B. K. (1995). "Sparse Approximate Solutions to Linear Systems". SIAM Journal on Computing (in انگلیسی). 24 (2): 227–234. doi:10.1137/s0097539792240406. ISSN 0097-5397. 
  8. Bishop, Christopher M. Pattern Recognition and Machine Learning. New York: Springer New York, 2016-08-23. 30. ISBN ‎9781493938438. 
  9. ۹٫۰ ۹٫۱ ۹٫۲ Robert, Christian (2014-04-03). "Machine Learning, a Probabilistic Perspective". CHANCE (in انگلیسی). 27 (2): 62–63. doi:10.1080/09332480.2014.914768. ISSN 0933-2480.