JoVE Logo

Sign In

In This Article

  • Summary
  • Abstract
  • Introduction
  • Protocol
  • תוצאות
  • Discussion
  • Disclosures
  • Acknowledgements
  • Materials
  • References
  • Reprints and Permissions

Summary

אנו מציגים חבילת תוכנה עם ממשק משתמש גרפי לחוקרים ללא ניסיון בקידוד כדי לדרג שלבי שינה בעכברים עם הורדה ותפעול פשוטים.

Abstract

ניקוד שלב השינה במכרסמים הוא תהליך זיהוי שלושת השלבים: שינה עם תנועות עיניים לא מהירות (NREM), שנת תנועות עיניים מהירות (REM) והתעוררות. ניקוד שלב השינה הוא חיוני לחקר מדדים והשפעות ספציפיים לשלב השינה.

דפוסי השינה במכרסמים שונים מאלה שבבני אדם, ומאופיינים באפיזודות קצרות יותר של NREM ו-REM המשולבות זו בזו על ידי ערות, והניקוד הידני המסורתי של שלבי השינה על ידי מומחים אנושיים גוזל זמן. כדי להתמודד עם בעיה זו, מחקרים קודמים השתמשו בגישות מבוססות למידת מכונה כדי לפתח אלגוריתמים לסיווג אוטומטי של שלבי שינה, אך מודלים בעלי ביצועים גבוהים עם יכולת הכללה רבה לרוב אינם זמינים לציבור / ללא עלות או ידידותיים למשתמש עבור חוקרי שינה שאינם מיומנים.

לכן, פיתחנו אלגוריתם LightGBM מבוסס למידת מכונה שאומן עם מערך נתונים גדול. כדי להפוך את המודל לזמין לחוקרי שינה ללא ניסיון בקידוד, פותח כלי תוכנה בשם IntelliSleepScorer (גרסה v1.2- הגרסה החדשה ביותר) המבוסס על המודל, הכולל ממשק משתמש גרפי קל לשימוש. בכתב יד זה, אנו מציגים הוראות שלב אחר שלב לשימוש בתוכנה כדי להדגים כלי ניקוד אוטומטי נוח ויעיל של שלב השינה בעכברים לחוקרי שינה.

Introduction

ניקוד שלב השינה במכרסמים הוא ההליך לזיהוי שלושת השלבים: שינה ללא תנועת עיניים מהירה (NREM), שנת תנועות עיניים מהירות (REM) והתעוררות2. במכרסמים, NREM מאופיין בפעילות שרירים מופחתת, נשימה איטית וסדירה, ירידה בקצב הלב ותנודות בתדר נמוך של גלי המוח. REM במכרסמים, בדומה לבני אדם, מראה אטוניה של שרירים, הפעלת EEG ותנועות עיניים מהירות, אם כי המופע של חלימה חיה פחות ברור במכרסמים בהשוואה לבני אדם 2,3. מצב ה"ערות" אצל מכרסמים מתאפיין בפעילות מוחית לא מסונכרנת עם גלים בתדירות גבוהה, באמפליטודה נמוכה, טונוס שרירים מוגבר והתנהגות פעילה, כגון טיפוח וחקירה4. ניתן לזהות את שלושת השלבים הללו על ידי בדיקת אותות אלקטרואנצפלוגרם (EEG) ואלקטרומיוגרמה (EMG)5.

מודלים אוטומטיים של ניקוד שלב השינה במכרסמים זקוקים מאוד. ראשית, ניקוד ידני של שלב השינה על ידי מומחים אנושיים דורש עבודה רבה וגוזל זמן. שנית, דפוסי השינה במכרסמים שונים מאלה שבבני אדם ויש להם יותר אפיזודות מקוטעות של NREM ו-REM במרווחים של התעוררות, בסביבות 10 דקות, לעומת 60-120 דקות בבני אדם6. לכן, זיהוי פרקי זמן קצרים אלה במהלך ניקוד ידני הוא מאתגר. מאז שנות ה-60 נעשו ניסיונות רבים לפתח מערכת ניקוד אוטומטית של נתוני שינה של מכרסמים7. למרות שקיימות שיטות אוטומטיות רבות לניקוד שינה של מכרסמים, הביצועים שלהם נעים בין 8,9,10,11,12,13,14,15,16,17,18. חשוב לציין, רוב המודלים בעלי הביצועים הגבוהים עם יכולת הכללה גבוהה אינם זמינים לציבור (חלקם זקוקים לבקשות מיוחדות ממפתחים) או שאינם נטולי עלות לחוקרי שינה.

לכן, כדי למלא את הפער הטכנולוגי הנוכחי, פיתחנו מודל מבוסס למידת מכונה באמצעות מערך נתונים גדול של 5776 שעות של אותות EEG ו-EMG מ-519 הקלטות על פני 124 עכברים עם אלגוריתם LightGBM1. ה-lightGBM משתמש בגישה של הגברת שיפוע כדי לבנות עצי החלטה19. ב- Wang et al., 2023, מודל LightGBM (המורכב מלמעלה מ- 8000 עצי החלטה) השיג דיוק כולל של 95.2% וקאפה של כהן של 0.91, אשר השיג ביצועים טובים יותר משני מודלים בסיסיים בשימוש נרחב כגון מודל הרגרסיה הלוגיסטית (דיוק = 93.3%) ומודל היער האקראי (דיוק = 94.3%, קאפה = 0.89). הביצועים הכוללים של המודל הציגו גם ביצועים דומים לאלה של מומחים אנושיים. חשוב מכל, הוכח כי המודל הוא בעל יכולת הכללה ואינו מותאם יתר על המידה לנתוני האימון המקוריים1: 1) הוא הפגין ביצועים טובים (דיוק > 89%) בשני מערכי נתונים עצמאיים אחרים הזמינים לציבור, ממילדינוביץ' ועמיתיו11, עם תדרי דגימה שונים ואורכי תקופה; 2) ביצועי המודל אינם מושפעים ממחזור האור/חושך של עכברים; 3) מודל LightGBM שונה הפגין ביצועים טובים על נתונים שהכילו רק אלקטרודת EEG אחת ואלקטרודת EMG אחת עם קאפה ≥ 0.89; 4) עכברי בר ועכברים מוטנטיים שימשו לבדיקה וביצועי המודל היו מדויקים. זה מצביע על כך שהמודל יכול לדרג שלבי שינה עבור עכברים עם רקע גנטי שונה.

על מנת להנגיש מודל זה לחוקרי שינה שאולי אין להם מומחיות בקידוד, פיתחנו את IntelliSleepScorer, כלי תוכנה ידידותי למשתמש עם ממשק אינטואיטיבי מבחינה חזותית. התוכנה יכולה להפוך באופן מלא את הליך ניקוד השינה בעכברים. הוא מפיק תצוגות חזותיות אינטראקטיביות של האותות, ההיפנוזה וערכי Shapley Additive exPlanations (SHAP) מתוך קלט קובץ תבנית נתונים אירופית (EDF)/EDF+. גישת הערך SHAP, המבוססת על תורת המשחקים השיתופית, משפרת את יכולת הפרשנות של מודלים של למידת מכונה20. המודל מציע ערכי SHAP גלובליים וערכי SHAP ברמת התקופה, וחושף כיצד ערכי תכונות שונים תורמים להחלטת הניקוד של המודל הכולל ועבור כל תקופה. תוכנית מתקדמת זו מפחיתה באופן משמעותי את הזמן והמאמץ הנדרשים לניקוד שלב השינה בעכברים תוך הבטחה שניתוח במורד הזרם יכול להסתמך על תוצאות מדויקות ביותר. בכתב יד זה, אנו מציגים שימוש שלב אחר שלב ב- IntelliSleepScorer (v1.2) עם מספר עדכונים בגרסה 1.0, כולל אפשרות להפעיל ניתוח SHAP בנפרד מחיזוי דפוסי שינה, אורך תקופה מתכוונן למשתמש עבור ניקוד שלב שינה, ותכונת תיקון ידני של שלב השינה המשולבת בממשק המשתמש הגרפי.

Protocol

מחקר זה השתמש בנתונים שנאספו מניסויי in vivo בעכברים. במחקר לא נערכו ניסויים בבני אדם. כל הניסויים בבעלי חיים אושרו על ידי הוועדה המוסדית לטיפול ושימוש בבעלי חיים במכון ברוד. כל הניסויים בוצעו בהתאם להנחיות ולתקנות הרלוונטיות. הנחיות ARRIVE אינן ישימות למחקר זה מכיוון שהמוקד של מחקר זה הוא לפתח מודלים של למידת מכונה במקום להשוות בין קבוצות טיפול שונות.

1. הכנת נתונים

הערה: תאימות נתונים: הנתונים המוקלטים יכולים להיות בעלי קצב דגימה גבוה מ- 40 הרץ. אין צורך לסנן את האות מכיוון שהתוכנה מסננת את אותות ה- EEG וה- EMG בשלב הראשון. דגמי LightGBM פותחו ונבדקו באמצעות נתונים מעכברים. אין ראיות לגבי הביצועים של דגמי LightGBM בסוגים אחרים של חיות מעבדה. אלקטרודות ההקלטה צריכות להיות ממוקמות בקליפת המוח הקדמית ובקליפת המוח הקודקודית, או בכל אחד מהמקומות אם נרשמת רק תעלת EEG אחת.

  1. סידור ודרישה בפורמט EDF/EDF+
    הערה: התוכנה המשמשת במחקר זה קוראת רק קבצי EDF/EDF+ באמצעות חבילת MNE-Python. יש להחיל את מפרט EDF/EDF+ הסטנדרטי כדי ליצור את קובצי EDF/EDF+ . בנוסף למפרט הסטנדרטי, ודא שהביאורים EDF/EDF+ מקודדים ב-UTF-8. אחרת, יישום התוכנה יקרוס.
    1. המר קובץ אחר (קובץ שאינו קובץ EDF/EDF+ ) לפורמט EDF/EDF+ באמצעות כלים מקוונים חינמיים.
      הערה: אין דרישה למסנן המכשיר בעת קבלת אותות EEG ו- EMG. כל עוד המשתמשים דוגמים את נתוני ה-EEG וה-EMG שלהם בתדר של 40 הרץ ומעלה, התוכנה תפעל כראוי. הסיבה לכך היא שבשלב העיבוד המקדים הראשוני, האותות עוברים סינון פסים בין 1 הרץ ל -40 הרץ. סינון פסים זה משולב בצנרת העיבוד מראש של התוכנה, ומבטל את הצורך של המשתמשים לבצע כל עיבוד אותות נוסף.
  2. ישנם שני מודלים בתוך התוכנה עבור ניקוד. האחד הוא LightGBM-2EEG, והשני הוא LightGBM-1EEG. דגם LightGBM-2EEG מיועד להקלטת נתונים בעלי 2 ערוצי EEG וערוץ EMG אחד. בצע את השלבים הבאים בהתאם לדגם.
    1. ארגן קבצי נתונים עבור LightGBM-2EEG באופן ספציפי בסדר הבא: 1) ערוץ EEG שנרשם באזור הקודקוד; 2) ערוץ EEG שנרשם באזור הקדמי; 3) ערוץ EMG. LightGBM-1EEG מיועד לנתונים המכילים רק ערוץ EEG אחד (מיקום אלקטרודה באזור הקודקודי או המצחי) וערוץ EMG אחד.
    2. ארגן את הערוצים בקובצי EDF/EDF+ עבור LightGBM-1EEG בסדר הבא: 1) ערוץ EEG; 2) ערוץ EMG.

2. הורדת IntelliSleepScorer עבור משתמשי Windows, Mac ו- Linux

  1. עבור משתמשי Windows, קובץ הפעלה של Windows עבור התוכנה זמין באמצעות PyInstaller. מצא את הקישור להורדה בדף המחקר של קבוצת Pan https://sites.broadinstitute.org/pan-lab/resources. עבור משתמשי MacOS או Linux, השתמש בקוד המקור במאגר GitHub https://github.com/broadinstitute/IntelliSleepScorer כדי להפעיל את התוכנה.
  2. גש לשני נתוני דוגמה מוקלטים כדי לבדוק את התוכנית שנשמרה כקבצי EDF על ידי הורדתם דרך מאגר GitHub.
  3. מאגר קוד המקור אינו כולל את תיקיית הדגמים עקב מגבלות גודל. במקום זאת, הורד models.zip, פתח את דחיסתו והעתק את תיקיית הדגמים בתוך המאגר כדי שהתוכנית תוכל לפעול. אחרת, התוכנה תקרוס עקב קבצי מודל חסרים.

3. זרימת עבודה והשקה ותפעול של תוכניות

  1. הפעל את IntelliSleepScorer
    1. כדי להפעיל את התוכנה ב- Windows, לחץ פעמיים על IntelliSleepScorer.exe הממוקם בתיקיית השורש. כדי להפעיל את התוכנה ב- MacOS או Linux, פתח אמולטור מסוף, שנה את הספרייה לתיקיית השורש של התוכנה ולאחר מכן הפעל את התוכנה באמצעות הפקודה: python3 IntelliSleepScorer.py.
  2. לאחר פתיחת התוכנה, לחץ על Select EDF/EDF+ File(s) כדי לבחור את הקבצים המיועדים לניקוד. אם הקבצים נבחרו בטעות, לחץ על לחצן נקה כדי לנקות את רשימת הקבצים שנבחרו.
    הערה: כברירת מחדל, התוכנה מקודדת את שלבי השינה כ-Wake:1, NREM:2 ו-REM:3 בקובצי ניקוד הפלט. אורך תקופת ברירת המחדל מוגדר על 10 שניות. הגרסה הנוכחית (v1.2) של ממשק המשתמש הגרפי מאפשרת למשתמשים לשנות קידודי שלבים או אורכי תקופה ל- 4 שניות, 10 שניות או 20 שניות באמצעות התפריט הנפתח.
  3. בחר את אורך התקופה הרצוי. השתמש בתפריט הנפתח שסופק כדי לבחור את אורך התקופה המיועד מבין אפשרויות של 4 שניות, 10 שניות ו- 20 שניות עבור ניקוד שלב השינה.
  4. בחר את המודל שישמש לניקוד שינה. LightGBM-2EEG מיועד לקובצי נתונים עם שני ערוצי EEG וערוץ EMG אחד, ואילו LightGBM-1EEG מיועד לנתונים עם ערוץ EEG אחד וערוץ EMG אחד.
  5. לפני הפעלת חיזוי שלב השינה, כלול את חישוב SHAP הנוסף המסייע להסביר את תוצאות חיזוי שלב השינה. כדי לעבד את חישוב SHAP, סמן את תיבת הסימון Run/Plot SHAP . חישוב SHAP דורש בערך 5-10 דקות לעבד.
  6. לחץ על ניקוד כל הקבצים. המודל מדרג באופן אוטומטי את כל קובצי EDF/EDF+ ומחשב את ערכי SHAP הכלליים והתקופתיים כדי לפרש את החלטות הניקוד ברשימה, אם נבחר לעשות זאת.
    הערה: במהלך תהליך הניקוד, המודל יוצר את הקבצים הבאים ושומר אותם באותה תיקייה שבה ממוקמים קובצי EDF/EDF+ . המודל משתמש בקבצים אלה כדי להתוות את ערכי SHAP הכלליים ואת ערכי SHAP של תקופה.

    "שם קובץ EDF/EDF+ }_{model_name}_features.csv"; קובץ זה מאחסן את כל ערכי התכונות שחולצו.
    "שם קובץ EDF/EDF+ }_{model_name}_scores.csv"; קובץ זה מאחסן את שלבי השינה החזויים.
    "שם קובץ EDF/EDF+ }_{model_name}_rs_100hz.npy"; קובץ זה מאחסן עותק של האותות שנדגמו מחדש/נדגמו לאחור (100Hz). כדי לשפר את מהירות התצוגה החזותית, המודל משתמש באות שהורד בדגימה במקום באות המקורי בעת התוויית האות.
    "שם קובץ EDF/EDF+ }_{model_name}explainer. מלפפון חמוץ"; "{EDF/EDF+ שם קובץ}{model_name}shap_500samples.pickle"; "{EDF/EDF+ שם קובץ}{model_name}_indicies_500samples.npy";
  7. לאחר סיום תהליך ניקוד השינה, לחץ על האפשרות Visualize the Selected File כדי להמחיש את אותות EEG/EMG והיפנוגרמה המיושרת בזמן עם האותות.
    1. הניקוד של הקובץ שנבחר שוב לפני התצוגה החזותית אם אורך התקופה משתנה.

4. ניווט בתוצאות הניקוד

  1. לחץ על לחצני הניווט שסופקו כדי לנוע קדימה ואחורה כדי לראות נתוני תקופה שונים.
  2. אם נבחר לבצע חישוב SHAP, הצג הן את ערכי SHAP הכלליים והן את ערכי SHAP ברמת התקופה. לחץ באמצעות לחצן העכבר הימני על תקופה כדי להתוות את ערכי SHAP ברמת התקופה.
    הערה: יידרשו מספר שניות כדי לעדכן את התוויית SHAP ברמת התקופה. איור 1 מציג את סקירת דף ממשק המשתמש הגרפי לאחר הפעלת החיזוי עבור קובץ Example-1 EDF/EDF+ עם מודל 1_LightBGM-2EEG.

5. פרשנות של שלבי השינה המנוקדים היפנוזה

הערה: ישנן 4 שורות בהיפנוגרמה (איור 2). השורה העליונה היא התוצאות החזויות. 3 השורות התחתונות הן נתונים גולמיים של 2 ערוצי EEG ו-1 EMG, בהתאמה. בשורה העליונה, כתום מרמז על שלב ההתעוררות , כחול מרמז על שלב ה-NREM , ואדום מרמז על שלב ה-REM בכל תקופה.

  1. כדי לשנות את מספר התקופות להצגה, לחץ על תיבת התפריט בצד ימין של בחר מספר תקופות להצגה ובחר ערך רצוי. באיור 2 נבחרו 100 תקופות. לכן, רק 100 תקופות מוצגות בתרשים החיזוי של שלב השינה. בחר מספר קטן יותר בתפריט הנפתח כדי להגדיל את התצוגה.
  2. הפס השקוף הוורוד משמאל לאיור 2 מציין את המיקום הנוכחי של התקופה. לחץ לחיצה שמאלית על מקום כלשהו בהיפנוגרמה כדי לעבור לתקופה אחרת, או פשוט לחץ על עבור לתקופה והזן מספר מסוים של תקופות שיש לצפות בהן. לחץ באמצעות לחצן העכבר הימני על התקופה שנבחרה כדי ליצור את התוויית SHAP של התקופה אם המשתמש הפעיל את הפונקציה SHAP.

6. תיקון ידני של שלבי השינה החזויים בממשק המשתמש הגרפי (אופציונלי)

הערה: אם לא נצפתה חריגה או אם לא נדרש דיוק גבוה במיוחד לחיזוי שלב REM, אין צורך באימות ידני.

  1. לחץ לחיצה שמאלית על תקופה בתרשים חיזוי שלב השינה (העלילה העליונה) כדי לבחור תקופה מסוימת. המודל החזוי שלב של התקופה הנבחרת מוצג בצד ימין של הטקסט. כדי לשנות באופן ידני את השלב החזוי באותה תקופה, לחץ על הווידג'ט ובחר שלב חדש מהאפשרויות Wake, NREM ו - REM בתפריט הנפתח.
  2. השלבים שתוקנו על-ידי המשתמש מסומנים בקווים מקווקווים מעל העלילה המקורית (איור 3). סגור את ממשק המשתמש הגרפי (GUI), וקובץ חדש עם תוצאות חיזוי מתוקנות ייווצר באופן אוטומטי באותה תיקיה.
    1. כדי לפתוח שוב קובץ שנשמר עם ניקוד בממשק המשתמש הגרפי, ודא שהגדרת אורך התקופה והדגם שנבחר תואמים לאלה ששימשו בעת עיבוד קובץ ה- EDF לראשונה כדי שתוכל לפתוח אותו מחדש. כל המידע שהשתנה/הבקיע בעבר ייטען במהירות.

תוצאות

ישנן שלוש חלקות (רק העלילה העליונה אם ערכי SHAP לא הופעלו) שנוצרו בממשק המשתמש הגרפי לאחר ניקוד שלב השינה: העלילה העליונה מציגה ערוצי EEG ו- EMG עם היפנוגרמה של חיזוי שלב השינה. העלילה האמצעית מציגה ערכי SHAP של תקופה. התרשים התחתון מציג ערכי SHAP גלובליים (איור 1).

ישנם 4 סוגים של נתונים המוצגים בתרשים ההיפנוזה של חיזוי שלב השינה (איור 2). השורה העליונה היא התוצאות החזויות. 3 השורות התחתונות הן נתונים גולמיים של 2 ערוצי EEG ו-1 EMG, בהתאמה. בשורה העליונה, כתום מרמז על שלב "Wake", כחול מרמז על שלב "NREM", ואדום מרמז על שלב "REM" בכל תקופה. תקופת הדוגמה הנוכחית היא בשנת 1305 והיא נמצאת בשלב של "התעוררות" מכיוון שסרגל המיקום הוורוד חופף לקו בצבע כתום.

באיור 3, שלב מתוקן על-ידי המשתמש מסומן בקווים מקווקווים על גבי המקור. הקו המקווקו האדום מציין ששלב השינה השתנה מ- "Wake" ל- "REM".

באיור 4, מוצגת תוצאה לדוגמה של תקופה 1305 בקובץ לדוגמה 1. ציר Y של התוויית Epoch SHAP מציג את 10 התכונות המובילות עם ערכי SHAP המוחלטים הגבוהים ביותר עבור התקופה שנבחרה. ציר ה- x מציג את ערכי SHAP, המציינים את התרומה של כל תכונה לחיזוי בהשוואה לחיזוי הממוצע. ערך SHAP החיובי מצביע על תרומה חיובית לתחזית, ולהיפך. לתכונה "emg_abs_max" יש ערך SHAP חיובי מאוד ברמת התקופה עבור Wake, מה שמצביע על כך ש-"emg_abs_max" מהתקופה שנבחרה מגדיל את הסבירות שהתקופה שנבחרה תקבל ניקוד כ-"Wake" (איור 4). זה סביר מבחינה פיזיולוגית מכיוון שמשרעת EMG גדולה מסמלת תנועות פעילות, ובכך מציינת את שלב ה"התעוררות".

בדוגמה של תרשים SHAP גלובלי (איור 5), כל נקודה בתרשים נחיל p מייצגת מדגם אחד של נתונים. ציר ה-y של החלקות מציג את 10 התכונות המובילות עם ערכי SHAP הכלליים המוחלטים הגבוהים ביותר שחושבו מתוך 500 תקופות שנדגמו באופן אקראי. ציר ה- x מציג את ערכי SHAP, המציינים את התרומה של כל תכונה לחיזוי בהשוואה לחיזוי הממוצע. בשונה מהתוויית SHAP התקופתית, לתרשים SHAP הכללי יש שני ממדים: ערך ה- x של כל נקודה ועוצמת צבע הנקודה. ערך SHAP חיובי של ציר x מציין תרומה חיובית לתחזית, ולהיפך. דוגמאות עם צבע אדום כהה יותר הן בעלות ערכי תכונות גבוהים יותר. על ידי בחינה חזותית של מתאמי המיקום והצבע של 500 הנקודות עבור כל תכונה, ניתן לפרש כיצד LightGBM מקבל החלטות בהתבסס על הערכים של כל תכונה. בהתוויית SHAP הגלובלית "Wake", כאשר ערכי SHAP עבור "emg_abs_max" גדלים משליליים יותר לחיוביים יותר, צבע הנקודות נעשה כהה יותר. זה מצביע על כך שהסבירות המוגברת להיות חזוי כ"התעוררות" מתואמת באופן חיובי עם הערך המוגבר של "emg_abs_max". ראוי גם לציין כי תכונות עם התפלגות רחבה יותר של ערכי SHAP (ערכים מוחלטים גבוהים יותר) לתרום יותר לחיזוי על ידי המודל. לדוגמה, בתרשים הכללי של NREM SHAP (איור 5) יש פיזור רחב של נקודות עבור התכונה "eeg2_gamma_delta_ratio". ערך SHAP שלילי מאוד של התכונה מקטין את הסבירות שהמודל יקבל ניקוד כשלב "NREM".

figure-results-3039
איור 1: סקירה כללית של דף GUI לאחר הפעלת חיזוי עבור קובץ Example-1 EDF/EDF+ עם מודל 1_LightBGM-2EEG. גם חיזוי שלב השינה וגם חישוב SHAP מקבלים ניקוד. העלילה העליונה מציגה ערוצי EEG ו- EMG עם היפנוזה של חיזוי שלב השינה. העלילה האמצעית מציגה ערכי SHAP של תקופה. התרשים התחתון מציג ערכי SHAP כלליים. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

figure-results-3682
איור 2: היפנוגרמה לחיזוי שלב השינה מקובץ EDF/EDF+ לדוגמה-1. ישנם 4 נתונים המוצגים בחלקה. השורה העליונה היא התוצאות החזויות. 3 השורות התחתונות הן נתונים גולמיים של 2 ערוצי EEG ו-1 EMG, בהתאמה. בשורה העליונה, כתום מרמז על שלב "Wake", כחול מרמז על שלב "NREM", ואדום מרמז על שלב "REM" בכל תקופה. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

figure-results-4321
איור 3: היפנוגרמה לחיזוי שלב השינה מקובץ Example-1 EDF/EDF+ עם תיקון ידני שבוצע על-ידי המשתמש. תקופה 1305 שונתה משלב "Wake" לשלב "REM" כהדגמה של תיקון ידני של שלב השינה בתוך ממשק המשתמש הגרפי. הקו האדום המקווקו מציין את שלב השינה "REM" שהשתנה על-ידי המשתמש. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

figure-results-4926
איור 4: ערכי Wake, NREM ו- REM Epoch SHAP עבור קובץ Example-1 EDF/EDF+ באפוס 1305. ציר y של התוויית Epoch SHAP מציג את 10 התכונות המובילות עם ערכי SHAP המוחלטים הגבוהים ביותר עבור התקופה שנבחרה. ציר ה- x מציג את ערכי SHAP, המציינים את התרומה של כל תכונה לחיזוי בהשוואה לחיזוי הממוצע. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

figure-results-5557
איור 5: ערכי Wake, NREM ו- REM Global SHAP עבור קובץ Example-1 EDF/EDF+ . כל נקודה בתרשים נחיל ה-p מייצגת מדגם אחד של נתונים. ציר ה-y של החלקות מציג את 10 התכונות המובילות עם ערכי SHAP הכלליים המוחלטים הגבוהים ביותר שחושבו מתוך 500 תקופות שנדגמו באופן אקראי. ציר ה- x מציג את ערכי SHAP, המציינים את התרומה של כל תכונה לחיזוי בהשוואה לחיזוי הממוצע. ציר ה- x של ערך SHAP הכללי כולל שני ממדים: ערך ה- x של כל נקודה ועוצמת צבע הנקודה. ערך SHAP חיובי של ציר x מציין תרומה חיובית לתחזית, ולהיפך. דוגמאות עם צבע אדום כהה יותר הן בעלות ערכי תכונות גבוהים יותר. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

Discussion

מאמר זה מציג כיצד להשתמש בממשק המשתמש הגרפי IntelliSleepScorer (v1.2) כדי לדרג באופן אוטומטי את שלבי השינה של עכברים וכיצד למנף ערכים/תרשימים של SHAP כדי להבין טוב יותר את ציוני שלב השינה שנוצרו על-ידי המודל.

שיקול חשוב בעת השימוש בתוכנה הוא תאימות נתונים. הנתונים הפנימיים ששימשו במחקר זה היו מוגבלים לאלקטרודות שמוקמו באזור המצחי והקודקוד. במערך הנתונים הבלתי תלוי של מילדינוביץ' ועמיתיו11, למרות קואורדינטות אלקטרודות שונות עבור אזורים אלה, התוכנה שמרה על ביצועים משביעי רצון. בעוד שהתוכנה עשויה להיות ישימה לאזורי מוח אחרים, לא ערכנו בדיקות כדי לאשר זאת. לכן, איננו יכולים לקבוע כי אין מגבלות לגבי מיקום האלקטרודות. עם זאת, אנו ממליצים למשתמשים לבדוק אותו אם יש להם הקלטות מאזורים אחרים.

משך הזמן של הקלטות EEG / EMG לניתוח שלב השינה משתנה בהתאם למטרות הספציפיות של המחקר. בדרך כלל, הקלטות נמשכות 12 שעות, ומכסות את הפאזה הבהירה או החשוכה, או 24 שעות, המקיפות את שני השלבים ביום אחד. הקלטות של 12 שעות ו-24 שעות משמשות בדרך כלל ללכידת דפוסי שינה-ערות ומקצבים צירקדיים ברורים. הבדיקה על המודל מראה כי ניקוד שלב השינה הוא אמין ומדויק עבור מפגשים מוקלטים של 12 שעות ו -24 שעות. לא ידוע על גבול עליון למשך ההקלטות.

שני שלבים ראויים לציון בפרוטוקול התוכנה הם עיבוד מקדים של נתונים ואימות ידני. כדי לשפר את יכולת ההכללה של המודלים שהוכשרו, אפשרנו רעש וממצאים בנתוני הקלט ויישמנו אמצעי בקרת איכות מינימליים. בקרת האיכות שביצענו נועדה למנוע הקלטות גרועות עקב אובדן אותות. אובדן אותות נגרם בדרך כלל על ידי בעיות חיבור, כגון אלקטרודות משתחררות או נופלות. אובדן אותות עלול לגרום לשגיאות בציוני השינה שנוצרו על ידי התוכנה. לדוגמה, קו שטוח בערוץ EMG של עכבר ער עקב אלקטרודת EMG רופפת עשוי לחלוק את אותה תכונה כמו שלב חוסר התנועה / השינה של העכברים, מה שעשוי להוביל לחיזוי "NREM" או "REM" על ידי מודלים LightGBM. לשם השוואה, השתמשנו בקריטריונים הבאים כדי להחריג באופן אוטומטי הקלטות עם כמות משמעותית של אובדן אות: 1) המשרעת של כל אות EEG היא פחות מ 1 μV עבור לפחות 50% ממשך ההקלטה, או 2) המשרעת של אות EMG היא פחות מ 1 pV לפחות 50% ממשך ההקלטה. המשתמשים צריכים ליישם קריטריוני בקרת איכות משלהם המבוססים על הגדרת הניסוי ומערכת ההקלטה שלהם. רעשי קו הנגרמים על ידי זרם חילופין ממוקמים בדרך כלל ב 50 הרץ או 60 הרץ. רעשי קו אלה יוסרו במהלך שלב מסנן הפסים (1-40 הרץ) המיושם בתוכנה. לכן, אין צורך שמשתמשים יעבדו מראש את רעשי הקו לפני הזנת הנתונים לתוכנה. רעשים קלים או גורמים מפריעים, כגון תנועות גוף, נלקחו בחשבון במהלך פיתוח המודל1. הגישה בה נעשה שימוש במחקר זה מבטיחה כי יכולת ההכללה של המודל יכולה לסבול את הממצאים הקטנים הללו שאינם משפיעים באופן משמעותי על תוצאות ההיערכות הסופיות לשינה. הפורמט, איכות ההקלטה והרצף הארגוני של קבצי הנתונים של EDF הם כולם רכיבים קריטיים כדי לייעל את הביצועים של מודל מאומן מראש זה.

לצורך אימות ידני, בהתחשב בכך שמודל LightGBM הפגין ביצועים גרועים (ציון REM F1 < 0.6) בכמה הקלטות, אנו ממליצים למשתמשים לאמת את שלבי השינה שנוצרו על ידי המודל אם ניקוד מדויק של שלב REM הוא קריטי. עבור מחקרים המתמקדים בפיזיולוגיה של שלב התעוררות או NREM, מודל LightGBM עדיין תומך בצנרת אנליטית חזקה מאוד ואוטומטית לחלוטין. פירוש ערכי SHAP יכול להפוך לכלי מצוין בשילוב עם אימות ידני כדי לאשר את הדיוק של התוצאות שנוצרו על-ידי תוכנה. SHAP היא גישה המשתמשת בתורת המשחקים כדי להסביר את התפוקה של מודלים של למידת מכונה. הוא מחבר הקצאת אשראי אופטימלית עם הסברים מקומיים תוך שימוש בערכי שפלי קלאסיים וההרחבות הקשורות אליהם20. לדוגמה, בתרשים ערכי SHAP של NREM גלובליים (איור 4), אם נקודה אדומה כהה מופיעה לפתע בצד הימני הקיצוני של התכונה 'eeg2_gamma_delta_ratio', הדבר עשוי להצביע על אנומליה באותה תקופה. הסיבה לכך היא שהנקודה לדוגמה של התקופה המבודדת חורגת מכל מערך הנתונים. פירוש עלילות SHAP יכול גם לספק למשתמשים הסבר ברור וידידותי למשתמש על הניקוד של שלבי השינה. לדוגמה, עלילות SHAP של התקופה מספקות מידע על התכונות שהן הגורם המכריע ביותר בניקוד שלב השינה. היפנוגרמה לחיזוי תוצאות (איור 2) מספקת גם מידע משמעותי על תוצאות החיזוי. במקרים בהם שלבי השינה המנוקדים בהיפנוגרמה מפגינים מעברים תכופים בין שלבי "ערות" ו"REM", דבר שאינו תקין מבחינה פיזיולוגית, מומלץ לבצע הערכה מקיפה של הניקוד וערכי SHAP המתאימים כדי לוודא את איכות התוצאות. בעזרת תרשימי SHAP והיפנוגרמה, חוקרים יכולים לזהות במהירות כל טעות ניבוי במהלך הניקוד של שלבי השינה. עם זאת, בעוד שערכי SHAP מסבירים כיצד המודל מבצע את התחזיות, הם אינם מתכוונים בהכרח לכך שהתחזיות או האופן שבו המודל מבצע תחזיות מסוימות נכונות. מטרת הצגת ערכי SHAP היא לסייע למשתמשים להבין את תהליך הניקוד של שלב השינה ולאפשר למשתמשים לזהות במהירות כל שגיאה על ידי בחינת הלוגיקה של מודל LightGBM.

ישנן שתי תכונות בולטות בגרסה הנוכחית (v1.2) של הדגם. ראשית, בעקבות הפסקה הקודמת, אימות / תיקון ידני יכול להיות מייגע מאוד ולא נוח אם משתמשים צריכים לחזור לקבצי CSV כדי לבצע שינויים, במיוחד עבור הקלטות ארוכות. לכן, אנו מציעים תכונת תיקון ידנית המשולבת ישירות בממשק המשתמש הגרפי עבור משתמשים כדי לשנות את שלב השינה הניקוד בכל תקופה. לאחר שהמשתמש לוחץ על תקופה מסוימת, שלב השינה המבקיע של "Wake", "REM" או "NREM" יוצג בתפריט הנפתח בחלק העליון של סרגל ממשק המשתמש הגרפי. אם המשתמש מעוניין לשנות את השלב מאחד למשנהו, הוא יכול פשוט לבחור שלב אחר מהתפריט הנפתח, וייווצר קובץ ניקוד חדש שתוקן ידנית על ידי המשתמשים. נוסף על כך, במקום אורך תקופה קבוע סטנדרטי של 10 שניות המסופק לניתוח, אנו מספקים אפשרות להתאמת אורך התקופה בממשק המשתמש הגרפי כדי לספק את הצרכים הניסיוניים הספציפיים של חוקרי שינה שונים. האפשרויות כיום הן תקופות של 4, 10 שניות ו-20 שניות, שכולן נפוצות בקרב חוקרי שינה. אף על פי שמודל זה אומן עם נתונים פנימיים של תקופות 10-s, הביצועים של המודל בבדיקות עצמאיות של נתונים של תקופות 4-s ממעבדות שונות היו דומים לאלה של מומחים אנושיים בכל שלבי השינה1. משתמשים חייבים להיות זהירים בעת יישום תקופות של 20 שניות מכיוון ש 1) ניקוד עכברים ישנים / מתעוררים עם תקופות של 20 שניות עלול להחמיץ אירועים קצרים מאוד כגון עוררות חולפת; 2) תקופות של 20 שניות נוטות יותר להקיף שלבים מעורבים בכל תקופה8.

יהיה זה תובנה להשוות מודל זה עם שיטות ניקוד שלב שינה אוטומטיות אחרות הקיימות עבור המשתמשים. מלבד IntelliSleepScorer, ישנם כמה מודלים מפותחים אחרים עבור ניקוד אוטומטי של שלב השינה עם דרגות שונות של דיוק, מורכבויות ויעילות 8,9,10,11,12,13,14,15,16,17,18 . המודל המשמש במחקר זה משתמש באלגוריתם LightGBM כדי להשיג דיוק גבוה בניקוד שלבי השינה, בדומה למודלים קיימים. בהערכה שלנו, IntelliSleepScorer הראה דיוק כולל של 95.2%, אשר משתווה למדדי הביצועים שדווחו עבור מודלים דומים כגון MC-SleepNet8 ו- Sleep-Deep-Learner9. עם זאת, הייחוד האמיתי של IntelliSleepScorer טמון לא רק בדיוק שלו, אלא גם בנגישות וקלות השימוש שלו עבור חוקרים לא מיומנים עם ניסיון מוגבל בקידוד.

MC-SleepNet8, שאומן באמצעות רשתות עצביות עמוקות על מערך נתונים גדול של 4200 עכברים, משיג דיוק ניקוד גבוה של 96.4% וסטטיסטיקת קאפה של 0.94, יותר מרוב השיטות הקיימות. עם זאת, למיטב ידיעתנו, אין תוכנה המבוססת על MC-SleepNet הזמינה לציבור / בחינם עד היום.

Sleep-Deep-Learner9, מקבל ניקוד אוטומטי בעכברים עם ציון F1 של 0.86 לשנת REM, 0.95 לשנת NREM ו-0.97 לשנת ערות. עם זאת, המחברים התייחסו במאמר לכך ש-Sleep-Deep-Learner אינו מתאים לאנשים שאינם בקיאים בניקוד שינה-ערות, מכיוון שהוא דורש תת-קבוצה של תקופות עם ניקוד ידני. IntelliSleepScorer, לעומת זאת, אינו דורש שום מניפולציה ידנית נוספת במהלך ניקוד שלב השינה ויש לו ממשק משתמש גרפי ידידותי מאוד למשתמש עבור כל החוקרים.

Somnivore10 היא מערכת רב-תכליתית ורב-שכבתית המיועדת לניקוד אוטומטי של שלבי ערות-שינה, המיומנת בלמידה ממערכי אימון מוגבלים עם קלט פוליסומנוגרפיה מורכב. הוא פועל ביעילות חישובית מהירה ומדגים הכללה חזקה בנושאים מגוונים, כולל בני אדם, מכרסמים (פראיים וטרנסגניים) ויונים. עם זאת, Somnivore אינו ללא עלות.

SlumberNet11 ו-AccuSleep12 נגישים שניהם ב-Zenodo וב-GitHub, בהתאמה, ובעלי דיוק ניקוד של 97% ו-96.8%. עם זאת, לשני המודלים יש נתוני אימון קטנים יחסית של 9 או 10 עכברים והם לא כללו אימות בדיקה עצמאי. לכן, הביצועים שלהם בעולם האמיתי נשאר לא ידוע.

SPINDLE13 הוא מודל מבוסס אינטרנט נוסף שאומן עם מערך נתונים קטן יותר עם 4-6 עכברים/חולדות הממנפים רשתות עצביות קונבולוציוניות. SPINDLE, שאומת על פני נתונים משלוש מעבדות שינה עצמאיות, השיגה שיעורי הסכמה ממוצעים של 93%-99% עם ניקוד של מומחים אנושיים ממעבדות שונות, המשקף את היכולת האנושית.

לבסוף, Somnotate14 הראה דיוק של 0.97 ± 0.01 וציון F1 משוקלל של 0.97 ± 0.01 כאשר הוערך על מערכי נתונים פנימיים שכללו שש הקלטות של 24 שעות בהתבסס על הקונצנזוס של לפחות שלושה ביאורים ידניים. כאשר נבדק על מערך הנתונים של Somnotate, הביצועים של IntelliSleepScorer ירדו, עם דיוק של 0.75 ± 0.04 וציון F1 משוקלל של 0.73 ± 0.0514. ניתן לייחס ביצועים מופחתים אלה להבדלים במערכי ניסוי או בתנאי הקלטה בין מערכי נתונים. בהתחשב במגוון תרחישי השימוש בעולם האמיתי, אנו ממליצים למשתמשים להעריך את הביצועים של IntelliSleepScorer בערכות הנתונים שלהם, במיוחד אם הגדרות הניסוי או תנאי ההקלטה שלהם שונים באופן משמעותי משלנו. אם ביצועי התוכנה אינם עומדים בציפיות, למשתמשים יש אפשרות לכוונן את המודל שהוכשר מראש עם הנתונים שלהם מכיוון שהפכנו את המודלים והקוד המשמשים לפיתוח לקוד פתוח.

מלבד הדוגמאות של מודלים קיימים שנדונו לעיל, ישנן כמה מערכות היערכות שינה אוטומטיות אחרות שפותחו מהן החוקרים יכולים לבחור בהתאם לצרכים ספציפיים ושונים למחקריהם 15,16,17,18.

בעבודה עתידית, אנו שואפים לפתח/לאמן מודל חדש המייעל את זמן הניקוד האוטומטי של שלבי השינה. נכון לעכשיו, ממשק המשתמש הגרפי מעבד 12 שעות של הקלטות שנדגמו ב- 1000 הרץ תוך כ- 10 דקות במעבד Intel Core i7-8550U @ 1.80 GHz. עם זאת, זמן העיבוד גדל בערך פי 2.5 כאשר מדרגים שלבי שינה עם תקופות 4-s בהשוואה לתקופות ברירת המחדל של 10-s. מודל חדש זה יכול לספק את הצרכים של חלק מהמשתמשים המעוניינים בניקוד שלב שינה אוטומטי מהיר יותר בעכברים. אנחנו גם תמיד מקשיבים למשוב של המשתמשים, וכל תכונה חדשה ניתן להוסיף על פי בקשה.

לסיכום, אנו מספקים תוכנת ממשק משתמש גרפי ללא עלות, זמינה לציבור וידידותית למשתמש, IntelliSleepScorer, כדי ליצור צינור אוטומטי נוח עבור ניקוד שלב השינה של עכברים. בנוסף, הלכנו צעד אחד קדימה והצענו תצוגות חזותיות של ערך SHAP שמסבירות את החלטת הניקוד שהמודל מקבל. משתמשים מנוסים יכולים גם לכוונן את המודל המאומן מראש שלנו עם הנתונים שלהם, בהתחשב בכך שקבצי המודל והסקריפטים לחילוץ התכונות להדרכה/כוונון עדין זמינים כולם לציבור במאגר GitHub. אנו מקווים שמודל זמין זה יוכל לצמצם את הפער הטכנולוגי ולהקל על ההתקדמות מאיסוף נתונים לממצאים חדשים באמצעות מודלים של עכברים במחקר השינה תוך הפחתת עבודה עתירת עבודה.

Disclosures

המחברים מצהירים כי אין ניגוד עניינים.

Acknowledgements

אנו מודים לקרנה יאן וג'ינגוון הו על הניקוד הידני של שלבי השינה וליונה וסונוויק על ההקלטות.

Materials

NameCompanyCatalog NumberComments
Canonical Unbuntu 18.04Canonicalhttps://releases.ubuntu.com/18.04/Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux
Intel Core i7-8550U CPU @ 1.80 GHz 1.99 GHz; RAM: 24 GB Intel Corphttps://www.intel.com/content/www/us/en/products/details/processors/core-ultra.htmlHardware requirment for the software: Both Inte Core listed here have been used to process the data. It takes around 10 min to process 12 h of recording sampled at 1000 Hz for both hardwares. Any similar or superior hardware would yield comparable or better performance.  
Intel Core i7-10610U CPU @1.80 GHz 2.30 GHz; RAM: 16 GBIntel Corphttps://www.intel.com/content/www/us/en/products/details/processors/core-ultra.htmlHardware requirment for the software: Both Inte Core listed here have been used to process the data. It takes around 10 min to process 12 h of recording sampled at 1000 Hz for both hardwares. Any similar or superior hardware would yield comparable or better performance.  
LightGBMMicrosofthttps://lightgbm.readthedocs.io/en/latest/index.htmlMachine learning-based algorithm that was used to train the software. 
MacBook ProApplehttps://www.apple.com/in/macbook-pro/Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux
WindowsMicrosofthttps://www.microsoft.com/en-in/windows/?r=1Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux

References

  1. Wang, L. A., Kern, R., Yu, E., Choi, S., Pan, J. Q. Intellisleepscorer, a software package with a graphic user interface for automated sleep stage scoring in mice based on a light gradient boosting machine algorithm. Sci Rep. 13 (1), 4275(2023).
  2. Astori, S., Wimmer, R. D., Luthi, A. Manipulating sleep spindles--expanding views on sleep, memory, and disease. Trends Neurosci. 36 (12), 738-748 (2013).
  3. Fraigne, J. J., Torontali, Z. A., Snow, M. B., Peever, J. H. Rem sleep at its core-circuits, neurotransmitters, and pathophysiology. Front Neurol. 6, 123(2015).
  4. Huber, R., Deboer, T., Tobler, I. Effects of sleep deprivation on sleep and sleep eeg in three mouse strains: Empirical data and simulations. Brain Res. 857 (1-2), 8-19 (2000).
  5. Brown, R. E., Basheer, R., Mckenna, J. T., Strecker, R. E., Mccarley, R. W. Control of sleep and wakefulness. Physiol Rev. 92 (3), 1087-1187 (2012).
  6. Lacroix, M. M., et al. Improved sleep scoring in mice reveals human-like stages. BioRxiv. 489005, (2018).
  7. Rayan, A., et al. Sleep scoring in rodents: Criteria, automatic approaches and outstanding issues. Eur J Neurosci. 59 (4), 526-553 (2024).
  8. Yamabe, M., et al. Mc-sleepnet: Large-scale sleep stage scoring in mice by deep neural networks. Sci Rep. 9 (1), 15793(2019).
  9. Katsuki, F., Spratt, T. J., Brown, R. E., Basheer, R., Uygun, D. S. Sleep-deep-learner is taught sleep-wake scoring by the end-user to complete each record in their style. Sleep Adv. 5 (1), zpae022(2024).
  10. Allocca, G., et al. Validation of 'somnivore', a machine learning algorithm for automated scoring and analysis of polysomnography data. Front Neurosci. 13, 207(2019).
  11. Jha, P. K., Valekunja, U. K., Reddy, A. B. Slumbernet: Deep learning classification of sleep stages using residual neural networks. Sci Rep. 14 (1), 4797(2024).
  12. Barger, Z., Frye, C. G., Liu, D., Dan, Y., Bouchard, K. E. Robust, automated sleep scoring by a compact neural network with distributional shift correction. PLoS One. 14 (12), e0224642(2019).
  13. Miladinovic, D., et al. Spindle: End-to-end learning from eeg/emg to extrapolate animal sleep scoring across experimental settings, labs and species. PLoS Comput Biol. 15 (4), e1006968(2019).
  14. Brodersen, P. J. N., et al. Somnotate: A probabilistic sleep stage classifier for studying vigilance state transitions. PLoS Comput Biol. 20 (1), e1011793(2024).
  15. Akada, K., et al. A deep learning algorithm for sleep stage scoring in mice based on a multimodal network with fine-tuning technique. Neurosci Res. 173, 99-105 (2021).
  16. Rytkonen, K. M., Zitting, J., Porkka-Heiskanen, T. Automated sleep scoring in rats and mice using the naive Bayes classifier. J Neurosci Methods. 202 (1), 60-64 (2011).
  17. Kam, K., Rapoport, D. M., Parekh, A., Ayappa, I., Varga, A. W. Wavesleepnet: An interpretable deep convolutional neural network for the continuous classification of mouse sleep and wake. J Neurosci Methods. 360, 109224(2021).
  18. Crisler, S., Morrissey, M. J., Anch, A. M., Barnett, D. W. Sleep-stage scoring in the rat using a support vector machine. J Neurosci Methods. 168 (2), 524-534 (2008).
  19. Ke, G., et al. Lightgbm: A highly efficient gradient boosting decision tree. Neural Information Processing Systems. , (2017).
  20. A unified approach to interpreting model predictions. Lundberg, S. M., Lee, S. I. In Proceedings of the 31st International Conference on Neural Information Processing Systems (NIPS'17), , Curran Associates Inc. Red Hook, NY. 4768-4777 (2017).

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Explore More Articles

213NREMREMLightGBM

This article has been published

Video Coming Soon

JoVE Logo

Privacy

Terms of Use

Policies

Research

Education

ABOUT JoVE

Copyright © 2025 MyJoVE Corporation. All rights reserved