تحلیل رگرسیون
واحد 6·45 دقیقه

رگرسیون لجستیک

مدل‌سازی یک نتیجهٔ دودویی. بیشینه‌سازی احتمال به جای کمترین مربعات، انحراف به جای مجموع مربعات باقیمانده، آزمون‌های نسبت احتمال به جای آزمون‌های جزئی F، و AIC و BIC برای مقایسهٔ مدل‌هایی که تو در تو نیستند.

پس از این درس شما قادر خواهید بود

  • توضیح دهید چرا رگرسیون خطی برای یک خروجی دودویی شکست می‌خورد و چگونه لینک لاجیت آن را حل می‌کند.
  • تخمین بیشینه احتمالیت و تابع احتمالیت را توضیح دهید.
  • انحراف را تعریف کنید و نقش آن را به‌عنوان معادل جمع مربعات باقیمانده توضیح دهید.
  • انجام و تفسیر آزمون نسبت احتمال برای مقایسه مدل‌های تو در تو.
  • آزمون والد و آزمون نسبت احتمال را مقایسه کنید و بگویید چه زمانی با هم اختلاف دارند.
  • AIC و BIC را تفسیر کنید و بدانید هر یک چه زمانی مناسب است.
  • یک تعامل را در یک مدل لجستیک آزمون و تفسیر کنید.

رگرسیون لجستیک

خلاصه: چرا رگرسیون خطی نه؟

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

  • مقدار مورد انتظار یک احتمال است که بین 0 و 1 محدود است، و یک خط مستقیم نامحدود است.
  • خطاها دودویی هستند و در هر احتمال برازش‌شده تنها دو مقدار می‌گیرند، بنابراین نمی‌توانند نرمال باشند.
  • The variance depends on the mean, p^(1p^)\hat{p}(1-\hat{p}), so it cannot be constant.

ما باید تابعی از pp، یعنی احتمال وقوع رویداد، را مدل کنیم که بدون محدودیت باشد. لوگیت:

logit(p)=ln(p1p)=β0+β1X1++βkXk\text{logit}(p) = \ln\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 X_1 + \cdots + \beta_k X_k

و معکوس کردن:

p=exp(β0+β1X1+)1+exp(β0+β1X1+)p = \frac{\exp(\beta_0 + \beta_1 X_1 + \cdots)}{1 + \exp(\beta_0 + \beta_1 X_1 + \cdots)}

تفسیر، استخراج‌شده از دورهٔ زیست‌آمار:

  • exp(β0)\exp(\beta_0) احتمال زمانی است که همه پیش‌بین‌ها برابر صفر باشند.
  • exp(βj)\exp(\beta_j) is the odds ratio for a one-unit increase in XjX_j, holding the others constant
m <- glm(outcome ~ x1 + x2, family = binomial, data = d)
summary(m)
exp(cbind(OR = coef(m), confint(m)))

توجه کنید که confint() بر روی یک شیء glm، بازه‌های احتمال پروفایل را ارائه می‌دهد که در نمونه‌های کوچک دقیق‌تر از بازه‌های وال هستند. این موضوع مستقیماً به مقایسهٔ آزمون‌های زیر مرتبط می‌شود.

برآورد بیشین احتمالیت

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

ابتدا دو واقعیت

دو خاصیت توقعات که در ادامه به‌طور مداوم استفاده می‌شوند:

  • اگر X و Y متغیرهای تصادفی باشند، امید ریاضی مجموع آن‌ها برابر با مجموع امیدهای ریاضی آن‌هاست.
  • اگر cc یک ثابت باشد، E(cX)=cE(X)E(cX) = cE(X).

ایده

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

L(β)=i=1npiyi(1pi)1yiL(\beta) = \prod_{i=1}^{n} p_i^{y_i}(1 - p_i)^{1 - y_i}

جایی که pip_i از طریق تابع لوگستیک به β\beta وابسته است. هر جمله در صورت وقوع رویداد برابر pip_i و در غیر این صورت برابر 1pi1 - p_i است، بنابراین حاصل‌ضرب احتمال وقوع دقیق الگوی نتایج مشاهده‌شده است.

پارامترهای بهترین برازش با بیشینه‌سازی این تابع تعیین می‌شوند: انتخاب مقادیر β\beta که داده‌های مشاهده‌شده را بیشینه احتمال می‌سازند.

در عمل، لگاریتم احتمال حداکثرسازی می‌شود، زیرا لگاریتم یک حاصل‌ضرب جمعی از لگاریتم‌هاست که مشتق‌گیری از آن ساده‌تر و از نظر عددی رفتار بهتری دارد:

lnL(β)=i=1n[yilnpi+(1yi)ln(1pi)]\ln L(\beta) = \sum_{i=1}^{n}\left[y_i \ln p_i + (1 - y_i)\ln(1 - p_i)\right]

هیچ راه‌حل بسته‌ای وجود ندارد، بنابراین نرم‌افزار به‌صورت بازگشتی (معمولاً با روش کمترین مربعات وزنی بازگشتی) جستجو می‌کند. معمولاً در چند تکرار همگرا می‌شود.

وقتی شکست می‌خورد

جداسازی کامل: یک پیش‌بین، یا ترکیبی از پیش‌بین‌ها، نتایج را به‌طور کامل از هم جدا می‌کند. هر بیمار دارای آن ویژگی دچار رویداد شد و هیچ بیمار بدون آن ویژگی دچار رویداد نشد.

در این صورت هیچ حد بالایی وجود ندارد: احتمال‌پذیری با رشد بی‌حد ضریب، مدام افزایش می‌یابد، بنابراین برآورد به بی‌نهایت گرایش می‌کند. R مدل را برازش می‌کند، ضرایب عظیمی با خطاهای استاندارد عظیم گزارش می‌دهد و معمولاً هشداری درباره احتمال‌های برازش‌شدهٔ 0 یا 1 صادر می‌کند. این ترکیب، نشان‌گر است.

راه‌حل‌ها: ترکیب دسته‌بندی‌ها، حذف متغیر پیش‌بین، استفاده از رگرسیون لجستیک دقیق برای مجموعه داده‌ی کوچک، یا استفاده از احتمال مجازات‌شده (روش فیرث)، که راه‌حل کلی است و در بسته logistf موجود است.

انحراف

معادل جمع مربعات باقیمانده

D=2ln(likelihood)D = -2\ln(\text{likelihood})

سه ملک:

  • کاهش D با برازش بهتر همراه است. مدلی که احتمال بالایی را به آنچه واقعاً رخ داده اختصاص می‌دهد، احتمال زیادی دارد و در نتیجه انحراف کمی دارد.
  • D از نظر مفهومی معادل SSESS_E در رگرسیون خطی است. این مقدار آنچه را مدل قادر به توضیح آن نیست، اندازه‌گیری می‌کند.
  • عامل 2-2 وجود دارد تا تفاوت‌ها در انحراف از توزیع خی-دو پیروی کنند، که این امر امکان آزمون را فراهم می‌کند.

دو انحراف توسط اکثر نرم‌افزارها گزارش می‌شود:

  • انحراف صفر: انحرافی که تنها شامل یک ضریب برش است. معادل SStotSS_{tot}.
  • انحراف باقیمانده: انحرافی که در مدل برازش‌شده مشاهده می‌شود. معادل SSerrSS_{err}.

تفاوت بین آن‌ها معادل SSregSS_{reg} است و این همان چیزی است که در آزمون کلی مدل استفاده می‌شود.

مقایسه مدل‌های تو در تو: آزمون نسبت درست‌نمایی

معادل آزمون F جزئی در رگرسیون خطی.

با در نظر گرفتن دو مدل مبتنی بر همان داده‌ها، که یکی در دیگری تعبیه شده است:

G=DreducedDfull=2[lnLreducedlnLfull]G = D_{\text{reduced}} - D_{\text{full}} = -2\left[\ln L_{\text{reduced}} - \ln L_{\text{full}}\right]

تحت فرضیهٔ صفر که ضرایح اضافی همگی برابر با صفر هستند، GG پیروی از توزیع خی-مربع با درجات آزادی برابر با تعداد پارامترهای اضافی می‌کند.

دو الزام که رعایت آن‌ها آسان است:

  1. مدل‌ها باید در هم نهفته باشند: مدل کوچکتر از مدل بزرگتر با صفر کردن پارامترها به‌دست می‌آید.
  2. مدل‌ها باید بر اساس همان داده‌ها باشند. اگر مدل بزرگ‌تر شامل متغیری با مقادیر گمشده باشد، نرم‌افزار به‌طور بی‌صدا آن را بر روی مشاهدات کمتری برازش می‌کند و در این صورت مقایسه نامعتبر خواهد بود. قبل از مقایسه، اندازه‌ی نمونه‌ها را بررسی کنید و از موارد کامل بر روی مجموع متغیرها یا برآورد چندگانه استفاده کنید.
m_reduced <- glm(y ~ age + sex, family = binomial, data = d)
m_full    <- glm(y ~ age + sex + biomarker, family = binomial, data = d)
anova(m_reduced, m_full, test = "LRT")

آزمون نسبت احتمال همان چیزی است که برای آزمون یک پیش‌بین دسته‌ای با چندین سطح استفاده می‌کنید، دقیقاً همان‌طور که آزمون F جزئی در رگرسیون خطی بود: متغیرهای مجازی باید به‌طور مشترک و بر اساس درجات آزادی مشترکشان آزمون شوند.

آزمون والد

جایگزین برای یک ضریب واحد:

z=β^jSE(β^j)orχ2=(β^jSE(β^j))2z = \frac{\hat{\beta}_j}{SE(\hat{\beta}_j)} \qquad \text{or} \qquad \chi^2 = \left(\frac{\hat{\beta}_j}{SE(\hat{\beta}_j)}\right)^2

این چیزی است که در جدول ضریب استاندارد ظاهر می‌شود.

مقایسهٔ این دو

هر دو تقریبی هستند و بر اساس نظریهٔ نمونه‌های بزرگ استوارند. وقتی حجم نمونه بزرگ باشد، با هم هم‌خوانی دارند و وقتی بزرگ نباشد، اختلاف نظر دارند.

آزمون والد آسان‌تر است زیرا تنها نیاز به برازش یک مدل دارد: خطای استاندارد از همان برازش ضریب به‌دست می‌آید.

آزمون‌های نسبت احتمال معمولاً قابل‌اعتمادتر هستند، به‌ویژه در نمونه‌های کوچک‌تر. دانستن دلیل آن ارزش دارد: آزمون والد لگاریتم احتمال را با یک تابع دوم‌درجه که در برآورد متمرکز است، تقریب می‌زند؛ این تقریب در نزدیکی بیشینه دقیق است اما هرچه از آن دورتر شویم، ضعیف‌تر می‌شود. وقتی ضریب بزرگ باشد یا حجم نمونه کوچک باشد، آن تقریب افت می‌کند.

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

توصیه: برای مقایسه مدل‌ها و برای هر ضریب مهم از آزمون نسبت احتمال استفاده کنید و هنگامی که حجم نمونه کوچک است، به جای فواصل اطمینان والْد، از فواصل اطمینان احتمال پروفایل استفاده کنید.

آزمون یک تعامل

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

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

m_main <- glm(y ~ x + age, family = binomial, data = d)
m_int  <- glm(y ~ x * age, family = binomial, data = d)
anova(m_main, m_int, test = "LRT")

در مقیاس لگیت، ضریب تعامل برابر با اختلاف لگاریتم نسبت‌های شانس است: میزان تغییر لگاریتم نسبت شانس برای xx در هر واحد سن. پس از توان‌دهی به پایهٔ e، این ضریب نسبت نسبت‌های شانس است.

دو نکتهٔ خاص در مورد رگرسیون لجستیک:

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

تعاملات به داده‌های زیادی نیاز دارند. همانند رگرسیون خطی، تشخیص یک تعامل تقریباً به چهار برابر نمونه‌ای نیاز دارد که برای یک اثر اصلی با اندازه مشابه لازم است، و برای یک خروجی دودویی مقدار مرتبط، تعداد رویدادها است نه تعداد شرکت‌کنندگان. بیشتر تعاملات گزارش‌شده در مدل‌های لجستیک از نظر قدرت آماری ناکافی هستند.

AIC و BIC

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

AIC=D+2k\text{AIC} = D + 2k

BIC=D+kln(n)\text{BIC} = D + k\ln(n)

که در آن kk تعداد پارامترها و nn اندازه نمونه است.

خواص:

  • مقادیر پایین‌تر بهتر هستند. هیچ مقدار p وجود ندارد؛ این‌ها برای مقایسه هستند، نه آزمون.
  • هر دو برای پیچیدگی جریمه می‌گذارند، یعنی برای تعداد پارامترها. همین است که نمی‌گذارد آنها صرفاً بزرگ‌ترین مدل را ترجیح دهند، آن‌گونه که انحراف به تنهایی می‌کرد.
  • ترتیب برای هر مدلی که بیش از یک نقطه‌قطع داشته باشد D<AIC<BICD < \text{AIC} < \text{BIC} است و برای مدل‌هایی که یک نقطه‌قطع دارند n>7n > 7 است، زیرا جریمه ln(n)\ln(n) در BIC از 2 واحد AIC یک بار n>7n > 7 فراتر می‌رود.
  • BIC پیچیدگی را شدیدتر جریمه می‌کند و در نتیجه مدل‌های کوچک‌تری را انتخاب می‌کند، که با افزایش nn این امر بیش از پیش مشهود می‌شود.

کدام را و چه زمانی استفاده کنیم:

  • AIC هدف دارد مدلی را انتخاب کند که بهترین پیش‌بینی را ارائه دهد. این روش زمانی مناسب است که هدف پیش‌بینی باشد و فرض نشود هیچ مدل کاندیدایی دقیقاً درست است.
  • BIC هدف دارد مدل واقعی را انتخاب کند، با فرض اینکه یکی از نامزدها واقعی باشد. این روش زمانی مناسب است که هدف شناسایی متغیرهایی باشد که واقعاً اهمیت دارند.

آنها اغلب با هم اختلاف نظر دارند و این اختلاف نظر به‌جای آنکه مشکل باشد، آموزنده است: این بدان معناست که پارامترهای اضافی تناسب را به میزانی بهبود می‌بخشند که از نظر یک معیار ارزشمند است اما از نظر معیار دیگر نیست.

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

رویکرد محتاطانه‌تر، به‌ویژه برای یک مدل تبیینی، این است که مدل را بر اساس دانش موضوعی مشخص کنید، پیش‌بین‌هایی را که انتخاب کرده‌اید حفظ کنید و مدلی را که برنامه‌ریزی کرده بودید گزارش دهید.

AIC(m1, m2, m3)
BIC(m1, m2, m3)

مجموعه‌بندی

مطابقت با رگرسیون خطی، که درک مطلب را آسان‌تر می‌کند:

رگرسیون خطی رگرسیون لجستیک
کمترین مربعات حداکثر احتمال
SSerrSS_{err} انحراف
SStotSS_{tot} انحراف صفر
آزمون F جزئی آزمون نسبت احتمال
آزمون t برای ضریب آزمون والد برای ضریب
R2R^2 Pseudo-R2R^2 (با احتیاط)
میانگین اختلاف نسبت شانس
R2R^2 تعدیل‌شده، یا آزمون F برای انتخاب مدل AIC, BIC

هر سطر همان ایده را بیان می‌کند که برای توزیع نتیجه‌ای متفاوت ارائه شده است. این همان چیزی است که چارچوب مدل خطی تعمیم‌یافته را ارزش یادگیری به‌عنوان یک چارچوب کلی دارد، نه صرفاً مجموعه‌ای از تکنیک‌های جداگانه.

درک خود را بررسی کنید

  1. به زبان خودتان توضیح دهید که احتمال چیست و چرا بیشینه‌سازی آن روشی معقول برای انتخاب پارامترها است.
  2. یک مدل لجستیک ضریب 18.4 را با خطای استاندارد 4,102 گزارش می‌کند. توضیح دهید چه اتفاقی افتاده است، احتمال‌های برازش‌شده چگونه خواهند بود و دو روش برای ادامه کار ارائه دهید.
  3. یک مدل با پیش‌بین چهار‌دسته‌ای سه ضریب ارائه می‌دهد، یکی معنادار و دو ضریب دیگر معنادار نیستند. توضیح دهید چرا نمی‌توانید از این نتیجه بگیرید که پیش‌بین اهمیت دارد و آزمون صحیح را بیان کنید.
  4. شما دو مدل تو در تو را با anova(..., test = "LRT") مقایسه می‌کنید و مدل کاهش‌یافته دارای 940 مشاهده است در حالی که مدل کامل دارای 902 مشاهده است. توضیح دهید چه اشتباهی رخ داده و چگونه آن را اصلاح کنید.
  5. اثر هاوک-دونر را توضیح دهید و شرایطی را که در آن به آن مشکوک می‌شوید، توصیف کنید.
  6. دو مدل مقادیر AIC را 402.1 و 399.8 و مقادیر BIC را 418.5 و 424.3 می‌دهند. این اختلاف را تفسیر کنید و بگویید برای (الف) یک ابزار پیش‌بینی و (ب) یک تحلیل تبیینی کدام مدل را گزارش خواهید کرد.
  7. توضیح دهید چرا تعاملی که در مقیاس نسبت شانس وجود ندارد ممکن است در مقیاس اختلاف خطر وجود داشته باشد و کدام یک برای تصمیم‌گیری در مورد درمان چه کسی مناسب‌تر است.
  8. توضیح دهید چرا گزارش مقادیر p از مدلی که به‌صورت مرحله‌ای انتخاب شده گمراه‌کننده است و جایگزین آن چیست.

مطالعه بیشتر

  • Hosmer DW, Lemeshow S, Sturdivant RX. Applied Logistic Regression. 3rd ed.
  • Hauck WW, Donner A. Wald's test as applied to hypotheses in logit analysis. J Am Stat Assoc. 1977;72:851-853.
  • Heinze G, Schemper M. A solution to the problem of separation in logistic regression. Stat Med. 2002;21(16):2409-2419.
  • Burnham KP, Anderson DR. Model Selection and Multimodel Inference. 2nd ed.
  • Harrell FE. Regression Modeling Strategies. 2nd ed. (On why stepwise selection should be avoided.)

اصطلاحات کلیدی

لاگیتنسبت شانسحداکثر احتمالتابع احتمالانحرافآزمون نسبت احتمالآزمون والدAICBICمدل‌های تو در توجداسازی کامل