פרוטוקול זה מתאר מסגרת למידת מכונה לחיזוי מחלות לב, המשלבת הרחבת נתונים באמצעות רשתות יריבים גנרטיביות, בחירת תכונות סטטיסטית ומטה-היוריסטיקה, ובינה מלאכותית ניתנת להסבר.
מאמר שיטה
פרוטוקול זה מתאר מסגרת למידת מכונה לחיזוי מחלות לב, המשלבת הרחבת נתונים באמצעות רשתות יריבים גנרטיביות, בחירת תכונות סטטיסטית ומטה-היוריסטיקה, ובינה מלאכותית ניתנת להסבר.
מחלות לב הן גורם מרכזי למוות ברחבי העולם, מה שהופך את התחזית המוקדמת שלה לנושא קליני וחישובי חשוב. מספר מחקרים התמודדו עם אתגרים כמו מחסור בנתונים, בחירת תכונות ופרשנות מודלים באופן אישי, אך פחות מחקרים הציעו מסגרת משולבת המתמודדת עם אתגרים אלו בצורה סינרגטית. מאמר זה מציג מסגרת חיזוי מקיפה המשתמשת ב: (1) רשת יריבה גנרטיבית (GAN) להתמודדות עם חוסר איזון מעמדי ומחסור בנתונים; (2) גישת בחירת תכונות היברידית המשלבת סינון מוקדם סטטיסטי באמצעות מבחן t. של וולש וגודל האפקט d של כהן, יחד עם אופטימיזציה מטה-היוריסטית באמצעות אופטימיזציה של האריס הוק; ו-(3) שיטות שונות להסבר בינה מלאכותית, כולל SHAP, גרפים של תלות חלקית ויחסי סיכויים. מסגרת זו הוערכה על פי מערכי הנתונים של קליבלנד וסטאטלוג, והניבה דיוק גבוה, ציוני F1 וערכי ROC-AUC גבוהים בהשוואה לקווי בסיס נבחרים ולשיטות קיימות. המודל מספק מסגרת חישובית חזקה וניתנת לפרשנות לחיזוי מחלות לב, המקשרת בין ביצועי למידת מכונה ליכולת פרשנות קלינית.
מחלות לב וכלי דם הן אחת הסיבות המובילות לתחלואה ותמותה ברחבי העולם, ומהוות כ-17.9 מיליון מקרי מוותבשנה. חיזוי מוקדם ומדויק של מחלות לב חשוב להתערבות בזמן ולשיפור תוצאות המטופלים. בהקשר זה, חיזוי מחלות לב באמצעות אלגוריתמים של למידת מכונה (ML) מתמודד עם שלושה אתגרים עיקריים: זמינות מוגבלת של נתונים רפואיים איכותיים, מרחבי תכונות בממדים גבוהים המכילים משתנים מיותרים או לא רלוונטיים, ואופיים השחור של מודלים מורכבים, העלולים להקשות על אמון ואימוץ קליניים2. מחקרים עדכניים שילבו למידת מכונה עם שיטות בינה מלאכותית ניתנת להסבר (XAI) לחיזוי מחלות לב3. חוקרים רבים השתמשו גם בלמידת מכונה לחיזוי וזיהוי מחלות לב4. פיתוחים אחרונים בבינה מלאכותית גנרטיבית, במיוחד רשתות גנרטיביות אדורסריות (GANs), מבטיחים להגדלת נתוניםבתחום הבריאות. במקביל, אלגוריתמים מטה-היוריסטיים כמו Harris Hawk Optimization (HHO) ו-Particle Swarm Optimization (PSO) הוכיחו את עצמם כיעילים בבחירת תכונות ואופטימיזציה של מודלים6. טכניקות XAI, כגון SHAP וגרפי תלות חלקית (PDPs), הפכו גם הן לכלים חשובים לפרשנות תחזיות מודלים מורכבים7. נערכו מחקרים רבים על מודלים של למידת מכונה לחיזוי סיכוני לב וכלי דם.
עם זאת, הספרות הזמינה לעיתים דנה בנושאים אלה בנפרד. חלק מהמחקרים מתמקדים בהגדלת נתונים באמצעות GANs9, בעוד אחרים מתמקדים במיוחד בבחירת תכונות באמצעות אלגוריתמים מטה-היוריסטיים10 או בפרשנות מודלים המבוססת על שיטות XAI11. הגדלה מבוססת SMOTE נחקרה לחיזוי הישרדות אי ספיקת לב12. אבחון מחלות לב מבוססות KNN דווח גםהוא 13. גישות נפרדות אלו אינן מנצלות במלואן את היתרונות המשולבים שניתן להשיג באמצעות מסגרת משולבת המתמודדת עם מחסור בנתונים, בחירת תכונות, אימון מודלים ויכולת פרשנות יחד.
מחקרים עדכניים בחנו גישות קשורות. מחקר משנת 2026 ב-Frontiers in Medicine הציע מסווגים הטרוגניים מותאמים ל-PSO עם אינטרפולציה של ריפוד והקצאה חציונית לאבחון מחלות לב, והשיג דיוק של 91.3% במאגר נתונים מאוחד14. עבודות עדכניות נוספות יישמו אופטימיזציה מטה-היוריסטית לסגמנטציה רפואית15, XAI לחיזוי שבץ16, אופטימיזציה היברידית לסיווג הפרעות קצבלביות 17, ומערכות תמיכה קליניות משופרות SHAP18. עם זאת, מעטים מהמחקרים הללו משלבים הגדלה גנרטיבית, בחירת תכונות סטטיסטית דו-קריטריונית עם אופטימיזציה של HHO, ו-XAI רב-שיטתי במסגרת משולבת אחת.
מאמר זה שואף להתמודד עם פער זה על ידי הצעת מסגרת חיזוי מחלות לב שמשלבת באופן שיטתי הרחבת נתונים, בחירת תכונות היברידיות, אופטימיזציה והכשרה של מודלים, וניתוח הסברות. בשלב ההגברת הנתונים, משתמשים ב-GANs לסינתזה נתונים קליניים טבלאותיים המבוססים על תכונות מטופל כגון גיל, לחץ דם, רמות כולסטרול ומדידות אלקטרוקרדיוגרפיות. בעוד ש-GANs משמשים באופן נרחב ליצירת תמונות רפואיות, מחקר זה מיישם אותם על מאגר הנתונים של מחלות הלב של קליבלנד, המכיל 13 מאפיינים מספריים וקטגוריים, כדי להתמודד עם גודל המדגם המוגבל (n = 303) וחוסר האיזון הקטלוגי. בשלב בחירת התכונות ההיברידית, מבחן ה-t. של וולש וגודל האפקט d של כהן משולבים עם HHO לזיהוי תת-קבוצות תכונות עמידות סטטיסטית ורלוונטיות קלינית. בשלב האופטימיזציה וההדרכה של המודלים, PSO משמש לאופטימיזציה של משקלי הרשת העצבית המלאכותית, בעוד מודלים של רגרסיה לוגיסטית ויער אקראי מאומנים בשל האיזון בין ביצועים להסברות. בשלב ההסבר, טכניקות XAI משלימות ביניהן SHAP, PDPs ויחס סיכויים, משמשות לספק פרשנויות גלובליות ומקומיות של מודלים.
זרימת העבודה הכוללת של המסגרת המוצעת מוצגת באיור 1. טבלה 1 מסכמת את ההבדלים המרכזיים בין הגישה המוצעת לבין שיטות בחירת תכונות קיימות [טבלה 1 כאן].

איור 1: סקירה של מסגרת חיזוי מחלות הלב המוצעת. תהליך העבודה מורכב מארבעה שלבים עיקריים: (1) עיבוד נתונים מוקדם והרחבה באמצעות GANs לטיפול במחסור בנתונים; (2) בחירת תכונות היברידית המשלבת סינון סטטיסטי (מבחן t. של וולש עם d של כהן) ואופטימיזציה של האריס הוק; (3) אימון מודלים עם מסווגים ניתנים לפרשנות, כולל רגרסיה לוגיסטית ויער אקראי, ו-ANN מותאם ל-PSO; ו-(4) ניתוח הסבר באמצעות SHAP, גרפים של תלות חלקית ויחסי סיכויים. קיצורים: GANs = רשתות יריבה גנרטיביות; PSO = אופטימיזציה של נחיל חלקיקים; ANN = רשת עצבית מלאכותית. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.
| קטגוריית גישה | בדיקות סטטיסטיות (למשל, מבחן t) | גודל אפקט (למשל, d של כהן) | אופטימיזציה מטה-היוריסטית (למשל, HHO/PSO) | מוקד פרשנות |
| סטטיסטיקה מסורתית | כן | לעיתים נדירות | לא | בינוני |
| אופטימיזציה טהורה | לא | לא | כן | נמוך |
| שיטות היברידיות קיימות | לפעמים | לעיתים נדירות | כן | משתנה |
| המסגרת המוצעת | כן (מבחן ה-t של וולש) | כן (כהן ניצח ≥ 0.5) | כן (HHO) | גבוה (משולב עם XAI) |
טבלה 1: השוואה בין גישות לבחירת תכונות בחיזוי מחלות לב. הגישות המושוואות כוללות סטטיסטיות מסורתיות, אופטימיזציה טהורה, שיטות היברידיות קיימות והמסגרת המוצעת על פני הקריטריונים הבאים: בדיקות סטטיסטיות, גודל אפקט, אופטימיזציה מטה-היוריסטית ומיקוד בפרשנות.
התרומות העיקריות של עבודה זו הן כדלקמן. ראשית, כדי להתמודד עם מחסור בנתונים וחוסר איזון במחלקות, מיושם GAN סטנדרטי עם אובדן אנטרופיה בינארית ואופטימיזציה של אדם, יחד עם גיבוי להפרעות גאוסיות כאשר TensorFlow אינו זמין. שנית, כדי להתמודד עם יתירות תכונות, מוצעת אסטרטגיית בחירת תכונות היברידית המשלבת סינון מוקדם סטטיסטי עם HHO באמצעות פונקציית העברה בצורת V. גישה דו-קריטריונית זו שואפת לבחור תכונות שהן גם מובהקות סטטיסטית וגם רלוונטיות קלינית. שלישית, כדי להתמודד עם אטימות המודל, משולבת חבילת הסבר רב-שיטתית, הכוללת תרשימי SHAP beswarm ו-waterfall, PDPs ויחסי סיכויים עם טווחי ביטחון של 95%. פרוטוקול התאמה פשוט מסופק למשתמשים קליניים: אם PDP מראה מגמה לא ליניארית, יש להעדיף את הסבר SHAP על פני מקדמי רגרסיה לוגיסטית. רביעית, כדי לתמוך בשחזוריות ובאימות מובנה, המסגרת כוללת אימות צולב שכבתי, ביקורת הוגנות, מחקרי אבלציה, פרוטוקול אימות חיצוני ל-MIMIC-III, ותיעוד של היפרפרמטרים מרכזיים.
הגישה מוגבלת. התחברו או התחילו תקופת ניסיון כדי לצפות בתוכן זה.
הצהרת אתיקה, מאגר נתונים, תוכנה והכנת נתונים
ממצאי המחקר התבססו על מאגר מחלות הלב של UCI. מכיוון שמדובר במשאב נגיש לציבור וללא זיהותו, השימוש בו לא דרש אישור ועדת אתיקה. המחברים גם מאמתים את המקוריות של כתב היד, ומאשרים כי לא פורסם או נשלח לכתבי עת אחרים.
מאגר הנתונים של מחלות הלב של קליבלנד חולק לקבוצות אימון ומבחנים ביחס של 80/20. מערך הנתונים בדרך כלל מכיל 303 מופעים; לכן, כ-242 דגימות שימשו לאימון, ו-61 דגימות נשמרו כסט בדיקה נקי. דגימות סינתטיות שנוצרו בשיטת GAN או גיבוי גאוסיאנית נוספו רק לנתוני האימון כדי להפחית את הסיכון לדליפת נתונים. סט האימון המורחב הסופי כלל כ-242 דגימות אמיתיות ו-1,000 דגימות סינתטיות, מה שהעניק 1,242 דגימות אימון. לא נעשה שימוש בסט אימות סטטי קבוע. במקום זאת, יושם אימות צולב מדורג במהלך אימון המודלים, כאשר כל קיפול חילק את נתוני האימון המוגברים לתת-קבוצות אימון ואימות.
מערך הנתונים נטען ל-Pandas DataFrame ונבדק לאיתור ערכים חסרים. תכונות מספריות עם ערכים חסרים טופלו באמצעות אימפוטציה חציונית עם מחלקת SimpleImputer מ-scikit-learn באמצעות אסטרטגיה = 'חציון'. תכונות קטגוריות עם ערכים חסרים טופלו באמצעות אימפוטציה של מצב עם SimpleImputer באמצעות אסטרטגיה = 'most_frequent'. מנגנוני החסרות תועדו על ידי חישוב אחוז החסר לכל תכונה באמצעות df.isnull().sum() / len(df). דפוסי החסרות לא אקראיים הוערכו על ידי השוואת ערכי ממוצע של תכונות אחרות בין מדגמים עם ובלי נתונים חסרים באמצעות מבחני t. למאפיינים מספריים ומבחני חי-ריבוע לתכונות קטגוריות. לאחר מכן תועדה ההיעדרות כחסרה לחלוטין באקראי (MCAR), נעדרת באקראי (MAR), או חסרה לא אקראית (MNAR), כאשר רלוונטי.
עבור מערכי נתונים עם חסרות משמעותית, הומלץ ניתוח רגישות על ידי השוואת אימפוטציה חציונית/מצבית עם העברה מרובה באמצעות משוואות שרשורות (MICE), באמצעות fancyimpute. איטרטיבי אימפוטר עם max_iter = 10, ואימפוטציה של KNN, תוך שימוש ב-fancyimpute. KNN עם k = 5. הפרש דיוק של פחות מ-0.03 טופל כמצביע על עמידות בשיטת ההעברה12. ניתוח רגישות זה נחשב לאופציונלי עבור מאגר הנתונים של קליבלנד בשל היעדרותו המוגבלת, אך הומלץ למאגרי נתונים קליניים אחרים עם יותר מ-5% ערכים חסרים. תבניות החסרות גם הוצגו באמצעות ספריית missingno על ידי יצירת מפת חום של מטריצת החסרות באמצעות msno.matrix(df). קיבוץ דפוסי החסרות שימש לזיהוי האם ערכים חסרים התרחשו יחד באופן שיטתי, מה שעשוי להעיד על מנגנוני MNAR הדורשים קלט מומחה קליני.
מאפיינים מספריים תוקנו באמצעות נורמליזציה של ציון z. StandardScaler מ-scikit-learn הותקן על נתוני האימון ואז יושם גם על ערכות אימון וגם בדיקות. משתנים קטגוריים קודדו באמצעות קידוד חד-חם. סוג כאב חזה (cp), הכולל ארבע קטגוריות, הומר לארבעה עמודות אינדיקטור בינאריות באמצעות pandas.get_dummies. תלסמיה (תל), הכוללת שלוש קטגוריות, הוסבה לשלוש עמודות אינדיקטור בינאריות. מכיוון שמחולל GAN והדיסקרימינטור השתמשו בממד קלט/פלט קבוע של 13 תכונות התואמים למערך הנתונים המקורי לפני קידוד חד-חם, דגימות סינתטיות נוצרו במרחב המקורי של 13 תכונות ואז עברו דרך אותו צינור קידוד חד-חם כמו הנתונים האמיתיים. זה שמר על תאימות לארכיטקטורת GAN תוך שהוא מאפשר שימוש בתכונות מקודדות לאימון מודלים.
הגדרות מתמטיות ומדדי איכות
מרחק פרשה שימש להשוואת התפלגויות תכונות ממשיות וסינתטיות. מרחק הפרשה Fr(F, G) בין שתי התפלגויות F ו-G הוגדר כך:
Fr2(F,G)=minX,YE|X-Y|2 (1)
כאשר E מייצג את התוחיה, והמזעור נלקח על פני כל המשתנים המקריים X ו-Y בעלי התפלגויות F ו-G, בהתאמה19.
שיטת האופטימיזציה של Harris Hawk (HHO) שימשה כשיטת אופטימיזציה מטה-היוריסטית. HHO שואב השראה מהתנהגות הציד השיתופית של הנץ האריס20. המעבר בין שלבי החקירה והניצול נשלט על ידי אנרגיית הבריחה E. בשלב החקירה, כאשר |E| ≥ 1, העדכון הוגדר כך:
X(t+1) = Xראנד (t) - r1 | Xראנד (t) - 2r2X (t)|
בשלב הניצול, כאשר |E| < 1, העדכונים נקבעו לפי אנרגיית הבריחה E = 2E(1 − t/T) ועוצמת הקפיצה J = 2(1 − r5). במצב מצור רך, איפה ≥ 0.5 ו-|E| ≥ 0.5, העדכון הוגדר כך:
X(t+1) = ΔX(t) - E|JXארנב (t) - X(t)|
במצב מצור קשה, איפה ≥ 0.5 ו-|E| < 0.5, העדכון הוגדר כך:
X(t+1) = Xארנב (t) - E|ΔX(t)|
ההגינות הוערכה באמצעות שוויון סטטיסטי ואיזון בין שיעורי שגיאות, בהתאם ל-Hardt ואח' 20 ולימה ואח' 21. הפרש שוויון דמוגרפי, הפרש סיכויים משווים ושגיאת כיול מבוססת גיל שימשו כמדדי הוגנות.

ΔEO = מקסימום(|TPRA - TPRB |,| FPRA - FPRB |)
ΔBS=|BS גיל<50 - BSגיל>50 |
כאשר BS הוא ציון ברייר:

פרשנות לוח המחוונים התבססה על ערכי SHAP, המחושבים באמצעות תורת המשחקים הקואליציונית18.

כאשר Φi מייצג את הייחוס SHAP לתכונה i, F. f(S) מייצג את קבוצת כל התכונות, ומייצג את חיזוי המודל עבור תת-קבוצה של תכונות S.
הרחבת נתונים מבוססת GAN
כדי להתמודד עם מחסור בנתונים ובחוסר איזון מעמדי, נעשה שימוש ברשת עוינת גנרטיבית (GAN) ליצירת דגימות סינתטיות. ארכיטקטורת הגנרטור הוגדרה ב-TensorFlow/Keras. הוא קיבל וקטור רעש בעל 100 ממד שנדגם מהתפלגות נורמלית סטנדרטית N(0,1), ואחריו שכבות צפופות עם 128, 256 ו-512 יחידות באמצעות הפעלת ReLU. שכבת היציאה כללה 13 יחידות, התואמות לממד התכונה המקורי, והשתמשה בהפעלה סיגמואידית.
ארכיטקטורת הדיסקרימינטור קיבלה וקטור תכונה 13 ממדי כקלט. הוא כלל שכבות צפופות עם 512, 256 ו-128 יחידות באמצעות הפעלה של LeakyReLU עם α = 0.2. שכבת הפלט כללה יחידה אחת עם הפעלה סיגמואידי לסיווג בינארי של דגימות אמיתיות לעומת סינתטיות.
ה-GAN אומן ל-100 תקופות עם גודל אצווה של 64. אופטימייזר אדם שימש עם קצב למידה של 0.0002, β1 = 0.5, ו-β2 = 0.999. בכל תקופה, המבחין אומן לסירוגין על מחזורים אמיתיים וסינתטיים, והגנרטור אומן להטעות את המבחין. לאחר האימון, הוזנו 1,000 וקטורי רעש אקראיים לגנרטור כדי לייצר 1,000 דגימות סינתטיות, שנוספו רק למערך האימון.
קריסת המצב נבדקה במהלך אימוני GAN על ידי מדידת השונות של כל תכונה סינתטית על פני 100 דגימות שנוצרו לאחר כל 10 אפוקים. אם השונות של תכונה כלשהי ירדה מתחת ל-10% מהשונות של הנתונים האמיתיים המתאימה לשלוש בדיקות רצופות, היה חשד לקריסת מצב. אסטרטגיות ההפחתה כללו הפחתת קצב הלמידה ל-1 × 10⁻4, הגדלת גודל האצווה ל-128, התחלת האימון מחדש עם אתחול משקל שונה, או החלפת ה-GAN הסטנדרטי ב-Wasserstein GAN עם עונש גרדיאנט (WGAN-GP), כפי שתואר על ידי אריובסקי ואחרים. היישום השתמש ב-GAN סטנדרטי עם גיבוי להפרעות גאוסיות כדי להבטיח יצירת נתונים סינתטיים כאשר TensorFlow לא היה זמין.
איכות הנתונים הסינתטיים הוערכה על ידי חישוב מרחק פרשה בין התפלגויות תכונות אמיתיות וסינתטיות באמצעות מימוש מותאם אישית. מסווג, כמו רגרסיה לוגיסטית, גם הוא אומן להבחין בין דגימות אמיתיות לסינתטיות; דיוק סיווג קרוב טופל כמצביע על נאמנות גבוהה. חושב AUC מדויק-זיכרון, כאשר ערכים מעל 0.9 נחשבו למעיד על התפלגות תקינה. קורלציות פירסון בין זוגות תכונות במאגרי הנתונים הממשיים והסינתטיים הושוו גם הם, כאשר הבדלים מתחת ל-0.05 טופלו כשימור מקובל של מבנה המתאמים.
כאשר TensorFlow/Keras לא היה זמין או שאימון GAN נכשל, נעשה שימוש בשיטת גיבוי להפרעות גאוסיות. לכל מחלקה, ממוצע (μ) וסטיית התקן (σ) של כל תכונה חושבו מתוך קבוצת האימון. דגימות סינתטיות נוצרו כך:
Xsynthetic = μ + ε × σ × 0.05, כאשר ε ~ N(0,1)
תוויות מחלקות נוצרו ביחס לחלוקת המחלקות המקורית. גיבוי זה נכלל כדי לתמוך בשחזוריות בין סביבות ללא תלות בלמידה עמוקה.
בחירת תכונות היברידיות
יושמה אסטרטגיית בחירת תכונות היברידית דו-שלבית. בשלב הראשון בוצעה סינון סטטיסטי מוקדם. עבור כל תכונה xi בקבוצת התכונות X, הערכים חולקו לשתי קבוצות לפי משתנה התוצאה הבינארי: G0 עבור y = 0, המציין שאין מחלה, ו-G1 עבור y = 1, המצביע על נוכחות מחלה. מבחן ה-t. הדו-מדגמי של וולש בוצע באמצעות scipy.stats.ttest_ind עם equal_var = שגוי. גודל האפקט d של כהן חושב כך:
d = (ממוצע1 − ממוצע2) / pooled_std
כאשר:
pooled_std = sqrt((std12 + std22)/2)
שם התכונה, ערך p וערך d של כהן נשמרו בטבלת תוצאות. התכונות נבחרו אם עמדו בשני הקריטריונים: ערך p < 0.05 ו- |כהן ד| ≥ 0.5. מערך התכונות שהתקבל הוגדר כ-Xfiltered.
מבחן ה-t של וולש שימש כי הוא מתאים לתכונות מספריות רציפות כמו גיל, ת'לאך ו-oldpeak. עבור מאפיינים קטגוריים בינאריים כמו מין ואקסאנג, מבחן t. מניב תוצאות דומות למבחן פרופורציה בהשוואה בין שתי קבוצות. תכונות רב-קטגוריות כמו cp ו-thal קודדו ב-one-hot, וכל מדד בינארי נבדק בנפרד מול משתנה התוצאה. גישה זו נחשבה למתאימה משום שמערך הנתונים של קליבלנד כולל יותר מ-30 מדגמים, התכונות היו סטנדרטיות לפני הניתוח, ו-equal_var = שגוי מסביר שונות לא שוות בין קבוצות. עבור מאפיינים עם הפרות חמורות של נורמליות, מבחן Mann-Whitney U נחשב כמבחן לא-פרמטרי חלופי.
הסף p < 0.05 עקב אחרי מובהקות סטטיסטית קונבנציונלית, בעוד ש|כהן ד| ≥ 0.5 התאימו לגודל אפקט בינוני עד גדול. עבור מערכי נתונים עם גודל מדגם קטן או תוצאות נדירות, הומלצו התאמה מבוססת בוטסטרפ, תיקון g של Hedges, או סף חקר מרוכך עם קלט קליני מומחה. לדוגמה, ניתן היה להשתמש ב-1,000 דגימות אתחול לחישוב מרווחי הביטחון d של כהן, ו-g של הדג'ס יכול היה לשמש לתיקון הטיית דגימה קטנה. תכונות עם סטטיסטיקות גבוליות, כגון ערכי p בין 0.03 ל-0.08 או |d| הערכים בין 0.4 ל-0.6 תועדו לסקירת מומחים קלינית אפשרית לפני ההוצאה.
בשלב השני, אופטימיזציה של האריס הוק (HHO) יושמה על קבוצת התכונות המסוננות סטטיסטית. גודל אוכלוסיית HHO נקבע ל-20, ומספר האיטרציות המקסימלי נקבע ל-50. כל פתרון יוצג כוקטור בינארי באורך השווה למספר התכונות ב-Xfiltered, כאשר 1 מציין שתכונה נבחרה ו-0 מציין שלא נבחרה. מיקומי HHO רציפים מופו לווקטורים בינאריים באמצעות פונקציית ההעברה בצורת V:
T(x) = |tanh(x)|
הערך הבינארי הוגדר ל-1 אם T(x) > 0.5 ו-0 אחרת. פונקציית ה-V נבחרה משום שהיא תומכת בחקירה וניצול מאוזנים במהלך המרה בינארית.
פונקציית ההתאמה לכל פתרון הוגדרה באמצעות רגרסיה לוגיסטית. מודל רגרסיה לוגיסטית אומן תוך שימוש רק בתכונות שנבחרו על ידי הווקטור הבינארי, ובוצעה אימות צולב של 5 פעמים באמצעות cross_val_score מ-scikit-learn. הכושר חושב כך:
כושר = 1 − דיוק ממוצע
אוכלוסיית מיקומי הבז אתחולה באופן אחיד בטווח [−1, 1] באמצעות numpy.random.uniform(−1, 1, (population_size, n_features)) עם זרע אקראי קבוע של 42 לצורך שחזוריות. בכל איטרציה הוערכה כושר כל הנץ, זוהה מיקום הנץ הטוב ביותר כארנב, ומיקומי הנץ עודכנו באמצעות משוואות חקירה וניצול של HHO בהתבסס על אנרגיית בריחה. לאחר ההתכנסות, הווקטור הבינארי בעל הביצועים הטובים ביותר נבחר כתת-הקבוצה הסופית של התכונות, Xfinal.
התכונות שנבחרו נרשמו מריצת אופטימיזציה אחת של HHO עם זרע אקראי קבוע. ליישומים שדרשו ביטחון סטטיסטי גבוה יותר, הומלצו 30 ריצות עצמאיות עם זרעים אקראיים שונים, וניתן היה לבחור תכונות קונצנזוס שהופיעו לפחות ב-80% מהרצות. היישום המדווח התבסס על ריצה מייצגת אחת, שכן בדיקות ראשוניות הצביעו על התכנסות עקבית.
אימון ואופטימיזציה של מודלים
נשקלו שלושה מודלים: רגרסיה לוגיסטית, יער אקראי, ורשת עצבית מלאכותית (ANN) מותאמת ל-PSO. רגרסיה לוגיסטית אומנה באמצעות אימות צולב מדורג של 5 פעמים לשמירה על התפלגות מחלקות. עוצמת הרגולריזציה C אופטימלית באמצעות מרחב החיפוש C
[0.001, 0.01, 0.1, 1, 10]. עבור כל קיפול וכל ערך של C, המודל אומן על קיפול האימון והוערך על קיפול הוולידציה. הערך של C שמקסם את דיוק הוולידציה הממוצע בין הקפלים נבחר.
מודל היער האקראי אומן באמצעות כוונון היפרמטרים. מרחב החיפוש כלל max_depth = [5, 10, 15, אין] ו-min_samples_split = [2, 5, 10]. חיפוש רשת עם אימות צולב של 5 פעמים בוצע באמצעות ROC-AUC כמדד אופטימיזציה דרך GridSearchCV עם ניקוד = 'roc_auc'. מודל היער האקראי שנבחר השתמש ב-max_depth = 10 ו-min_samples_split = 5. אומדן ציון מחוץ לתיק (OOB) הופעל באמצעות oob_score = נכון.
ההתאמה הגבוהה הוערכה על ידי חישוב הפער בין דיוק האימון לציון OOB:
overfitting_gap = training_accuracy − oob_score
פער יתר מתחת ל-0.05 נחשב לסימן להכללה טובה, בעוד פער גדול מ-0.10 הצביע על הצורך להפחית max_depth או להגדיל את min_samples_split. עם ציון OOB של 0.9296 ודיוק אימון טיפוסי בין 0.94 ל-0.96, הפער היה בערך 0.01–0.03.
מסווג ANN גם אופטימיזציה באמצעות אופטימיזציה של להקת חלקיקים (PSO). ארכיטקטורת ה-ANN כללה שכבת קלט, שכבה נסתרת אחת עם 64 נוירונים המשתמשים בהפעלת ReLU, ושכבת פלט עם נוירון אחד באמצעות הפעלה סיגמואיד. PSO אותחל עם 50 חלקיקים ו-50 איטרציות ושימש לאופטימיזציה של משקלי הרשת הראשוניים. ה-ANN אומן לאחר מכן באמצעות הפצה אחורית סטנדרטית. מכיוון שאופטימיזציה של PSO בוצעה על אותם נתוני אימון ללא אימות מקונן, רכיב זה טופל בזהירות. ליישומים עתידיים, הומלץ אימות מקונן צולב (cross-validation), עם לולאה חיצונית של 10 קיפולים להערכה ולולאה פנימית של 10 קיפולים לבחירת היפרפרמטרים של PSO. פער הכללה מתחת ל-0.08 נחשב מקובל, בעוד פער מעל 0.15 הצביע על התאמה יתר פוטנציאלית הדורשת פישוט מודל.
הערכת מודלים
הערכת המודל בוצעה באמצעות אימות צולב מדורג של 10 פעמים על קבוצת התכונות הסופית, Xfinal. בכל קיפול, מודלים של רגרסיה לוגיסטית ויער אקראי אומנו על נתוני האימון והוערכו על פי נתוני האימות. דיוק, דיוק, שחזור, ציון F1 ו-ROC-AUC חושבו באמצעות classification_report ו-roc_auc_score מ-scikit-learn. הממוצע והסטיית התקן של כל המדדים חושבו על פני עשרת הקיפולים.
פער ההכללה חושב גם עבור כל קיפול כך:
generalization_gap = training_accuracy − validation_accuracy
דווח על פער הכללה ממוצע בכל עשרת הקימונים. פער ממוצע מתחת ל-0.08 נחשב כמצביע על התאמת יתר מינימלית, בעוד פער מעל 0.15 רמז על התאמת יתר ועל הצורך ברגולריזציה או הפחתת מורכבות המודלים. בוצעו מבחני דירוג חתום של וילקוקסון כדי להשוות את המסגרת המוצעת לשיטות בסיסיות ב-10 קיפולים, תוך שימוש ב-α = 0.01.
ניתוח הסברים
ניתוח הסבר בוצע באמצעות שיטות ספציפיות למודל וללא מודל. עבור רגרסיה לוגיסטית, המודל הסופי הותאם וערכי המקדם הופקו עבור כל תכונה שנבחרה. יחסי הסיכויים חושבו כ-exp(מקדם), וחושבו רווחי אמון של 95% באמצעות שגיאות תקן של המקדמים.
ליער אקראי, ציוני חשיבות גיני הופקו מהמודל המאומן באמצעות מאפיין feature_importances_ ונרמלו לסכום ל-1. הסברים על SHAP נוצרו באמצעות ספריית SHAP. אובייקט KernelExplainer נוצר באמצעות המודל המאומן ומערך נתונים רקע, כגון 100 דגימות אימון שנבחרו באקראי. ערכי SHAP חושבו עבור כל המופעים במערך הבדיקה באמצעות shap_values. נוצרו תרשימי סיכום חרום דבורים באמצעות shap.summary_plot, וגרפים של ערכי SHAP ממוצעים מוחלטים נוצרו באמצעות shap.bar_plot.
נוצרו גרשי תלות חלקית (PDPs) עבור התכונות המובילות שזוהו בניתוח SHAP. עבור כל תכונה נבחרת, נוצר רצף ערכים החוצה את טווח התכונות. כל ערך הוחלף בעמודת התכונה תוך שמירה על תכונות אחרות קבועות, וההסתברות החזויה הממוצעת חושבה בכל המופעים. ערכי התכונות הושוו מול תחזיות ממוצעות באמצעות matplotlib. מרווחי ביטחון של 95% נוספו באמצעות 100 גרסאות דגימה מחדש של בוטסטרפ.
גרפים של תוחלת מותנית (ICE) בודדים נוצרו עבור תכונות נבחרות על ידי הצגת מסלולי חיזוי למקרים בודדים כאשר ערכי התכונות משתנים. קו ה-PDP הונח על מגרש ICE. שיטות ההסבר הושוו על ידי חישוב מתאם הדירוג של ספירמן בין יחס הסיכויים של רגרסיה לוגיסטית לערכי SHAP אקראיים ביער באמצעות scipy.stats.spearmanr. תועדו פערים בין שיטות ההסבר לפרשנות קלינית. כאשר SHAP ומקדמי רגרסיה לוגיסטית התנגשו, נבדק ה-PDP של תכונה זו. אם ה-PDP הראה מגמה לא ליניארית, ההסבר של SHAP קיבל עדיפות על פני מקדם הרגרסיה הלוגיסטית, משום ש-Random Forest יכול ללכוד קשרים לא ליניאריים שמודלים ליניאריים אינם יכולים.
פרוטוקול הכללת מסגרת לאימות חיצוני באמצעות MIMIC-III
נקבע פרוטוקול אימות חיצוני ליישום המסגרת על מסד הנתונים MIMIC-III. גישה ל-MIMIC-III תדרוש אישור PhysioNet והשלמת ההכשרה הנדרשת לנבדקים אנושיים. הקבוצה המוצעת תכלול מטופלים בוגרים בגיל 18 ומעלה עם קבלה ראשונה ליחידת טיפול נמרץ ואת קודי ICD-9 410–414 לאוטם שריר הלב החריף או קודי ICD-10 I20–I25 למחלת לב איסכמית. קריטריוני ההדרה יכללו יותר מ-30% ערכים חסרים במאפייני היעד, משך שהייה מתחת ל-24 שעות, גיל מעל 90 שנים, ניתוח לב קודם או מחלת לב מולדת.
התוצאה המוצעת הייתה אירועים לבביים שליליים משמעותיים (MACE) בתוך 72 שעות מהקבלה, שהוגדרה כשילוב של תמותה בבית חולים, שוק קרדיוגני או הפרעת קצב חדרית הדורשת התערבות. מאפיינים בסדרות זמן כמו דופק ולחץ דם יאוגדו במהלך 24 השעות הראשונות של השהייה בטיפול נמרץ באמצעות ממוצע, חציון, מינימום, מקסימלי ומגמה, כאשר המגמה תוערך כשיפוע מהרגרסיה הליניארית לאורך זמן. קצב הלב המרבי ישמש כמקבילה הממופה של תלאך.
מאפייני מערך הנתונים של קליבלנד היו ממופים למשתני MIMIC-III. לדוגמה, ת'לאך יומפה לדופק המקסימלי שנמדד במהלך 24 השעות הראשונות של השהות בטיפול נמרץ, CP יומפה להערכות כאב מובנות ולאזכורים לכאב חזה שנלקח ב-NLP, ו-oldpeak יומפה לסטיית מקטע ST מדוחות ECG. תיווצר טבלת מיפוי שתתעד את כל יישורי התכונות.
לפני יישום הצינור המלא, חילוץ NLP עבור oldpeak יאומת על 100 דוחות ECG שנבחרו באקראי. דיוק, זיכרון וציון F1 יחושבו מול הערות ידניות על ידי שני רופאים. אם ציון F1 היה מתחת ל-0.85, דפוסי רגקס היו מתוקנים או נתוני ECG מובנים מאירועי גרף היו משמשים כחלופה. צינור העיבוד המוקדם יחזור על נתוני MIMIC-III שהופצו, ה-GAN יוכשר מחדש להגדלה, בחירת תכונות היברידיות תוחל מחדש, מודלים יוכשרו מחדש, ייוצרו הסברים, ומדדי הביצועים יושוו לתוצאות מערך הנתונים של קליבלנד.
יישום לוח מחוונים קליני
אב-טיפוס של לוח מחוונים קליני מבוסס רשת תוכנן באמצעות מסגרת כמו Flask או Django. נקודות קצה API של HL7/FHIR תוכננו לאינטגרציה עם EHR, כאשר אימות והרשאה מוגדרים בהתאם למדיניות האבטחה המוסדית. פונקציות מיפוי נתונים תוכננו להמיר נתוני EHR לפורמט קלט של מודל.
ממשק המשתמש כלל שלוש תצוגות עיקריות. תצוגת הבדיקה המקדימה הציגה דמוגרפיה של מטופלים וציוני סיכון מחושבים עם רמות סיכון מקודדות בצבעים. תצוגת תמיכה בהחלטות הציגה תרשים מפל של SHAP המציג את הגורמים התורמים המרכזיים עבור מטופל מסוים. תפיסת תכנון ההתערבות אפשרה ניתוח 'מה אם' על ידי התאמת גורמי סיכון ניתנים לשינוי והצגת תחזיות סיכון מעודכנות. פונקציונליות ייצוא נכללה לשמירת דוחות כקבצי PDF או לאינטגרציה עם מערכות תיעוד EHR.
לפריסה קלינית עתידית, תוכננה הערכת שימושיות בלוח המחוונים עם לפחות חמישה רופאים. ההערכה תשתמש בסולם השימושיות של המערכת, עם ציון יעד מעל 68, זמן השלמת משימה, עם הפחתה של לפחות 20% בהשוואה לשימוש ב-EHR בלבד, וסולמות שביעות רצון של 5 נקודות לבהירות ההסבר ואמון. הערכת השימושיות הזו תוכננה כשלב עתידי ולא יושמה במחקר הנוכחי.
הגישה מוגבלת. התחברו או התחילו תקופת ניסיון כדי לצפות בתוכן זה.
הגדרות ניסיוניות ומדדי ביצועים
כל הניסויים בוצעו בפייתון 3.9 באמצעות ספריות scikit-learn, TensorFlow ו-SHAP. בוצעה אימות צולב מדורג של 10 פעמים. מדדי ההערכה כללו דיוק, דיוק, זיכרון, ציון F1 ו-ROC-AUC.
השוואת ביצועים עם שיטות בסיסיות נבחרות
...| שיטה | דיוק | דיוק | זימון מחדש |
הגישה מוגבלת. התחברו או התחילו תקופת ניסיון כדי לצפות בתוכן זה.
המסגרת המתוארת כאן מספקת גישה ניתנת לשחזור לפיתוח מודלים ניתנים לפרשנות לחיזוי מחלות לב. לוח מחוונים קליני אב-טיפוס המשלב הסברים אלו מוצג באיור 4, שמיישם תהליך עבודה בן שלושה שלבים: סינון מוקדם, תמיכה בהחלטות באמצעות SHAP, ותכנון התערבות [איור 4 כאן]. מספר צעדים קריטיים דורשים תשומת לב קפדנית כדי להבטיח יישום מוצלח של מסגרת זו.
כפי שמוצג בטבלה 5, השוואה בין מחקרי חיזוי מחלות לב קיימים מצביעה על פערים מתודולוגיים ב...
הגישה מוגבלת. התחברו או התחילו תקופת ניסיון כדי לצפות בתוכן זה.
למחברים אין ניגודי עניינים להצהיר עליהם.
המחברים מודים על תמיכת אוניברסיטת קפיטל (הלוואן) והאוניברסיטה הערבית הפתוחה במתן מתקני מחקר. מחקר זה לא קיבל מענקים ספציפיים מסוכנויות מימון במגזר הציבורי, המסחרי או הלא-רווחי.
הגישה מוגבלת. התחברו או התחילו תקופת ניסיון כדי לצפות בתוכן זה.
| שם | חברה | מספר קטלוג | הערות |
|---|---|---|---|
| מאגר נתונים למחלות לב של קליבלנד | מאגר למידת מכונה של UCI | https://archive.ics.uci.edu/ml/datasets/heart+disease | מאגר נתונים של מחלות לב בנצ'מרק המשמש לפיתוח/הערכת מודלים |
| ג'אנגו | קרן התוכנה Django | לא זמין | מסגרת רשת חלופית ליישום לוח מחוונים |
| fancyimpute | מפתחים של FancyImpetute | לא זמין | ניתוח רגישות ההטלה של MICE ו-KNN אופציונלי |
| בקבוק | פרויקטים של משטחים | לא זמין | מסגרת ווב ליישום לוח מחוונים |
| תקן API של HL7/FHIR | HL7 אינטרנשיונל | לא זמין | תקן מתוכנן לאינטגרציה של EHR/לוח מחוונים |
| קראס | מפתחי Keras | לא זמין | API רשת עצבית בשימוש עם TensorFlow/Keras לארכיטקטורת GAN |
| matplotlib | מפתחי Matplotlib | לא זמין | ספריית השרטוטים |
| מאגר הנתונים MIMIC-III | PhysioNet | https://physionet.org/content/mimiciii/1.4/ | מאגר טיפול נמרץ לאימות חיצוני מתוכנן |
| מיסינגנו | מפתחי MissingNo | לא זמין | ויזואליזציה של מטריצת חסר |
| NumPy | מפתחי NumPy | לא זמין | חישוב נומרי |
| פנדות | מפתחי פנדה | לא זמין | מניפולציה של נתונים |
| PhysioNet | PhysioNet | https://physionet.org/ | פלטפורמה/מקור גישה ל-MIMIC-III |
| פייתון | קרן התוכנה של פייתון | לא זמין | גרסה 3.9/3.9.7 |
| סקיקיט-לרן | מפתחי SCIKIT-Learn | לא זמין | ספריית למידת מכונה, הכוללת עיבוד מוקדם, הדרכת מודלים, אימות צולב ומדדים |
| SciPy | מפתחי SciPy | לא זמין | בדיקות סטטיסטיות, כולל וולץ' מבחן t s ומתאם ספירמן |
| שאפ | מפתחי SHAP | לא זמין | ספריית בינה מלאכותית ניתנת להסבר |
| מאגר נתוני מחלות לב Statlog | מאגר למידת מכונה של UCI | https://archive.ics.uci.edu/ml/datasets/statlog+(לב) | מאגר נתונים למחלות לב בנצ'מרק |
| TensorFlow | גוגל | לא זמין | מסגרת למידה עמוקה למימוש GAN |
| מאגר למידת מכונה של UCI | אוניברסיטת קליפורניה, אירוויין | https://archive.ics.uci.edu/ | מקור מאגר למערכי נתונים של קליבלנד וסטטלוג |
בקש הרשאה לשימוש חוזר בטקסט או באיורים של מאמר JoVE זה
בקש הרשאה