روند تحلیل و مهندسی دادهها
در ابتدای پروژه، تحلیل اکتشافی دادهها (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: کسب دقت بالای ۹۲٪ و عملکرد عالی در اعتبارسنجی متقاطع.
نتایج حاصله نشان میدهد که روشهای انسامبل توانستهاند نرخ منفی کاذب را به حداقل رسانده و ابزاری مطمئن برای دستیاری تشخیص پزشکی ارائه دهند.