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

גרי רשף

New member
הקדמה למי ששכח: Exponential Moving Average הוא ממוצע על סדרות עתיות המוגדר בתור הממוצע המשוקלל של הערך הנוכחי (נניח- הטמפרטורה היום) והממוצע הנע האקספוננציאלי בנקודת הזמן הקודמת (נניח אתמול).
ההגדרה היא רקורסיבית, ותנאי העצירה הוא בנקודת הזמן הראשונה (נניח 25/10/2018 היום לפני שנתיים) ושם הממוצע הנע האקספוננציאלי הוא הערך (=הטמפרטורה) באותה נקודת זמן.
כיצד מחושב הממוצע המשוקלל? יש לקבוע פרמטר, נניח 0.25, ואז זה 0.25 כפול הטמפרטורה היום ועוד 0.75 כפול הממוצע הנע האקספוננציאלי אתמול.

ולשאלה: כיצד תחושב סטיית התקן במקרה זה?
נניח- הממוצע המשוקלל בין הסטייה היום (=ההפרש בין הטמפרטורה היום לבין הממצוע הנע האקספוננציאלי היום) לבין סטיית התקן הנעה האקספוננציאלית של אתמול?
אולי הממוצע המשוקלל של ריבוע הסטייה היום וריבוע סטיית התקן מאתמול, ועל כל זה שורש?
התחכמות אחרת?
 

גרי רשף

New member
עריסטו- תודה!
לא הבנתי עד הסוף את ההיגיון בנוסחאות, ואנסה להתעמק בזה..
 
לא הצלחתי לעקוב אחרי נוסחאות. אודה לפרוש רש"י.
בכל אופן, ההגיון הפרטי שלי הוא כזה: סטיית תקן "רגילה" היא - ממוצע של ריבועי ההפרשים. כשההפרשים הם בין כל אחד מהערכים לממוצע הכללי.
לענייננו - כמובן שההגדרה לא משתנה. והשאלה היא רק מהו "ההפרש".
להבנתי, "הפרש" מייצג את הסטיה של ערך מהערך שהיה "צפוי לו" בעולם אידאלי (ללא אי דיוקים). לכן, אם האוכלוסיה אינה אחידה (כלומר שינוי רציף, כמו בדוגמה), אזי צריך להתייחס לערך הצפוי עפ"י ההערכה המיטבית. אם לא רגרסיה, או מודל חיזוי, הייתי לוקח את הממוצע של היום הקודם.
אם תיקח את הממוצע הנע של אותו יום, אתה מעלים חלק מהסטיה. ובמקרה הקיצוני (משקל 100 ליום הנוכחי), את כולה.
 

גרי רשף

New member

יוביוב הירוק-​

בגדול אני מסכים איתך: בנקודה הראשונה סטיית התקן היא 0 (ערך בודד אינו סוטה מעצמו..),
ומשם ואילך לוקחים את הסטייה במקום הנוכחי, מעלים בריבוע, ומחשבים ממוצע משוקלל כנ"ל עם ריבוע סטיית התקן האקספוננציאלית הקודמת, ולכל זה שורש.
מה שלא הסתדר לי זה שבנוסחה שלהם הסטייה במקום הנוכחי מחושבת ביחד לממוצע הנע האקספוננציאלי בשלב הקודם ולא זה הנוכחי (לא סגור על מה הסיבה),
וגם משהו בחישוב המשוקלל שלהם - נראה לי לא הגיוני; אבל אני מניח באופטימיות שאני מפספס משהו.
 

יוביוב הירוק-​

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

גרי רשף

New member
אם כך, כיוונתי לדעת גדולים. שים לב שזה בדיוק מה שכתבתי, וניסיתי להסביר (לפחות אינטואיטיבית, ולא מתמטית) - הממוצע הנע הנוכחי, כולל גם את הערך הנוכחי. כך שאם אתה מחשב סטיה ביחס אליו, אתה מרמה את עצמך. הרי הסטיה תהיה קטנה מה-"אמת".
למען האמת, אני לא בטוח שיש תשובה חד משמעית לעניין. סטיית תקן צריכה לייצג רעש ביחס למגמה או להתנהגות של המערכת. לא בטוח שתמיד ערך n-1 נותן את החיזוי המתאים ביותר להתנהגות של n.
הגעתי לאותה מסקנה כמוך בכיוון קצת שונה:
על המגרש עולה שחקן כדורסל שגובהו 200 ס"מ. בשלב זה הממוצע הוא 200 וסטיית התקן 0.
כעת עולה שחקן שגובהו 210 ס"מ. הממוצע כרגע הוא 205, ולגבי סטיית התקן - יש שתי אפשרויות:
או שנחשב לכולם מההתחלה ביחס לממוצע החדש 205, נתעלם מהחישוב הקודם (0), ומכיוון שכל אחד סוטה 5 ס"מ מהממוצע - זו בערך סטיית התקן (בפועל לא מחשבים ממוצע ערכים מוחלטים אלא שורש ממוצע ריבועים),
או שנחשב את הסטייה של השני ביחס לממוצע הקודם (10) ונשקלל אותה עם סטיית התקן הקודמת.
בוודאי לא נשקלל את הסטייה מהממוצע החדש (5) עם הסטייה הקודמת (0) כי אז נקבל תוצאה לא הגיונית.

עריסטו- תודה, אבדוק ואעיין.
 
הגעתי לאותה מסקנה כמוך בכיוון קצת שונה:
על המגרש עולה שחקן כדורסל שגובהו 200 ס"מ. בשלב זה הממוצע הוא 200 וסטיית התקן 0.
כעת עולה שחקן שגובהו 210 ס"מ. הממוצע כרגע הוא 205, ולגבי סטיית התקן - יש שתי אפשרויות:
או שנחשב לכולם מההתחלה ביחס לממוצע החדש 205, נתעלם מהחישוב הקודם (0), ומכיוון שכל אחד סוטה 5 ס"מ מהממוצע - זו בערך סטיית התקן (בפועל לא מחשבים ממוצע ערכים מוחלטים אלא שורש ממוצע ריבועים),
או שנחשב את הסטייה של השני ביחס לממוצע הקודם (10) ונשקלל אותה עם סטיית התקן הקודמת.
בוודאי לא נשקלל את הסטייה מהממוצע החדש (5) עם הסטייה הקודמת (0) כי אז נקבל תוצאה לא הגיונית.

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