الگوریتم های رگرسیون برای پیش بینی مقدارهای پیوسته (Continuous) است و از دسته الگوریتم های با نظارت در یادگیری ماشین است. به طور کلی می توانیم دو انگیزه را برای الگوریتم های رگرسیون بدانیم. یکم اینکه می خواهیم رابطه میان یک متغیر وابسه (Dependent Variable) و یک یا چندین متغیر مستقل (Independent) را پیدا کنیم. دوم، اینکه می خواهیم دو پارامتر شیب خط و عرض از مبدا را برای معادله رگرسیون پیدا کنیم به گونه که اندازه میانگین مربعات خطاها کمینه باشد.

الگوریتم رگرسیون خطی

الگوریتم رگرسیون خطی ساده

الگوریتم رگرسیون خطی چند متغیره

ایجاد مدل رگرسیون ساده توسط Scikit-Learn

پیش بینی دیابت با رگرسیون خطی و Scikit-Learn

مدل رگرسیون لجستیک در یادگیری ماشین

در یک معادله رگرسیون خطی ساده تک متغیر مستقل x شیب a خط ضریب ثابتی است که در متغیر مستقل x ضرب می شود و برایند آن با شماره ثابت دیگر b به نام عرض از مبدا یا بایاس جمع شده و سپس ارزش متغیر وابسته y بدست می آید که این متغیر وابسته همان مقدار پیش بینی مدل رگرسیون خطی است.

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

شبکه عصبی چگونه کار می کند

تابع فعال سازی در شبکه های عصبی

نمایش ریاضی شبکه عصبی

رگرسیون Ridge

رگرسیون Ridge نیز یک الگوریتم رگرسیون خطی است که معادله رگرسیون خطی را دنبال می کند. دومین شکل زیر معادله تابع هزینه رگرسیون Ridge را نشان می دهد ولی پیش از آن بهتر است به کمک نخستین شکل زیر، معادله تابع هزینه رگسیون خطی ساده را نشان دهیم. در شکل با فرض اینکه مجموعه داده دارای M نمونه و p ویژگی (متغیر مستقل) باشد، به دنبال کاهش خطا هستیم که این اندازه این خطا برای هر پیش بینی با ورودی تازه، برابر با تفاضل میان y و ŷ است که در آن y اندازه متغیر وابسته در مجموعه داده است که انتظار داریم مدل پیش بینی کند و ŷ مقداری است که مدل پیش بینی کرده است. بنابراین به ازای هر نمونه i اختلاف y – ŷ برابر با اندازه خطای پیش بینی است.

زمانی که مدل دارای بسیاری از ویژگی ها می شود، این پیچیدگی را به همراه خواهد داشت و از این رو مشکل هایی مانند Overfitting و Underfitting رخ می دهند. رگرسیون Ridge شیوه یا تکنیکی برای کاهش پیچیدگی است به گونه ای که از بروز Overfitting پیشگیری شود. Overfitting بدین معنی است که مدل به درستی از روی مجموعه داده های آزمایشی ساخته شده باشد ولی انجام پیش بینی با داده های آزمایش پاسخ های فاصله داری را برگرداند.

شکل زیر معادله تابع هزینه برای رگرسیون Ridge را نشان می دهد که در آن به معادله RSS (یا همان معادله یکم همین نوشته) یک معادله تازه افزوده شده است. توجه کنید در هر دو معادله شکل های ۱ و ۲، w ها همان ضرایب متغیرهای مستقل هستند که مجموع حاصل ضرب آنها در متغیرهای مستقل، ارزش متغیر وابسته است.

  • واژگان متغیر مستقل، ویژگی، متغیرهای پیش بینی کننده، همگی یک مفهوم را می رسانند.
  • واژگان متغیر وابسته، کلاس، برچسب یا Target همگی یک مفهوم را می رسانند.
  • مقدار پیش بینی شده نیز برابر با ŷ است.
  • معادله شکل ۱، تابع هزینه RSS یا Residual Sum of Squares (مجموع مربع های خطا) را نشان می دهد.
  • معادله شکل ۲، تابع هزینه به کار رفته در رگرسیون Ridge را نشان می دهد.

رگرسیون Ridge و مدل های پارسیمیون

مدل های پارسیمیون (Parsimonious Model) مدل های ساده ایی با توانایی پیش بینی کننده بسیار خوب هستند. آنها داده ها را با کمترین شمار پارامترها یا متغیرهای پیش بینی کننده (متغیرهای مستقل) توضیح می دهند. Overfitting زمانی رخ می دهد که شمار ویژگی ها زیاد باشد و درستر این است که شمار ویژگی ها از شمار نمونه ها (مشاهدات) بیشتر باشد. بنابراین، رگرسیون Ridge یکی از مدل های پارسیمیون است که زمانی سودمند است که شمار ویژگی ها بیشتر از نمونه ها باشد.

شیوه رگرسیون کمترین مربع ها (Last Square Regression) برای زمانی که شمار ویژگی ها (متغیرهای مستقل) بیشتر از مشاهده ها باشد، به کار نمی رود زیرا آن میان پیش بینی کننده های با اهمیت بیشتر و پیش بینی کننده های با اهمیت کمتر، تفاوتی نمی گذارد و از این رو همه این ویژگی ها بسیار را برای ساخت مدل به کار می برد که بازهم تاکیید می کنم این پدیده Overfitting را پدید می آورد که پدیده Overfitting خود پیش بینی ها و پاسخ های نادرست را پدید می آورد.

تابع های هزینه در یادگیری ماشین

مفهوم هم خطی چندگانه

رگرسیون Ridge شیوه ای است که این ایرادها را پوشش می دهد، زیرا رگرسیون Ridge، محدودیتی بر روی ضریب ها می گذارد. بنابراین در یک چکیده می توانیم بگوییم رگرسیون Ridge به کمک محدود کردن ضریب ها به دنبال کاهش پیچیدگی و هم خطی چندگانه است. هم خطی چندگانه (Multicollinearity) یکی از مفاهیم آمار و اقتصاد است و زمانی رخ می دهد که در تحلیل رگرسیون چندین متغیر مستقل (یا همان ویژگی ها) به یکدیگر بسیار همبستگی (Correlation) داشته باشند. در اینجا منظور از هم بستگی یک ارتباط خطی میان دو متغیر مستقل است (ویکی پدیا فارسی).

در یادگیری ماشین، واژه Regularization به زبان ساده بدین مفهوم است که آشکارا برای پیش گیری از پدیده Overfitting، یک مدل را محدود کنیم. خود Regularization برای پیش گیری از Overfitting در برگیرنده دو دسته L1 Regularization و L2 Regularization است که رگرسیون Ridge شیوه L2 را به کار می برد. همچنین نیاز به یادآوری است که رگرسیون Ridge نیز از دسته رگرسیون های خطی است. امیتاز یادگیری (Training Score) رگرسیون Ridge از رگرسیون خطی (Linear Regression) کمتر خواهد بود ولی امتیاز آزمایش (Test Score) آن از رگرسیون خطی بیشتر است.

بنابراین هم سنجی که می توانیم میان رگرسیون خطی و Ridge بگوییم این است که رگرسیون Ridge با اینکه خطی است ولی بسیار محدود شده است و از این رو پدیده Overfitting را کاهش می دهد. یک مدل کمتر پیچیده به معنای کارایی بدتر (Worse Performance) در مجموعه آموزش است ولی تعمیم بهتری (Better Generalization) خواهیم داشت. بنابراین اگر ما دوستدار تعمیم بهتر هستیم، باید رگرسیون Ridge را به جای رگرسیون خطی برگزنیم.