رفتن به محتوای اصلی
Koohestun
توضیح کوهستانداده‌های نامتوازنتشریح معیارها· 8 دقیقه مطالعه· در تحلیل داده

چرا منحنی Precision-Recall خطاهای داده‌های نامتوازن را که ROC AUC پنهان می‌کند، آشکار می‌سازد

هنگام ارزیابی مدل‌های یادگیری ماشین روی رویدادهای نادر، منحنی‌های استاندارد ROC با پاداش دادن به منفی‌های واقعی (true negatives)، عملکرد را به‌طور کاذب بالا می‌برند. تغییر معیار به منحنی Precision-Recall، کلاس اکثریت را کنار می‌زند و نشان می‌دهد که یک مدل در واقعیت چند بار دچار خطا می‌شود.

به قلم الوین شادمهر

متخصصان داده‌های نامتوازن 50%آمارگران سنتی 30%ذی‌نفعان تجاری 20%
متخصصان داده‌های نامتوازن
از منحنی‌های Precision-Recall برای آشکار کردن هزینه واقعی هشدارهای کاذب حمایت می‌کنند.
آمارگران سنتی
از منحنی‌های ROC به دلیل پایداری ریاضیاتی آن‌ها مستقل از توزیع کلاس‌ها دفاع می‌کنند.
ذی‌نفعان تجاری
بر هزینه‌های ملموس مالی و عملیاتی مثبت‌های کاذب نسبت به معیارهای صرفاً مبتنی بر منحنی تمرکز دارند.

دیدگاه‌هایی که این گزارش پوشش نداده

  • کاربران نهایی که هشدارهای مثبت کاذب دریافت می‌کنند
  • نهادهای نظارتی که عملکرد مدل را حسابرسی می‌کنند

مهندسان یادگیری ماشین هنگام ارزیابی یک مدل طبقه‌بندی جدید، پیش از استقرار آن در محیط عملیاتی، باید یک لنز ریاضیاتی برای امتیازدهی به پیش‌بینی‌های آن انتخاب کنند. وقتی رویداد هدف نادر است — مانند یک تراکنش کارت اعتباری جعلی که در هر ۱۰,۰۰۰ تراکنش یک بار رخ می‌دهد یا یک بیماری نادر که در هر ۱,۰۰۰ غربالگری بیمار یک مورد دیده می‌شود — انتخاب پیش‌فرض منحنی مشخصه عملکرد سیستم (ROC) به مدل اجازه می‌دهد تا خطاهای بحرانی را پنهان کند. با تغییر معیار ارزیابی به منحنی Precision-Recall (PR)، مهندس کلاس منفی غالب را از مخرج کسر حذف می‌کند و مدل را وادار می‌سازد تا دقت خود را صرفاً روی رویدادهای نادری که ادعای شناسایی آن‌ها را دارد، ثابت کند. این تصمیم تعیین می‌کند که آیا الگوریتم مستقرشده واقعاً هدف را ایزوله می‌کند یا صرفاً اپراتورهای انسانی را با هشدارهای کاذب غرق می‌سازد.[6]

منحنی ROC، نرخ مثبت واقعی (True Positive Rate) یک مدل را در برابر نرخ مثبت کاذب (False Positive Rate) آن در تمام آستانه‌های احتمالی ممکن رسم می‌کند. در سال ۲۰۱۸، جیسون براونلی (Jason Brownlee)، پژوهشگر یادگیری ماشین، اشاره کرد که منحنی‌های ROC به‌طور گسترده‌ای پذیرفته شده‌اند زیرا یک خلاصه بصری استاندارد از توانایی تشخیصی مدل ارائه می‌دهند. با این حال، مکانیسم ریاضیاتی نرخ مثبت کاذب، زمانی که مجموعه داده به‌شدت نامتوازن باشد، یک نقطه کور خطرناک ایجاد می‌کند. از آنجا که نرخ مثبت کاذب، تعداد مثبت‌های کاذب را بر کل تعداد منفی‌های واقعی تقسیم می‌کند، یک کلاس منفی عظیم، جریمه هشدارهای کاذب را رقیق و کم‌اثر می‌کند.[2]

این اعوجاج زمانی آشکار می‌شود که اعداد ملموسی را در یک سناریوی به‌شدت نامتوازن اعمال کنیم. مجموعه داده‌ای شامل ۱۰۰,۰۰۰ نمونه را در نظر بگیرید که در آن تنها ۱۰۰ مورد نشان‌دهنده کلاس مثبت و ۹۹,۹۰۰ مورد نشان‌دهنده کلاس منفی هستند. اگر یک مدل طبقه‌بندی ۹۰ مورد از موارد مثبت را به‌درستی شناسایی کند اما همزمان ۱,۰۰۰ هشدار کاذب نیز صادر کند، نرخ مثبت کاذب با تقسیم آن ۱,۰۰۰ مثبت کاذب بر ۹۹,۹۰۰ منفی واقعی محاسبه می‌شود. نرخ مثبت کاذب به‌دست‌آمده ۰.۰۱ یا ۱ درصد است. روی یک منحنی ROC، نرخ خطای ۱ درصدی فوق‌العاده قوی به نظر می‌رسد و منحنی را به‌شدت به سمت گوشه بالا و سمت چپ نمودار سوق می‌دهد.[4]

نرخ مثبت کاذب توسط منفی‌های واقعی رقیق می‌شود، در حالی که Precision صرفاً روی دقت پیش‌بینی‌های مثبت تمرکز دارد.

این خوش‌بینی بصری، واقعیت عملیاتی عملکرد مدل را پنهان می‌کند. همان‌طور که تحلیل شبیه‌سازی ارزیابی طبقه‌بند (Classifier Evaluation) در سال ۲۰۱۵ نشان داد، «منحنی‌های ROC می‌توانند دیدگاهی بیش‌ازحد خوش‌بینانه از عملکرد یک الگوریتم ارائه دهند» وقتی روی داده‌های نامتوازن اعمال شوند. این مدل برای گرفتن تنها ۹۰ رویداد واقعی، ۱,۰۰۰ هشدار کاذب تولید کرده است، به این معنی که بیش از ۹۱ درصد از پیش‌بینی‌های مثبت آن اشتباه بوده است. با این حال، منحنی ROC به مدل برای نادیده گرفتن درست ۹۸,۹۰۰ نمونه منفی دیگر پاداش می‌دهد. منفی‌های واقعی بر مخرج کسر غلبه می‌کنند و عملاً هزینه عملیاتی مثبت‌های کاذب را از معیار ارزیابی پاک می‌کنند.[4]

برای آشکار کردن این نرخ خطا، مهندسان باید شمارش منفی‌های واقعی را کاملاً کنار بگذارند و مدل را با استفاده از منحنی Precision-Recall ارزیابی کنند. مستندات کتابخانه scikit-learn، معیار Precision (دقت) را این‌گونه تعریف می‌کند: «به‌طور شهودی، توانایی طبقه‌بند در برچسب نزدن یک نمونه منفی به‌عنوان مثبت.» از نظر ریاضی، Precision مثبت‌های واقعی را بر کل تعداد پیش‌بینی‌های مثبت انجام‌شده توسط مدل — اعم از درست و غلط — تقسیم می‌کند. با حذف منفی‌های واقعی از معادله، Precision قابلیت اطمینان دقیق هشدارهای مدل را اندازه‌گیری می‌کند.[1]

اعمال فرمول Precision روی سناریوی ۱۰۰,۰۰۰ نمونه‌ای قبلی، امتیاز عملکرد مدل را کاملاً معکوس می‌کند. مدل ۹۰ مثبت واقعی پیدا کرد اما ۱,۰۰۰ مثبت کاذب تولید کرد که در مجموع به ۱,۰۹۰ پیش‌بینی مثبت منجر شد. تقسیم ۹۰ بر ۱,۰۹۰، امتیاز Precision برابر با ۰.۰۸۲ را به دست می‌دهد. به‌جای دقت ۹۹ درصدی که توسط نرخ مثبت کاذب منحنی ROC القا می‌شد، معیار Precision نشان می‌دهد که مدل تنها در ۸.۲ درصد از مواقعی که هشدار می‌دهد، درست عمل می‌کند. توهم عملکرد بالا به محض حذف منفی‌های واقعی فرو می‌ریزد.[1]

اعمال فرمول Precision روی سناریوی ۱۰۰,۰۰۰ نمونه‌ای قبلی، امتیاز عملکرد مدل را کاملاً معکوس می‌کند.

معیار Recall (فراخوانی)، محور دوم منحنی PR، توانایی مدل را در یافتن تمام موارد مثبت واقعی در مجموعه داده اندازه‌گیری می‌کند. این معیار از نظر ریاضی با نرخ مثبت واقعی مورد استفاده در منحنی ROC یکسان است و مثبت‌های واقعی را بر مجموع مثبت‌های واقعی و منفی‌های کاذب تقسیم می‌کند. در سناریوی ۱۰۰,۰۰۰ نمونه‌ای، مدل ۹۰ مورد از ۱۰۰ مورد مثبت واقعی را گرفت که Recall برابر با ۰.۹۰ را به دست می‌دهد. منحنی PR این Recall ۰.۹۰ را در برابر Precision ۰.۰۸۲ در آستانه‌های مختلف رسم می‌کند و بلافاصله مبادله (trade-off) شدیدی را که برای گرفتن آن ۹۰ مورد لازم است، آشکار می‌سازد.[1]

مقایسه ریاضیاتی حساسیت معیارها در عدم توازن‌های شبیه‌سازی‌شده کلاس‌ها، تأیید می‌کند که این دو منحنی با چه سرعتی از هم فاصله می‌گیرند. تحلیل تحریریه Factlen فرمول‌های نرخ مثبت کاذب و Precision را ایزوله کرد و آن‌ها را روی یک نرخ خطای ثابت شامل ۱۰۰ مثبت کاذب به ازای هر ۱۰ مثبت واقعی اعمال نمود. در نسبت کلاس ۱:۱، هر دو معیار به‌درستی عملکرد ضعیف را منعکس می‌کنند. اما در عدم توازن اقلیت به اکثریت ۱:۱۰۰، نرخ مثبت کاذب به زیر ۰.۰۱ سقوط می‌کند و به‌طور کاذب سیگنال دقت بالایی روی منحنی ROC می‌دهد. در همین حال، امتیاز Precision روی ۰.۰۹ ثابت می‌ماند و بدون توجه به اینکه چه تعداد منفی واقعی به مجموعه داده اضافه شده است، نرخ خطای ۹۱ درصدی را به‌درستی نشان می‌دهد.[1][2][7]

در داده‌های به‌شدت نامتوازن، پیش‌بینی‌های یکسان یک مدل می‌تواند یک منحنی ROC تقریباً بی‌نقص و یک منحنی PR کاملاً شکست‌خورده تولید کند.

تفاوت بصری بین این دو نمودار بسیار چشمگیر است. تحلیلی در سال ۲۰۲۲ در Towards Data Science برجسته کرد که مدلی که با داده‌های نامتوازن دست‌وپنجه نرم می‌کند، ممکن است منحنی ROC تولید کند که به‌نرمی به سمت گوشه ایده‌آل بالا و چپ خم می‌شود و قدرت پیش‌بینی بالایی را القا می‌کند. وقتی پیش‌بینی‌های دقیقاً یکسان همان مدل روی یک منحنی PR رسم می‌شوند، خط اغلب به سمت پایین نمودار سقوط می‌کند و برای بالا رفتن از خط پایه تقلا می‌کند. برای یک منحنی PR، خط پایه مانند ROC روی ۰.۵ نیست، بلکه نسبت نمونه‌های مثبت در مجموعه داده است — که در یک عدم توازن ۱:۱۰۰ تنها روی ۰.۰۱ قرار دارد.[3]

این واگرایی به‌شدت بر سطح زیر منحنی (AUC) تأثیر می‌گذارد؛ یک خلاصه تک‌عددی که اغلب برای رتبه‌بندی مدل‌های رقیب استفاده می‌شود. تحلیلگران در MetricGate خاطرنشان می‌کنند که مقایسه مدل‌ها با استفاده از ROC AUC روی داده‌های نامتوازن، غالباً به انتخاب الگوریتم‌های غیربهینه منجر می‌شود. یک مدل ممکن است صرفاً با پیش‌بینی خوب کلاس اکثریت، به ROC AUC برابر با ۰.۹۵ دست یابد، در حالی که PR AUC آن روی ۰.۱۵ قرار دارد. تکیه بر ROC AUC به مهندسان اجازه می‌دهد تا ناآگاهانه مدل‌هایی را مستقر کنند که حجم غیرقابل‌مدیریتی از مثبت‌های کاذب را در محیط‌های عملیاتی تولید می‌کنند.[5]

محاسبه سطح زیر یک منحنی PR به دلیل چالش‌های درون‌یابی (interpolation) نیازمند دقت ریاضیاتی خاصی است. برخلاف منحنی‌های ROC که دارای درون‌یابی خطی بین نقاط هستند، منحنی‌های PR شامل درون‌یابی غیرخطی می‌شوند. با تغییر آستانه، مخرج Precision (کل پیش‌بینی‌های مثبت) به‌طور پویا تغییر می‌کند و باعث می‌شود مقدار Precision به‌جای حرکت در یک خط یکنواخت و هموار، به‌طور نامنظم جهش و افت کند. پژوهش ارزیابی طبقه‌بند در سال ۲۰۱۵ تأکید کرد که استفاده از انتگرال‌گیری خطی استاندارد روی یک منحنی PR، عملکرد واقعی مدل را به‌طور سیستماتیک بیش‌ازحد برآورد می‌کند و برای محاسبه مساحت دقیق به الگوریتم‌های تخصصی نیاز است.[4]

با وجود نقص‌هایش در مجموعه داده‌های نامتوازن، منحنی ROC زمانی که کلاس‌ها تقریباً برابر باشند یا زمانی که منفی‌های واقعی اهمیت عملیاتی یکسانی با مثبت‌های واقعی داشته باشند، همچنان ابزار ارزیابی درستی است. در یک به‌روزرسانی در سال ۲۰۲۵، Machine Learning Mastery روشن کرد که ROC AUC ارزیابی می‌کند که یک مدل چقدر خوب دو کلاس را به‌طور سراسری از هم جدا می‌کند. اگر یک دانشمند داده در حال ساخت مدلی برای پیش‌بینی پرتاب سکه یا یک مجموعه داده متوازن ۵۰/۵۰ از ریزش مشتریان باشد، منحنی ROC یک ارزیابی کاملاً معتبر و از نظر ریاضی پایدار از قدرت تفکیک الگوریتم ارائه می‌دهد.[6]

حجم عظیمی از منفی‌های واقعی می‌تواند بار عملیاتی ۱۰۰۰ هشدار کاذب را پنهان کند.

با این حال، در حوزه‌هایی مانند تشخیص‌های بالینی، امنیت سایبری و تقلب مالی، کلاس‌ها هرگز متوازن نیستند و هزینه یک مثبت کاذب بسیار ملموس است. یک ابزار غربالگری پزشکی که ۱,۰۰۰ بیمار سالم را برای بیوپسی‌های تهاجمی علامت‌گذاری می‌کند تا ۱۰ تومور واقعی را بگیرد، دارای نرخ Precision فاجعه‌باری است، حتی اگر ۱۰۰,۰۰۰ بیمار دیگر را به‌درستی ترخیص کند. اپراتورهای بالینی که برنامه بیوپسی را مدیریت می‌کنند به ۱۰۰,۰۰۰ منفی واقعی اهمیتی نمی‌دهند؛ آن‌ها تنها ۱,۰۰۰ هشدار کاذب را تجربه می‌کنند. منحنی PR ارزیابی ریاضیاتی مدل را با محدودیت‌های فیزیکی اپراتورهایی که از آن استفاده می‌کنند، همسو می‌سازد.[5]

فاز ارزیابی زمانی به پایان می‌رسد که تیم مهندسی آستانه عملیاتی نهایی را تعیین کند. اگر مجموعه داده دارای عدم توازن شدیدی باشد، آن آستانه نمی‌تواند به‌طور ایمن از یک منحنی ROC استخراج شود. این تصمیم نیازمند رسم مبادله دقیق بین گرفتن رویداد نادر و غرق کردن سیستم با هشدارهای کاذب است؛ محاسبه‌ای که تنها منحنی Precision-Recall آن را ارائه می‌دهد.[6]

نکات کلیدی

  • منحنی‌های ROC مدل‌ها را با استفاده از نرخ مثبت کاذب ارزیابی می‌کنند، که هشدارهای کاذب را بر کل تعداد منفی‌های واقعی تقسیم می‌کند.
  • در مجموعه داده‌های به‌شدت نامتوازن، تعداد عظیم منفی‌های واقعی جریمه ریاضیاتی مثبت‌های کاذب را رقیق می‌کند.
  • منحنی‌های Precision-Recall منفی‌های واقعی را از معادله حذف کرده و تنها دقت پیش‌بینی‌های مثبت را اندازه‌گیری می‌کنند.
  • مدلی با امتیاز دقت ۹۹ درصدی در ROC می‌تواند به‌طور همزمان در ۹۱ درصد مواقع روی منحنی Precision-Recall با شکست مواجه شود.

چرا مهم است

استقرار مدلی با ROC AUC بالا روی داده‌های نامتوازن می‌تواند به هزاران هشدار کاذب در غربالگری‌های پزشکی یا تشخیص تقلب منجر شود. استفاده از منحنی Precision-Recall به مهندسان اطمینان می‌دهد که پیش از عملیاتی شدن سیستم، هزینه واقعی و عملیاتی مثبت‌های کاذب را اندازه‌گیری کرده‌اند.

منابع

پوشش منابع

7 منبع

3 دیدگاه شناسایی‌شده

متخصصان داده‌های نامتوازن 50%آمارگران سنتی 30%ذی‌نفعان تجاری 20%
  1. [1]scikit-learnمتخصصان داده‌های نامتوازن

    sklearn.metrics.precision_recall_curve

    مطالعه در scikit-learn
  2. [2]MachineLearningMastery.comآمارگران سنتی

    How to Use ROC Curves and Precision-Recall Curves for Classification in Python

    مطالعه در MachineLearningMastery.com
  3. [3]Towards Data Scienceمتخصصان داده‌های نامتوازن

    Demystifying ROC and precision-recall curves

    مطالعه در Towards Data Science
  4. [4]Classifier evaluation with imbalanced datasetsمتخصصان داده‌های نامتوازن

    ROC and precision-recall with imbalanced datasets

    مطالعه در Classifier evaluation with imbalanced datasets
  5. [5]MetricGateذی‌نفعان تجاری

    ROC vs Precision-Recall Curve: Which to Use

    مطالعه در MetricGate
  6. [6]MachineLearningMastery.comآمارگران سنتی

    ROC AUC vs Precision-Recall for Imbalanced Data

    مطالعه در MachineLearningMastery.com
  7. [7]تیم سردبیری کوهستانمتخصصان داده‌های نامتوازن

    تحلیل تیم سردبیری کوهستان

    مطالعه در تیم سردبیری کوهستان

نظرات

همیشه در جریان باشید

هر زاویه. هر روز.

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