حمیدرضا مازندرانی
حمیدرضا مازندرانی
خواندن ۵ دقیقه·۳ سال پیش

نیم‌نگاهی به استنتاج علّی: آن‌گاه که نتایج آماری گمراه‌کننده است!

شروع ماجرا

شما کارشناس وزارت بهداشت هستید و این مسوولیت خطیر به شما سپرده شده که یک رویکرد درمانی جدید را بررسی نمایید تا در صورت تایید، به صورت گسترده برای درمان بیماران تجویز شود. اما نتایج آزمایش‌های محدود نشان می‌دهد بیمارانی که با این شیوه درمانی مداوا شده‌اند احتمال زنده ماندنشان کمتر است! چه باید کرد؟

نرخ زنده ماندن بیمارانی که با این شیوه درمان شده‌اند (ناحیه نارنجی) در برابر درمان‌نشده‌ها (ناحیه آبی)
نرخ زنده ماندن بیمارانی که با این شیوه درمان شده‌اند (ناحیه نارنجی) در برابر درمان‌نشده‌ها (ناحیه آبی)


شاید حدس زده باشید (حداقل از روی عنوان این نوشته!) که در این شرایط باید مفهوم علیّت را مورد توجه قرار دهیم.

حالا فرض کنید با مطالعات خود به این نتیجه رسیده باشید که عامل سیگاری بودن بیماران در نرخ مرگ و میر تاثیر دارد. خب این چه ربطی به مسئله ما دارد؟ امّا اگر به شما بگویند که بیماران سیگاری، که به طور طبیعی نرخ مرگ و میر آن‌ها بالاتر است، بنا به دلایلی گرایش بیش‌تری به این شیوه درمانی داشته‌اند چطور؟

به عنوان یک مثال اغراق‌شده، ممکن است این درمان عمدتاً بر روی بیمارانی که حالشان وخیم می‌شود اجرا شده باشد و سیگاری‌ها هم حالشان بیشتر وخیم می‌شود، پس این یک جور درمان ویژه سیگاری‌هاست!

با این تفاسیر، ما عامل سیگاری بودن را داریم که هم بر روی خروجی مسئله (نرخ مرگ و میر) و هم بر روی ورودی (درمان شدن یا نشدن) تاثیر دارد. این یک متغیر گمراه‌کننده است که نقطه شروع علمی تحت عنوان استنتاج علّی (Causal Inference) است.

سیگاری بودن هم بر روی انتخاب نوع درمان و هم بر روی احتمال زنده ماندن موثر است.
سیگاری بودن هم بر روی انتخاب نوع درمان و هم بر روی احتمال زنده ماندن موثر است.


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


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

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

دیتاست مورد مطالعه با بیش از 230 هزار رکورد اطلاعاتی
دیتاست مورد مطالعه با بیش از 230 هزار رکورد اطلاعاتی


در این دیتاست، سیگاری بودن متغیر گمراه‌کننده (Confounding) است چرا که بر ورودی و خروجی تاثیر می‌گذارد. ممکن است متغیرهای دیگری مثل سن، جنسیت و ... هم وجود داشته باشد که تاثیر مشابهی داشته باشند. در این شرایط بهترین راهکار برای خنثی‌سازی تاثیر سایر پدیده‌ها (یعنی هر چیزی غیر از روش درمانی مورد مطالعه)، این است که دیتاست خودمان را بسازیم! به این روش کارآزمایی تصادفی کنترل‌شده (RTC) گفته می‌شود.

در RTC هر فرد را به صورت تصادفی به یکی از دو گروه درمان‌شونده یا درمان‌نشونده می‌فرستیم! با این کار چون متغیرهای دیگر هیچ تاثیری بر انتخاب روش درمانی ندارند، مشکل حل می‌شود. برای مثال در هر دو گروه افراد سیگاری با احتمال یکسان حضور دارند.

اما اجرای RTC همیشه شدنی نیست: در همین مثال ممکن است ما روش درمانی دیگری نداشته باشیم و شاید اخلاقی نباشد همین روش تاییدنشده را هم از نصف جمعیت دریغ کنیم! یا این که ممکن است آزمایش قبلاً انجام شده باشد و فقط نتایج آن در دسترس ما باشد. پس سراغ راهکارهای جایگزین می‌رویم.


مفهوم تاثیر میانگین درمان

قبل از ادامه بحث، یک معیار را تحت عنوان تاثیر میانگین درمان (ATE) باید معرفی کنیم که بدین صورت محاسبه می‌شود:

احتمال زنده ماندن یک فرد تصادفی از جامعه اگر درمان بشود، منهای احتمال زنده ماندن همان فرد اگر درمان نشود.

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

احتمال زنده ماندن افرادی که درمان شده‌اند منهای احتمال زنده ماندن افرادی که درمان نشده‌اند.

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

در همین مثال مورد بحث، اگر ATE را به صورت تقریبی حساب کنیم، به عدد منفی 8 درصد می‌رسیم که نشان می‌دهد شیوه درمانی تاثیر منفی بر بیماران دارد.

محاسبات فوق در این صفحه برای علاقه‌مندان به کدنویسی آورده شده.


تاثیر به شرط سیگار

راهکار بدیهی دیگری که قابل انجام است گروه‌بندی دیتاست بر اساس متغیرهای گمراه‌کننده و بررسی نتایج هر گروه به صورت جداگانه است.

اگر ATE را به صورت تقریبی برای سیگاری‌ها حساب کنیم به عدد 30 درصد می‌رسیم. پس اگر یک فرد سیگاری این درمان را دریافت کند احتمال زنده ماندن او 30 درصد بیشتر خواهد شد. همین مقدار برای افراد غیرسیگاری حدود صفر است که نشان می‌دهد این درمان برای غیرسیگاری‌ها تاثیر چندانی نداشته است.

در نهایت اگر میانگین وزن‌دار ATE هر دو گروه را حساب کنیم به عدد مثبت 8 درصد می‌رسیم که در نتیجه اگر عامل سیگاری بودن را خنثی کنیم، این یک درمان موثر است!


نکته 1: یک روش دیگر برای محاسبه ATE بدین صورت است که تاثیر گروه‌هایی که تمایل بیش‌تری به درمان داشته‌اند را کاهش دهیم. برای این کار از مفهوم Propensity Score استفاده می‌شود که علاقه‌مندان می‌توانند در خصوص آن مطالعه نمایند.

نکته 2: با این روش‌ها تنها می‌توان تاثیر متغیرهای شناسایی‌شده را (آن هم تحت شرایطی) خنثی نمود و لذا ATE واقعی یا همان تاثیر واقعی درمان با RTC به دست می‌آید. امیدوارم به این زودی فراموش نکرده باشید RTC چیست!


همچنان شروع ماجرا!

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

شاید کتاب The book of Why که سال 2018 منتشر شده بهترین گزینه برای شروع باشد. اگر دوستانی آن را مطالعه کرده‌اند ممنون می‌شوم برداشت خود را در کامنت‌های این پست یا در صفحه لینکدین من در میان بگذارند.

کتاب
کتاب



علیتکازالیتیآماراستنتاج علیpropensity
خالق محتوا، کد و هوشمندی!
شاید از این پست‌ها خوشتان بیاید