‘מה זה MAPE טוב?’ היא אחת השאלות הנפוצות ביותר בתכנון ביקושים, והיא השאלה הלא נכונה באופן מאוד ספציפי ומאוד יקר. אחוז דיוק בודד דוחס אלפי פספוסים פרטניים למספר אחד, והדחיסה איננה ניטרלית: היא מסתירה סוגי כשל מסוימים ומנפחת אחרים. ארגון יכול לדווח על דיוק מכובד מדי חודש בזמן שהמק״טים שנושאים את הרווחיות שגויים, באותו כיוון, כל השנה. הנה מה שהמספר מסתיר, ואיך בוחנים תחזית כך שהיא תגיד משהו.
מה זה MAPE טוב, ולמה זו השאלה הלא נכונה?
MAPE הוא האחוז הממוצע שבו התחזיות שלכם מפספסות. לכל מק״ט ולכל תקופה לוקחים את הפער בין התחזית לתוצאה בפועל, מבטאים אותו כאחוז מהתוצאה בפועל, וממצעים את האחוזים.
אין סף אוניברסלי למספר טוב, וכל נתון שמצוטט כסטנדרט של התעשייה ראוי לחשד, כי השגיאה שאפשר להשיג תלויה כמעט לחלוטין בתנודתיות של מה שאתם חוזים. קו יציב בעל מחזור גבוה ומק״ט גבשושי מהזנב אינם מתחרים באותה תחרות. השוואת המספר שלכם לחברה אחרת מלמדת בעיקר שהביקוש אצלה רגוע יותר או פראי יותר משלכם, לא שהתכנון שלה טוב יותר.
השאלה שכן יש לה תשובה היא השוואתית. האם התחזית הזו טובה מהדבר הזול ביותר שיכולתם לעשות במקומה? ‘כמו החודש שעבר’, ‘כמו החודש הזה בשנה שעברה’, או ממוצע נע של כמה תקופות אחרונות, כולם בחינם. אם תהליך התחזית שלכם לא מנצח אותם, הוא לא מצדיק את קיומו, ולא משנה מה ציון הדיוק שלו. ניקוד תחזית מול מה שניחוש נאיבי היה משיג על אותם נתונים הוצע בדיוק מהסיבה הזו אצל Hyndman ו-Koehler, “Another look at measures of forecast accuracy”, International Journal of Forecasting 22(4), 2006. בקשו מהצוות שלכם את ההשוואה הזו. זו עמודה אחת נוספת והיא מסיימת את הוויכוח.
למה MAPE נשבר על מק״טים איטיים?
כי הוא מחלק בתוצאה בפועל, והתוצאה בפועל היא לפעמים אפס. Hyndman ו-Athanasopoulos אומרים את זה ישירות ב-Forecasting: Principles and Practice: לשגיאות אחוז יש החיסרון של להיות אינסופיות או לא מוגדרות כשהתוצאה בפועל היא אפס, ושל לקבל ערכי קיצון כשהיא קרובה לאפס.
תראו מה זה עושה בישיבת תכנון אמיתית. שבוע בלי מכירות בכלל לא ניתן לניקוד, ולכן השורה נמחקת. שבוע שבו נמכרה יחידה אחת ונחזו שלוש מייצר שגיאה של 200% שמשתלטת על כל מה סביבה. אף אחת מהשתיים איננה שיפוט של התחזית שלכם; שתיהן תוצרי לוואי של הנוסחה. והתגובה כמעט תמיד זהה: המק״טים האיטיים יוצאים מדוח הדיוק כי הם ‘מעוותים’ אותו.
מרגע שזה קורה, המספר המדווח מתאר רק את החלק של הקטלוג שהיה קל לחזות מלכתחילה, וההוצאה הזו כמעט לעולם לא כתובה במקום שבו המנהל שקורא את המספר יראה אותה. מק״טים איטיים הם בדרך כלל רוב מספר המק״טים. הוצאתם מהדוח לא מפסיקה את צריכת המזומן שלהם.
למה MAPE מעניש עודף-תחזית יותר מחסר-תחזית?
זו התכונה עם ההשלכות הגדולות ביותר והדיון הכי מועט. אותו מקור מציין ששגיאות אחוז מטילות עונש כבד יותר על שגיאות שליליות מאשר על חיוביות, ואפשר לראות למה בחשבון שעושים בראש.
קחו מק״ט שנמכרו ממנו 100 יחידות בפועל. חזו אותו כאפס, הפספוס הכי גרוע שאפשר כלפי מטה, ותקבלו שגיאה של 100%. זו התקרה; שום חסר-תחזית לא יכול להיות גרוע יותר. עכשיו חזו את אותו מק״ט כ-400 ותקבלו 300%. חזו אותו כ-1,000 ותקבלו 900%. בצד של עודף-התחזית אין תקרה בכלל.
כך שהעונש עקום, ותהליך שמכוון לגרום למספר להיראות טוב לומד לחזות נמוך. אף אחד לא מחליט את זה. זה נוצר לאורך כמה מחזורי בקרה, כשהמתכננים מבינים איזה סוג של פספוס גורר ביקורת.
התוצאה התפעולית היא ארגון שרץ בחוסר באופן שיטתי: חוסרים במדף, משלוחי אקספרס, והחיכוך הקבוע של אנשי מכירות שרודפים אחרי זמינות, וכל זה בזמן שדוח הדיוק משתפר. אם מספר הדיוק שלכם השתפר ורמת השירות לא, זה המקום הראשון להסתכל בו.
איך יכול להיות שהמספר הראשי בריא ודווקא המק״טים הלא נכונים שגויים?
שני מנגנונים מייצרים את זה, ורוב דוחות התכנון מכילים את שניהם.
מק״ט אחד, קול אחד. MAPE ממצע על פני מק״טים בלי לשקלל אותם. מק״ט ששווה שבריר אחוז מההכנסה נספר בדיוק כמו מק״ט ששווה עשירית ממנה. קטלוג עם זנב ארוך מדווח לכן מספר שעוסק בעיקר במק״טים שאף אחד לא מקבל עליהם החלטות. התיקון הוא לשקלל לפי כמות או לפי שווי: לסכם את הפספוסים ביחידות או בשקלים ולחלק בסך התוצאות בפועל, כך שכל יחידה נספרת פעם אחת במקום שכל מק״ט ייספר פעם אחת. זה לא מתוחכם יותר, זה פשוט כן יותר לגבי מה שמעניין אתכם.
שגיאות מתקזזות כשמחברים אותן. דווחו דיוק ברמת הסך הכל ופספוסים הפוכים יבטלו זה את זה: מק״ט אחד ביתר של מאה יחידות ומק״ט אחר בחסר של מאה יחידות מתאפסים למעלה. זו אריתמטיקה ולא מזל, ולכן המספר הקבוצתי תמיד נראה טוב יותר מהמספרים ברמת המק״ט. הוא לא שקרי, הוא עונה על שאלה לגבי הסך הכל, וזו השאלה הנכונה לתכנון תזרים והלא נכונה לרכש, כי קונים לפי מק״ט והעודף של אחד לא יכסה את החוסר של אחר.
שניהם מצביעים לאותו כיוון: בחנו את התחזית ברמה שבה מתקבלת ההחלטה. אם הזמנות רכש יוצאות לפי מק״ט, בחנו לפי מק״ט. אם קיבולת מתוכננת לפי משפחת מוצר, בחנו לפי משפחה. בחינה מעל רמת ההחלטה מודדת משהו שאף אחד לא פועל לפיו.
מה זו הטיית תחזית, ולמה היא חשובה יותר מדיוק?
דיוק מודד כמה גדולים הפספוסים שלכם. הטיה מודדת לאיזה צד הם נוטים. השתיים בלתי תלויות, והשנייה היא בדרך כלל זו שעולה לכם כסף.
כדי למצוא אותה, ממצעים את הפספוסים עם הסימן שלהם במקום להתעלם מהסימן. קרוב לאפס אומר שאתם טועים לשני הכיוונים בערך במידה שווה. חיובי בעקביות או שלילי בעקביות אומר שאתם טועים באותה צורה בכל מחזור, וזה הרגל שניתן לתיקון ולא רעש שאין ממנו מנוס.
ההבחנה חשובה כי שני הכשלים נראים זהים בדוח דיוק ומתנהגים אחרת לגמרי במחסן:
| לא נוטה לצד | נוטה לאותו צד בכל פעם | |
|---|---|---|
| פספוסים קטנים | התחזית עושה את עבודתה. | פער עקבי שניתן לתיקון. מתקנים אותו והתחזית משתפרת מיד. |
| פספוסים גדולים | מק״ט באמת תנודתי, שנחזה ביושר. מנהלים אותו בחוצצים ולא במודל טוב יותר. | המקרה הגרוע. טועים בכל מחזור, ותמיד באותה צורה. בדרך כלל בעיית תהליך ולא בעיית מודל. |
נטייה מתמשכת היא כמעט תמיד אנושית ומבנית ולא סטטיסטית: צוות מכירות שהתחזית שלו היא גם היעד שלו, מתכנן שהואשם בחוסר במדף לפני שנתיים, שאיפה מסחרית שמוזנת כתחזית ביקוש. שום מודל לא מתקן את זה, ושום מדד דיוק לא חושף את זה, כי לקיחת הערך המוחלט זורקת את הכיוון עוד לפני שממצעים. אם אתם מוסיפים מספר אחד לחבילת הדוחות ברבעון הזה, הוסיפו את זה ששומר על הסימן.
איך בוחנים תחזית ביושר?
המכניקה רגילה לגמרי. המשמעת היא החלק הקשה.
- הקפיאו את התחזית ברגע שניתנה. שמרו אותה, עם תאריך, ברמה ובאופק שבהם היא מניעה החלטה. תחזית שנדרסת בשקט על ידי הגרסה של החודש הבא לא ניתנת לבחינה, וזה לבדו מסביר למה רוב הארגונים לא יודעים בכלל לנקוב בדיוק שלהם.
- בחנו את שני האופקים שאתם באמת משתמשים בהם. הקצר שמניע חידוש מלאי והארוך שמניע קיבולת ותזרים הם שתי הבטחות שונות שנכשלות אחרת.
- דווחו ארבעה מספרים ולא אחד: כמה גדולים הפספוסים, לאיזה צד הם נוטים, אותו זוג משוקלל לפי שווי, וההשוואה מול הבסיס הנאיבי. ארבע עמודות, ארבע שאלות.
- פלחו את הדוח, מהירים מול איטיים, הכנסה מובילה מול הזנב, לפי משפחה או לפי אזור. הסך הכל הוא בשביל הדירקטוריון; הפילוח הוא המקום שבו יושבות ההחלטות.
- אמרו אילו שורות הוצאו ולמה. מחיקת תקופות עם ביקוש אפס כי הנוסחה לא יודעת לטפל בהן היא החלטה לגיטימית ושתיקה לא לגיטימית.
- הניחו את זה מול אותם אנשים בכל מחזור. הערך איננו בחישוב. הוא בכך שאותם אנשים רואים את אותו מספר מספיק פעמים כדי לזהות דפוס.
שום שלב כאן לא דורש מודל, ספק או פרויקט נתונים. הוא דורש את התחזיות של השנה שעברה, את נתוני האמת של השנה שעברה, ואת הנכונות לתת לחודשים הראשונים להיות לא מחמיאים.
כתבנו בנפרד על מה קורה כשחברות באמת בוחנות את התחזיות שלהן, כולל הראיות שפורסמו בתעשייה ויומן הבחינה החודשי שניהלנו שלוש שנים בהתקשרות אמיתית. שני מדריכים משלימים מכסים את הטעויות השכנות: הממוצע שלכם משקר לכם על המספר השטוח שמסתיר עסק שזז, והביקוש שלכם אינו עקומת פעמון על השאלה למה חוצצי המלאי נקבעים לא נכון דווקא במק״טים שהכי זקוקים להם.