رگرسیون چیست؟رگرسیون به زبان ساده

رگرسیون در یادگیری ماشین و استفاده های آن

در مقاله ی یادگیری ماشین به صورت جامع به شاخه های یادگیری نظارت شده پرداختیم و در مقاله ی دی بی اسکن به خوشه بندی و کاربرد های آن. در این مقاله میخواهیم به رگرسیون بیشتر بپردازیم و به صورت تخصصی به آن بپردازیم

رگرسیون

Regression

رگرسیون به مانند طبقه بندی برای پیدا کردن روابطی بین ورودی و برچسب های آن (لیبل ها) که خروجی تلقی میشوند استفاده میشود و شاخه های مختلفی دارد.

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

ریاضیات رگرسیون

برای یادگرفتن رگرسیون نیازمند به داشتن حداقل دانش در مبحث توابع در ریاضیات هستیم

توابع به صورت جامع به صورت f(x)=y شناخته میشود. در این توابع با پیشرفته تر شدن فاکتورهای بیشتری به معادله اضافه میشوند تصویر زیر مثال خوبی از این مفهوم است

انواع رگرسیون

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

الگوریتم های رگرسیون

الگوریتم های رگرسیون متعدد هستند و بسته به مسئله باید الگوریتم های متعددی در نظر بگیریم. ما در این مقاله 4 نوع الگوریتم را تحت بررسی قرار میدهیم

Simple Linear Regression

Multi linear Regression

Nonlinear regression

Support Vector Regression

Simple linear regression

رگرسیون ساده ی خطی به صورت جامع یک ورودی گرفته و یک خروجی میدهد و از قاعده ی زیر پیروی میکنید

Y = C0 + X1C1

که در آن Y خروجی ما هست. C1 به ضریب X که داده ی ورودی هست اشاره میکنه و C0 به مقدار ورودی زمانی که X صفر هست. در عکس بالا Price اشاره به Y و ستون های داده ای دیگر به C0+X1C1 اشاره میکند. تا وقتی که در هر بار نگاه کردن فقط یک ستون را در نظر بگیریم و جدا جدا نسبت ستون ها را با Y را حساب کنیم الگوریتم ما خطی ساده خواهد بود

Multi Linear Regression

رگرسیون خطی متعدد که به خطی غیر ساده نیز شناخته میشود. این الگوریتم زمانی انتخاب میشود که به جای داده ی ورودی داده های ورودی داشته باشیم و با بیشتر از یک متغییر رو به رو باشیم.

این افزایش متغییر ها به فرمول محاسبه ی خروجی نیز تغییراتی میدهد که به صورت زیر نوشته میشود.

Y = C0 + X1C1 + X2C2 + ….. + XnCn

که آن به تعداد متغییر های ورودی اشاره میکند. در عکس بالا اگر دست از تک ورودی بینی بکشیم و تمامی ورودی ها را مدنظر بگیریم و مجموع متغییر ها را مساوی X قرار بدهیم باید از الگوریتم های رگرسیون خطی متعدد برای محاسبه کردن خروجی استفاده بکنیم.

رگرسیون خطی متعدد

Nonlinear Regression

رگرسیون غیرخطی به شاخه ای که رابطه ی بین ورودی و خروجی به صورت غیرخطی هست میگویند و با یک خط صاف نمیتوان محاسباتی دقیق یا درست انجام داد. برخلاف رگرسیون خطی،رگرسیون غیر خطی فرمول یکسانی برای تمامی زیرشاخه هایش ندارد و وابسته به مسئله ی شما ممکن است فرمول محاسباتی شما نیز تغییر بکند.

Polynomial Regression

رگرسیون پولینومیال شاخه ای از رگرسیون غیرخطی هست که زمانی استفاده میشود که بین ورودی و خروجی رابطه ای توانی وجود داشته باشه و از فرمول زیر پیروی میکند:

X^n = Y

که در آن X به توان عددی میرسد و برابر با خروجی Y میشود.

در نظر داشته باشید که پولینومیال زیرشاخه ای از غیرخطی میباشد و هر رگرسیون غیر خطی پولینومیال نیست.

رگرسیون غیرخطی

Support Vector Regression

در مقاله ی یادگیری ماشین به ماشین های برداری قابل پشتیبانی اشاره کردیم و قواعد و الگوریتم جامع آن را توضیح دادیم.

در اس وی ام با سه مفهوم زیر آشنا شدید

Hyperplane

Margin

Support Vectors

در رگرسیون برداری قابل پشتیبانی یا به اختصار اس وی ار نحوه ی کار این سه مفهوم تا حدودی متفاوت است و از Epsilon Tube به جای مارجین استفاده میشود

رگرسیون برداری قابل پشتیبانی

کاربرد های رگرسیون در زندگی روزمره

رگرسیون جزو قدیمی ترین و مورد استفاده ترین الگوریتم های یادگیری ماشین هست و در زمینه های زیادی استفاده میشود

از معروف ترین استفاده های رگرسیون میتوان به گزینه های زیر اشاره کرد

1-مدل های پیش بینی:

مدل های پیش بینی آینده ی رگرسیون جزو استفاده های محبوب این الگوریتم در صنعت و فروش هست. به طوری که خیلی از شرکت ها برای محاسبه و پیش بینی فروش ها و تنظیم بودجه و مصارف دیگر مانند تبلیغات از این دسته الگوریتم ها استفاده میکنند.

2- مدیریت ریسک:

رگرسیون میتواند در زمینه ی مدیریت ریسک استفاده شود و از داده ی ورودی میتواند به میزان ریسکی و خطرناک بودن حرکتی دست بیابد. به طور مثال شرکت های بیمه میتوانند از رگرسیون برای دخیل کردن فاکتور های موجود احتمال و بیمه کردن یک مشتری را براساس خروجی استفاده بکنند

3-کنترل کیفیت: از کاربردهای خیلی معروف و مورد استفاده ی رگرسیون کنترل کیفیت هست که با دریافت ورودی های یک شی میتوانند کیفیت آن را با حالت بهینه یا شرایطی که میخواهیم باشد مقایسه کنیم

از مثال های این حیطه میتوان به کنترل کیفیت سوخت و تولید آلودگی خودروها با کمک فاکتورهایی نظیر نوع موتور ماشین،تعداد سیلندر،میزان مصرف بنزین و غیره اشاره کرد. شما میتوانید ویدئوی آموزشی و تعامل با رگرسوین در زبان پایتون را از آپارات ما مشاهده بکنید

پیمایش به بالا