איך למצוא את מספר הדוגמאות הדרושות ללמידת מכונה?

מחבר:
בתאריך:

ערכת את הניסוי ומצאת ערך p-value ממש קרוב למשמעותי אבל עדיין לא (לדוגמה, 0.06 בעוד הסף הוא 0.05). יכול להיות שאתה בכיוון הנכון אבל התוצאות לא תומכות במסקנה. אולי זה בגלל שהכוח הסטטיסטי של הניסוי לא מספיק חזק. מה אתה יכול לעשות? לפני שאתה עורך ניסוי נוסף כדאי לך לעשות power analysis כדי לקבוע את גודל המדגם הקטן ביותר שיאפשר לך בסבירות גבוהה לדחות את השערת האפס.

power analysis with g*power

שימוש בגודל המדגם עליו המליץ ה-power analysis, יתן לך מספיק ביטחון שהניסוי הבא שתערוך יוכל לזהות השפעה, במידה וקיימת.

את ה-power analysis נערוך באמצעות התוכנה החינמית והמצויינת g*power.

כוח סטטיסטי statistical power הוא הסיכוי שמבחן יזהה השפעה במידה וקיימת. הערך המקובל הוא 80% לפחות. 

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

כדי לחשב את גודל המדגם שייתן למערך הניסוי מספיק כוח סטטיסטי אנחנו צריכים לדעת את ערך הסף (מכונה גם alpha או p-value), את הכוח הסטטיסטי אליו אנו שואפים ולדעת לפחות בקירוב את מידת ההשפעה (effect size).

  • מקובל שהכוח הסטטיסטי של ניסוי צריך להיות לפחות 80%. מה שאומר שאנחנו מוכנים לסבול שב-20% מהמקרים המבחן לא יזהה השפעה אף שהיא קיימת. 
  • מקובל שערך הסף (alpha) שמעריך את הסיכוי המקסימלי ל-False positive, זיהוי השפעה בלתי קיימת, הוא 5% או פחות במבחן דו-זנבי two tails.
  • את מידת ההשפעה אפשר להעריך מניסוי מקדים או מסקירת הספרות בנושא. 

את מידת ההשפעה מעריכים באמצעות Cohen's d המחושב באמצעות חלוקת הפרש הממוצעים בין קבוצת הניסוי והביקורת בסטיית התקן:

formula to calculate cohen d

  • הנוסחה מניחה סטיית תקן SD שווה בין הקבוצות.

במידה וסטיית התקן שונה, נחשב אותה באופן שמתחשב בסטיית התקן של שתי הקבוצות:

formula to calculate the standard deviation in case that the sample sizes are not equal

  • גודל אפקט d של 0.8 נחשב לגדול, 0.5 בינוני ו-0.2 לקטן. אבל אילו רק כללי אצבע.

 

power analysis הלכה למעשה באמצעות תוכנת g*power

ישנם מחשבונים אונליין שיכולים לעזור בקביעת הכוח של ניסוי. במדריך אדגים power analysis עבור מבחן t-test באמצעות תוכנה חינמית ששמה g*power מכיוון שהיא הנוחה ביותר לעבודה.

את התוכנה הורדתי מאתר https://gpower.hhu.de, התקנתי והרצתי.

g*power first look

מלשונית Tests בוחרים את המבחן הסטטיסטי. יש הרבה אבל לצורך הדוגמה בחרתי במבחן t-test:

select two groups t-test

Test family: t tests

Statistical test: Means: Difference between two independent means (two groups)

נזין את הפרמטרים לתוך השדות Input parameters:

  • Tail(s) - נבחר בהתפלגות דו-זנבית
  • Effect size - נבחר בגודל אפקט בינוני של 0.5
  • err probe α - את ערך הסף נשאיר על 0.95
  • Power - נקבע על ערך מינימלי של 0.8
  • Allocation ratio - הוא היחס בין מספר הדוגמאות בקבוצת הניסוי והמבחן. נשאיר את ברירת המחדל של יחס שווה.

input fields when working with g*power

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

sample size output from g*power

  • בשביל הכוח הסטטיסטי הדרוש לנו נזדקק ל- 64 דוגמאות מכל קבוצה (סה"כ 128 דוגמאות).

 

איך משתנה גודל המדגם עם שינוי הפרמטרים?

  • במקרה של השפעה (d) גדולה יחסית של 0.8:

    an increase in the effect size reduces the sample size

    יפחת מספר הדוגמאות הדרושות בניסוי ל-26 בכל קבוצה.

    לעומת זאת הקטנת ההשפעה (d) ל-0.2, גורמת להגדלת מספר הדוגמאות הדרושות ל-394 מכל קבוצה.

  • מקרה אחר הוא שלא נוח לי עם כוח סטטיסטי של 0.8 שמשמעותו ש-20% מהמקרים לא יראו השפעה משמעותית גם אם קיימת. אז אני יכול לבחור בכוח סטטיסטי גבוה יותר, לדוגמה, 0.95 עבור d בינוני של 0.5. במקרה כזה דרושות 210 דוגמאות בסה"כ (105 מכל קבוצה).

    an increase in the power leads to an increase in the number of samples

  • אם יש סיבה מספיק טובה לחשוב שהמבחן אינו דו-כיווני, השימוש בהתפלגות חד-זנבית One tail מפחיתה את מספר הדוגמאות הדרושות.

  • בנוסף, אנחנו יכולים לשנות את מבנה הניסוי ולהשוות בתוך הקבוצות במקום בין הקבוצות. לשם כך, נשנה את המבחן הסטטיסטי מ-
    Means: Difference between two independent means (two groups)
    ל-
    Means: Difference between two dependent means (matched pairs)

    change the t-test to matched pairs test

     

    איך להעלות את הכוח הסטטיסטי?

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

    • קודם כל, אפשר להגדיל את כמות הדוגמאות. אם כי מעבר לכמות דוגמאות מסוימת תוספת הכוח היא שולית מה גם שאיסוף דוגמאות יכול להיות תהליך יקר. לכן כל כך חשוב לערוך power analysis על מנת להעריך את גודל המדגם.
    • ניתן להגביר את ההשפעה. לדוגמה, על ידי הגדלת הכמות של התרופה הניתנת לחולים.
    • ניתן להעלות את ערך ה-alpha. מה שיגרום להעלאת הכוח הסטטיסטי אבל גם להעלאת סיכון ה-false positive. בכל מקרה, לא מקובל לעלות מעבר ל-0.05.
    • העלאת רמת הדיוק. רעש שמקורו בטעויות מדידה מפחית את הכוח הסטטיסטי. אתה יכול להעזר במבנה ניסוי של טריפליקטים (שלוש מדידות שונות מכל דוגמא) להעלאת רמת הדיוק.
    • במידה ויש לך סיבה טובה להניח שההשפעה שאתה בוחן אינה דו-כיוונית אלא דווקא הולכת בכיוון אחד מבחן חד-זנבי one-tailed במקום two-tailed מגביר את הכוח הסטטיסטי.

     

    מדריכים נוספים בסדרה על למידת מכונה שיכולים לעניין אותך

    לכל המדריכים בסדרה על למידת מכונה

     

    אהבתם? לא אהבתם? דרגו!

    0 הצבעות, ממוצע 0 מתוך 5 כוכבים

     

 

הוסף תגובה חדשה

 

= 3 + 3

תמונת המגיב

אור בתאריך: 11.03.2022

מדריך מעולה! אך חלה טעות קטנה בפסקה של איך לעלות את הכוח הסטטיסטי; ״ככל שהכוח הסטטיסטי גדול יותר הסיכוי לפספס את ההשפעה, במידה וקיימת, גובר״ הסיכוי לפספס את ההשפעה קטן ולא גדל.