فرمول رگرسیون لجستیک
رگرسیون لجستیک یکی از محبوبترین روشها در آمار و علوم داده برای مدلسازی رابطه بین تعدادی متغیر مستقل (پیشبینیکننده) و یک متغیر وابسته دستهبندیشده، به ویژه دودویی (مثلاً بله/خیر، موفقیت/شکست، بیمار/سالم) است. برخلاف رگرسیون خطی که مقادیر پیوسته تولید میکند، رگرسیون لجستیک برای تخمین احتمال یک رویداد طراحی شده است، بنابراین نتیجه نهایی در محدوده ۰ تا ۱ است. در این مقاله، فرمول رگرسیون لجستیک، معنای هر مؤلفه و نحوه تفسیر آن را مورد بحث قرار خواهیم داد.
چرا رگرسیون لجستیک مورد نیاز است؟
اگر از رگرسیون خطی برای پیشبینی احتمالات استفاده کنیم ، مدل میتواند مقادیری کمتر از ۰ یا بیشتر از ۱ تولید کند که برای احتمالات به وضوح غیرمنطقی است. رگرسیون لجستیک با استفاده از یک تابع غیرخطی که نتیجه محاسبه شده (که میتواند هر مقداری باشد) را به یک مقدار احتمال بین ۰ و ۱ نگاشت میکند، این مشکل را برطرف میکند. رایجترین تابع مورد استفاده، تابع لجستیک یا سیگموئید است.
برای مثال، فرض کنید میخواهیم پیشبینی کنیم که آیا یک مشتری بر اساس سن، مدت اشتراک و دفعات استفاده، از سیستم خارج میشود یا خیر. نتیجه پیشبینیشده فقط دو احتمال دارد: از سیستم خارج میشود (1) یا از سیستم خارج نمیشود (0). رگرسیون لجستیک برای این نوع موقعیتها بسیار مناسب است.
فرمول پایه برای رگرسیون لجستیک
اساس رگرسیون لجستیک، مدلسازی احتمال (p) وقوع رویداد (Y = 1) با توجه به مقدار متغیر پیشبینیکننده (X) است.
مدلهای رگرسیون لجستیک معمولاً به دو شکل مهم نوشته میشوند:
۱) فرم احتمال (سیگموئید)
\[
p = P(Y=1 \mid X) = \frac{1}{1 + e^{-z}}
\]
با
\[
z = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \cdots + \beta_k X_k
\]
شرح:
- \(p \) احتمال وقوع رویداد است (مثلاً: ریزش مشتری = ۱).
– \(e \) عدد اویلر است (حدود ۲.۷۱۸).
- \(z \) ترکیبی خطی از پیشبینیکنندهها است.
– \( \beta_0 \) نقطه تقاطع (ثابت) است.
- \( \beta_1، \beta_2، \ldots، \beta_k \) ضرایب رگرسیون هستند.
– \( X_1، X_2، \ldots، X_k \) متغیرهای مستقل هستند.
تابع سیگموئید تضمین میکند که مقدار \(z \) هر چه باشد، مقدار \(p \) بین ۰ و ۱ باقی میماند.
۲) فرم لوجیت (لگاریتم شانس)
یکی دیگر از فرمهای بسیار مهم، فرم لوجیت است که لگاریتم شانسها را نشان میدهد:
\[
\text{logit}(p) = \ln\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \cdots + \beta_k X_k
\]
شرح:
– \( \frac{p}{1-p} \) شانس (شانس نسبی) نامیده میشود.
- \( \ln \) لگاریتم طبیعی است.
فرم لوجیت توضیح میدهد که رگرسیون لجستیک در واقع لگاریتم شانسها را به عنوان تابعی خطی از پیشبینیکنندهها مدلسازی میکند. این امر تفسیر ضرایب را، به ویژه در زمینه نسبتهای شانس، واضحتر میکند.
درک شانس و نسبت شانس
برای درک واقعی فرمول رگرسیون لجستیک، باید بین احتمال و شانس تمایز قائل شویم.
احتمال (p): شانس وقوع یک رویداد (0 تا 1).
– شانس: مقایسه احتمال وقوع چیزی با عدم وقوع آن:
\[
\text{ضرایب} = \frac{p}{1-p}
\]
مثال: اگر \( p = 0{,}8 \)، آنگاه:
\[
\text{ضریب} = \frac{0{,}8}{0{,}2} = 4
\]
این یعنی احتمال وقوع آن رویداد ۴ برابر بیشتر از عدم وقوع آن است.
در رگرسیون لجستیک، ضریب \( \beta \) اغلب از طریق نسبت شانس تفسیر میشود:
\[
\text{OR} = e^{\beta}
\]
– اگر \( \beta > 0 \)، آنگاه \( e^{\beta} > 1 \): پیشبینیکننده شانس رویداد را افزایش میدهد.
– اگر \( \beta < 0 \)، آنگاه \( e^{\beta} < 1 \): پیشبینیکننده شانس رویداد را کاهش میدهد.
– اگر \(β = 0 \)، آنگاه \(e^{\beta} = 1 \): هیچ تاثیری بر شانس ندارد.
برای مثال، اگر \( \beta_1 = 0{,}7 \)، آنگاه:
\[
e^{0{,}7} \تقریباً 2{,}01
\]
این بدان معناست که هر ۱ واحد افزایش در \(X_1 \) شانس رویداد را تقریباً ۲.۰۱ برابر میکند (با فرض ثابت ماندن سایر متغیرها).
مثالی از یک مدل رگرسیون لجستیک ساده
فرض کنید فقط یک متغیر پیشبینیکننده \(X \)، مثلاً تعداد ساعات مطالعه در هفته، برای پیشبینی قبولی در امتحان (قبولی = ۱، مردودی = ۰) داریم. مدل به صورت زیر است:
\[
\text{logit}(p) = \beta_0 + \beta_1
\]
اگر نتیجه تخمین:
– \( \beta_0 = -4 \)
– \( \beta_1 = 0{,}8 \)
بنابراین:
\[
z = -4 + 0{,}8X
\]
\[
p = \frac{1}{1 + e^{-(-4 + 0{,}8X)}} = \frac{1}{1 + e^{4 – 0{,}8X}}
\]
اگر \( X = 6 \) ساعت مطالعه:
\[
z = -4 + 0{,}8(6) = 0{,}8
\]
\[
p = \frac{1}{1 + e^{-0{,}8}} \approx 0{,}69
\]
تفسیر: با ۶ ساعت مطالعه در هفته، احتمال قبولی حدود ۶۹٪ است.
تخمین ضرایب: چرا از روش کمترین مربعات استفاده نکنیم ؟
در رگرسیون خطی ، ضرایب اغلب با استفاده از روش حداقل مربعات محاسبه میشوند. با این حال، در رگرسیون لجستیک، رابطه بین پیشبینیکنندهها و احتمالات غیرخطی است، بنابراین رویکرد حداقل مربعات ایدهآل نیست. رگرسیون لجستیک عموماً از تخمین حداکثر درستنمایی (MLE) برای یافتن مقدار ضریب \( \beta \) که درستنمایی دادههای مشاهده شده را به حداکثر میرساند، استفاده میکند.
به طور خلاصه، درستنمایی برای مشاهدات دودویی \(y_i \in \{0,1\} \) و پیشبینیها \(p_i \) برابر است با:
\[
L(\beta) = \prod_{i=1}^{n} p_i^{y_i}(1-p_i)^{(1-y_i)}
\]
سپس اغلب برای آسانتر شدن محاسبه، به یک لگاریتم درستنمایی تبدیل میشود:
\[
\ell(\beta) = \sum_{i=1}^{n} \left[y_i \ln(p_i) + (1-y_i) \ln(1-p_i) \right]
\]
مقدار \( \beta \) به گونهای انتخاب میشود که \( \ell(\beta) \) را به حداکثر برساند. روشهای عددی مانند نیوتن-رافسون یا گرادیان نزولی اغلب توسط نرمافزارهای آماری استفاده میشوند.
مزایا و محدودیتهای رگرسیون لجستیک
کلیبیان
۱. نتایج به شکل احتمالات هستند، بنابراین به راحتی میتوان آنها را به تصمیمات تبدیل کرد.
۲. تفسیر ضریب از طریق نسبت شانس واضح است.
۳. مناسب برای مسائل طبقهبندی دودویی و قابل تعمیم به مسائل چندجملهای/ترتیبی.
محدودیتها
۱. به جای اینکه مستقیماً احتمال را در نظر بگیرد، یک رابطه خطی بین پیشبینیکنندهها و لگاریتم شانسها فرض میکند.
۲. اگر همخطی چندگانه وجود داشته باشد یا دادهها بسیار نامتوازن باشند، میتواند مشکلساز باشد.
۳. برای الگوهای روابط بسیار پیچیده، سایر روشهای غیرخطی (مثلاً جنگل تصادفی یا شبکه عصبی) ممکن است برتر باشند.
بستن
فرمول رگرسیون لجستیک اساساً ترکیبی خطی از متغیرهای پیشبینیکننده را با یک تابع سیگموئید ترکیب میکند تا احتمالات را تولید کند. رایجترین شکل آن به صورت زیر است:
\[
p = \frac{1}{1 + e^{-(\beta_0 + \beta_1 X_1 + \cdots + \beta_k X_k)}}
\]
یا به شکل لوجیت:
\[
\ln\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 X_1 + \cdots + \beta_k X_k
\]
با درک این دو شکل از فرمول، میتوانیم مدلهای پیشبینی برای مسائل طبقهبندی دودویی مختلف بسازیم و در عین حال تأثیر متغیرها را از طریق نسبت شانس (e^{\beta} \) تفسیر کنیم. رگرسیون لجستیک همچنان یک پایه مهم در تجزیه و تحلیل دادهها است زیرا ساده، قدرتمند و تفسیری است - و اغلب اولین قدم قبل از تلاش برای مدلهای پیچیدهتر است.
اگر بخواهید، میتوانم یک مثال محاسبه با دادههای کوچک (جدول) یا یک مثال پیادهسازی رگرسیون لجستیک در پایتون/R به همراه تفسیر خروجی اضافه کنم.