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

در ابتدای پروژه، تحلیل اکتشافی داده‌ها (EDA) روی ۱۱۹۰ نمونه بالینی انجام شد. با بررسی توزیع ویژگی‌ها و ماتریس همبستگی، متغیرهای کلیدی مانند نرخ ضربان قلب، سطح کلسترول، فشار خون در حال استراحت و افت ST مورد ارزیابی قرار گرفتند.

پیش‌پردازش و پاک‌سازی

جهت ارتقای کیفیت داده‌ها، الگوریتم دامنه بین‌چارکی (IQR) برای شناسایی داده‌های پرت در ویژگی‌های عددی پیاده‌سازی شد و ۲۲۹ داده پرت حذف گردید. سپس داده‌های پاک‌شده (۹۶۱ نمونه) با استفاده از روش StandardScaler مقیاس‌دهی شده و به‌صورت طبقاتی (Stratified) به داده‌های آموزش و آزمون تقسیم شدند.

مدل‌سازی و بهینه‌سازی

برای دستیابی به بیشترین دقت، ۱۱ مدل مختلف با استفاده از GridSearchCV و ۱۰ اعتبارسنجی متقاطع (10-Fold CV) بهینه‌سازی شدند:

  • مدل‌های درخت و انسامبل: Random Forest، XGBoost، Extra Trees، Gradient Boosting، AdaBoost و CART.
  • مدل‌های الگوریتمی و شبکه‌های عصبی: KNN، MLP (Neural Network)، SVC، SGD Classifier و Gaussian Naive Bayes.
  • معماری Stacking: ترکیب چهار مدل برتر (XGBoost, Extra Trees, GBM, KNN) به‌عنوان مدل‌های پایه و انتخاب Random Forest به عنوان متامدل (Meta-Learner).

نتایج

دستاوردهای کلیدی و نتایج ارزیابی

مدل‌ها بر اساس معیارهای جامع پزشکی از جمله Accuracy، Sensitivity (Recall)، Specificity، F1-Score و AU-ROC ارزیابی شدند:

  • Stacking Classifier: عملکرد خیره‌کننده با دقت ۹۳.۸٪، حساسیت ۹۵.۵٪، F1-Score برابر ۰.۹۳۴ و AU-ROC برابر ۰.۹۶۰.
  • XGBoost (Optimized): دستیابی به دقت ۹۳.۷۸٪ و حساسیت ۹۵.۵۱٪ با پایداری بسیار بالا.
  • Extra Trees Classifier: کسب بالاترین تفکیک‌پذیری با AU-ROC برابر ۰.۹۶۴۶ و دقت ۹۲.۷۵٪.
  • Random Forest و GBM: کسب دقت بالای ۹۲٪ و عملکرد عالی در اعتبارسنجی متقاطع.

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